VirtualBox: 호스트와 게스트 시간을 동기화하는 방법은 무엇입니까?

VirtualBox: 호스트와 게스트 시간을 동기화하는 방법은 무엇입니까?

내 게스트 VM의 시간은 호스트 시간보다 약 20~30분 정도 빠릅니다. 게스트의 시간이 호스트의 시간과 동일하게 하려면 어떻게 해야 합니까?

답변1

Linux 호스트의 경우 먼저 게스트 시스템(원천):

$ sudo apt-get install dkms

그런 다음 게스트 시스템에 게스트 추가를 설치합니다.

우분투 20.04+

$ sudo apt-get install virtualbox-guest-utils

우분투 18.04 이상

$ sudo apt-get install virtualbox-guest-additions

또한 여기에 대한 설명은 다음과 같습니다.VirtualBox 시간 동기화를 조정하는 일부 명령.

답변2

다음 설정을 통해 게스트는 호스트로부터 1초 이내의 정확한 시간을 안정적으로 유지할 수 있습니다. VirtualBox 4.3.26을 실행하는 호스트와 동일한 버전의 VirtualBox Guest Additions를 실행하는 게스트에서 테스트되었습니다. VirtualBox 5.x의 경우 지금까지 이러한 구성을 변경할 필요가 없었습니다. 시간이 자동으로 동기화되었습니다.

참조:https://www.virtualbox.org/manual/ch09.html#changetimesync


호스트에서 VM을 나열하여 관련 VM의 이름을 확인합니다.

$ VBoxManage list vms | awk '{print $1}'
"CentOS6"

호스트에서 아래 명령을 실행하여 게스트에 대한 시간 동기화 매개변수를 구성합니다. 먼저 $VMNAME적절한 값으로 설정하십시오. 값에 $VMNAME공백이 포함되어 있으면 당연히 따옴표로 묶어야 합니다.

$ VBoxManage guestproperty set ${VMNAME} "/VirtualBox/GuestAdd/VBoxService/--timesync-interval" 10000
$ VBoxManage guestproperty set ${VMNAME} "/VirtualBox/GuestAdd/VBoxService/--timesync-min-adjust" 100
$ VBoxManage guestproperty set ${VMNAME} "/VirtualBox/GuestAdd/VBoxService/--timesync-set-on-restore" 1
$ VBoxManage guestproperty set ${VMNAME} "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold" 1000

위의 시간 매개변수 값은 10의 배수로 제한되었습니다. timesync-set-threshold대신 10000으로 설정하고 싶을 수도 있지만 이렇게 하면 트리거될 때 다소 급격한 시간 변경이 발생할 수 있으므로 애플리케이션이 중단될 수 있습니다.


호스트에서 게스트에 대해 업데이트된 관련 값을 확인합니다. 이는 언제든지 재확인될 수 있습니다.

$ VBoxManage guestproperty enumerate ${VMNAME} | grep timesync | sort
Name: /VirtualBox/GuestAdd/VBoxService/--timesync-interval, value: 10000, timestamp: 1402110397618554000, flags:
Name: /VirtualBox/GuestAdd/VBoxService/--timesync-min-adjust, value: 100, timestamp: 1402110777505446000, flags:
Name: /VirtualBox/GuestAdd/VBoxService/--timesync-set-on-restore, value: 1, timestamp: 1402110904964050000, flags:
Name: /VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold, value: 1000, timestamp: 1402110660162295000, flags:

게스트에서 모든 내부 NTP 및 관련 시간 관리 서비스를 중지하고 비활성화합니다. VirtualBox를 방해할 수 있으므로 사용하지 마십시오. CentOS 6 게스트의 경우:

$ sudo /sbin/chkconfig ntpd off
$ /sbin/chkconfig --list | grep ntp
ntpd            0:off   1:off   2:off   3:off   4:off   5:off   6:off
ntpdate         0:off   1:off   2:off   3:off   4:off   5:off   6:off

게스트에서 이름이 지정된 서비스를 다시 시작합니다 vboxadd-service. 이전에 Guest Additions가 설치되었다고 가정하면 이 서비스가 설치되어 활성화되었을 것입니다. CentOS 6 게스트의 경우:

$ /sbin/service vboxadd-service status
Checking for VBoxService ...running
$ sudo /sbin/service vboxadd-service restart
Stopping VirtualBox Guest Addition service                 [  OK  ]
Starting VirtualBox Guest Addition service                 [  OK  ]
$ /sbin/service vboxadd-service status
Checking for VBoxService ...running

게스트의 시간이 아직 동기화되지 않은 경우 게스트를 재부팅하세요.

답변3

Virtualbox 게스트 추가를 설치하지 않고 게스트와 호스트 간의 시간을 동기화하는 다른 솔루션을 제공합니다.

  1. 게스트에 NTP를 설치하고 /etc/ntp.conf.
disable auth
broadcastclient
  1. 호스트에서 방송을 활성화하세요. Linux 사용자의 경우 /etc/ntp.conf파일을 편집하고 행을 구성하십시오.
broadcast 192.168.123.255 

Windows 사용자의 경우 "Windows 시간" 서비스를 활성화하세요. 그러면 할 수 있습니다이 페이지를 읽어보세요방송 시간으로 구성하려면

관련 정보