timedatectl 쿼리 서버 실패

timedatectl 쿼리 서버 실패

내 시스템 시계가 NTP를 통해 동기화되었는지 확인하기 위해 실행하면 timedatectl다음과 같은 결과가 나타납니다.

~> timedatectl
Failed to query server: The name org.freedesktop.timedate1 was not provided by any .service files

systemd-timedated.service가 이미 실행 중입니다.

~> systemctl status systemd-timedated.service
● systemd-timedated.service - Time & Date Service
     Loaded: loaded (/usr/lib/systemd/system/systemd-timedated.service; static; vendor preset: enabled)
     Active: inactive (dead)
       Docs: man:systemd-timedated.service(8)
             man:localtime(5)
             https://www.freedesktop.org/wiki/Software/systemd/timedated

Mar 23 14:28:16 cm1sd systemd[1]: Starting Time & Date Service...
Mar 23 14:28:16 cm1sd systemd[1]: Started Time & Date Service.
Mar 23 14:29:00 cm1sd systemd[1]: systemd-timedated.service: Succeeded.

온라인에서 이 오류 메시지에 대한 내용을 찾지 못했습니다. systemd 및 timedatectl을 사용하여 시스템 시계를 NTP 서버와 어떻게 동기화합니까? 또한 /etc/systemd/ 아래에는 사용할 NTP 서버를 정의하는 항목이 없다는 점도 확인했습니다. 저는 Buildroot, systemd 버전 244.5를 사용하여 구축된 임베디드 Linux 시스템을 사용하고 있습니다.

답변1

Active Directory/Centrify를 사용하는 경우 서버를 다시 시작해 볼 수 있습니다. 그것이 그들이 우리에게 제안한 일이었고 그것은 우리에게 효과가 있었습니다. 하지만 근본 원인이 무엇인지는 명확하지 않고, 공유 서버라면 마음대로 재부팅할 수도 없는 점 역시 썩 만족스럽진 않습니다.

답변2

systemd-timedatedD-Bus를 사용하여 명령처럼 클라이언트와 통신하는 서비스입니다 timedatectl. systemctl cat systemd-timedated.service포함되어야 하며 서비스를 모니터링하고 할당 하고 장치에 종속되게 만드는 방법을 BusName=org.freedesktop.timedate1알려줍니다 . 또한 시스템 D-Bus에 요청이 있을 때마다 "요청 시" 서비스를 시작할 수 있습니다.systemdType=dbusdbus.socketsystemd

오류 메시지는 전화 systemd할 때마다systemd-timedatedtimedatectl

systemd-timedated본질적으로 시스템 시계, 기본 시간대를 설정하고 , 또는 와 chronyd.service같은 실제 시계 동기화 서비스를 시작/중지하기 위한 통합된 "프런트 엔드"입니다 . 재정의 파일에 환경 변수를 정의하여 실제 동기화 서비스가 검색되는 우선순위를 실제로 정의할 수 있습니다. 예를 들면 다음과 같습니다.systemd-timesyncd.servicentp.servicesystemd-timedated

[Service]
Environment=SYSTEMD_TIMEDATED_NTP_SERVICES=chronyd.service:ntp.service:systemd-timesyncd.service

최종적으로 사용하게 될 실제 NTP 서비스의 구성 파일을 사용하여 사용하도록 NTP 서버를 구성해야 합니다. 또는 DHCP 응답(해당하는 경우)에서 NTP 서버 주소를 가져오도록 NTP 서비스를 구성해야 합니다. systemd-timesyncd이를 사용하여 systemd-networkdNIC를 구성하면 자동으로 수행됩니다. 그렇지 않으면 NTP 서버 주소를 요청하고 해당 정보를 NTP 서비스에 유용한 형식으로 저장하도록 DHCP 클라이언트를 구성해야 할 수 있습니다.

임베디드 시스템에서는 시스템의 목적에 따라 시스템 D-Bus를 최소화하는 것이 유효한 선택이 될 수 있다고 생각합니다. 필수적이지 않은 프런트 엔드 서비스(예: systemd-timedated기존 명령줄 도구에 의존)를 제거하는 것이 이에 포함될 수 있습니다. 그럼, 확실해요?systemd-timedated ~해야 한다직장에서?

관련 정보