것 같다일시 중단된 상태에서 VirtualBox VM을 재개하면 시간 업데이트가 불가능합니다.
나는 며칠 동안 온라인에서 읽고 여러 가지를 시도한 끝에 이 결론에 도달했습니다. 특히 tinker panic 0
[/etc/ntp.conf] 파일에 넣어 두었습니다. 그런 다음 ntpd 서비스를 다시 시작한 다음 몇 분 동안 시스템 상태를 일시 중지했다가 다시 시작하여 테스트를 계속했습니다. 시간은 중단된 부분부터 계속됩니다(동기화되지 않음).
많은 사람들이 이전에 이 질문을 했으나 모두 조금씩 다른 변형으로 발전한 것 같습니다.
- 가상 머신에서 NTP가 동기화되지 않음
- https://stackoverflow.com/questions/14629704/ntp-client-undisciplined-local-clock/14634941#14634941
- https://serverfault.com/questions/686087/ntp-running-server-time-is-wrong-on-vm
가상 머신의 내 게스트: CentOS Linux 버전 7.3.1611
[root@CentOS7 ~]# systemctl list-unit-files ntpd*
UNIT FILE STATE
ntpd.service enabled
누군가 궁금해할 경우를 대비해 사용 가능한 문서로 인해 NTPD를 선호하므로 충돌이 발생하지 않도록 chrony 서비스를 비활성화했습니다.
[root@CentOS7 ~]# systemctl list-unit-files chron*
UNIT FILE STATE
[email protected] static
chrony-wait.service disabled
chronyd.service disabled
[email protected] disabled
cronjob을 고려하기 전에 최종 조언을 해줄 사람이 있나요? 확실히 최적은 아니지만 적어도 작동할 것입니다.
== 정책 변경 - 게스트 추가를 사용하여 호스트 시간을 동기화하려고 시도 ==
그래서 제안한 대로 VirtualBox에 Guest Additions iso를 설치했습니다. 놀랍게도 거기에서 문제가 발생했습니다.
Unable to insert the virtual optical disk C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso into the machine Centos.
Could not mount the media/drive 'C:\Program Files\Oracle\VirtualBox\VBoxGuestAdditions.iso' (VERR_PDM_MEDIA_LOCKED).
Result Code: E_FAIL (0x80004005)
Component: ConsoleWrap
Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
Callee: IMachine {b2547866-a0a1-4391-8b86-6952d82efaa0}
이 문제에 대한 해결책은 ISO를 본 Centos 데스크탑 GUI를 실행하는 것이었습니다. 마우스 오른쪽 버튼을 클릭하고 "실행 소프트웨어로 열기"를 클릭하면 설치가 성공적으로 완료되었습니다. 이것은하지만 여전히 동기화 시간이 없습니다, ntpd를 비활성화한 후에도 마찬가지입니다.
그래서 저는 이 스레드를 찾았습니다. https://www.virtualbox.org/ticket/15179
터미널에서 VBoxService 프로세스를 시작하고 자세한 정보를 출력합니다.
/usr/sbin/VBoxService -fvvv
그 결과는 다음과 같습니다.
00:00:00.010360 timesync vgsvcTimeSyncWorker: Host: 2017-02-11T21:39:17.257000000Z (MinAdjust: 100 ms)
00:00:00.010428 timesync vgsvcTimeSyncWorker: Guest: - 2017-02-11T21:30:01.781953000Z => 555 475 047 000 ns drift
00:00:00.010491 timesync vgsvcTimeSyncAdjust: adjtime by 555 475 047 000 ns
그러나 실제로 시간을 조정하지는 않습니다. 또는 이는 시간을 나노초 단위로 조정한다는 의미일 수 있으며 이는 영원히 걸릴 것입니다. 음...
최후의 수단으로 나는 다음을 시도했다.
/usr/sbin/VBoxService -fvvv --timesync-set-on-restore 1
나는 이것에 충분한 시간을 낭비했다고 생각합니다. ntpd -g를 사용하여 cronjob을 실행해 보겠습니다.
답변1
VirtualBox 5.1.14와 함께 제공되는 VirtualBox Guest Additions를 사용하여 호스트에서 시간을 동기화할 수 있습니다. 게스트 추가 기능을 설치할 때 발생하는 문제 해결에 대한 자세한 내용은 편집된 질문을 참조하세요.
내 대답에 대한 마지막 말: systemctl 서비스로 만들려고 했지만 계속 오류가 발생했기 때문에 다음을 .bashrc 파일에 넣었습니다.
/usr/sbin/VBoxService --timesync-set-on-restore 1 --timesync-set-threshold 5000 > /dev/null
효과가있다매우그것은 좋으며 해야 할 일을 합니다.