Virtualbox linux guest의 timesync를 disable하기

in #kr7 years ago

Virtualbox 의 linux guest 에 guest add-on을 설치하면 host machine과 자동으로 time sync가 동작한다.
대부분의 경우는 문제 안되지만 guest os의 clock을 변경하며 테스트를 진행한다면 time sync를 disable하거나 설정을 변경할 필요가 발생한다.

<p dir="auto">VM configuration에 GetHostTimeDisabled 를 1로 설정해도 되겠지만, Guest os에 명시적으로 설정을 변경하는 것이 더 편리해 보인다. <p dir="auto">단순히 vboxadd-service 를 stop 시켜도 된다. permanent하게 disable하려면 script 수정이 필요하다. <p dir="auto">VBoxGuestAdditions-5.2.8 기준이다. 버전을 명시한 이유는 script에 좀 문제가 있어서다. <p dir="auto">아래 파일을 수정한다. <pre><code>/opt/VBoxGuestAdditions-5.2.8/init/vboxadd-service <p dir="auto">아래와 같이 start 에서 daemon 실행시 --disable-timesync 를 추가한다. <pre><code>start() { ... daemon $binary --pidfile $PIDFILE --disable-timesync > /dev/null ... } <p dir="auto">이 버전에서 사용하는 daemon은 수정이 필요하다. 아래와 같이 argument를 하나 더 추가하기 위해 $4 를 추가한다. <pre><code>daemon() { $1 $2 $3 $4 } <p dir="auto">파일을 저장하고 service를 restart한다. redhat 계열인 경우 <pre><code>systemctl daemon-reload systemctl restart vboxadd-service <p dir="auto">VBoxService 에 option이 제대로 들어갔는지 확인한다. <pre><code>ps -efa | grep VBoxService <p dir="auto">disable하지 않고 sync option을 조절하려면 VBoxService --help 를 참조하자.