VirtualBox – синхронізація часу між хостом та гостем

За замовченням всі гості синхронізують свій годинник з хостом.

Іноді треба вимкнути цю синхронізацію. Наприклад коли треба змінити час в гостьової системи.

Для Windows хоста перейдіть до ‘C:\Program Files\Oracle\VirtualBox‘ (шлях може відрізнятись).

Заборонити гостю читати час хоста

VBoxManage setextradata 'ім’я-віртуалки' "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" "1"

Також можна передати лічильник TSC гостю (бажано використовувати апаратну віртуалізацію)

VBoxManage setextradata ‘ім’я-віртуалки' “VBoxInternal/TM/TSCTiedToExecution” 1

Для від’єднання лічильника, виконайте команду ще раз, але заберіть одиницю в кінці.

В деяких випадках може з’явитись помилка (timing inconsistency), тоді треба відключити лічильник (залежить від ОС).

 

Вимкнення синхронізації з боку гостьового доповнення (Windows гість)

Перейдіть до гостя, та знайдіть гулку реєстру: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\VBoxService

відкрийте параметр: ‘ImagePath

додайте ключ: ‘–disable-timesync

отримаєте щось на зразок: ‘system32\VBoxService.exe –disable-timesync

 

Керування швидкістю годинника

VBoxManage setextradata ‘ім’я-віртуалки’ “VBoxInternal/TM/WarpDrivePercentage” ‘відсотки’

Змінювати швидкість часу треба дуже обережно, бо це може призвести до помилки.

Після змін, перезавантажте гостьовий комп’ютер чи службу ‘VirtualBox Guest Additions Service’


 

Як було виявлено, вимкнення синхронізації погана ідея. Віртуальна машина не в змозі утримувати час навіть за наявності NTP клієнта.

Вирішенням є використання команди VBoxManage modifyvm “ім’я віртуалки” -biossystemtimeoffset “відхилення у мілісекундах” у тих випадках коли вам потрібно змінити час гостя. А синхронізацію часу з хостом краще повернути.

 

Джерела: офіційна документація та ppq.ch

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.