Я намагаюся вручну встановити час комп'ютера у VirtualBox, але він завжди скидає те, що було до того, як я його змінив. Як я можу відключити ntp і сказати системі, в який час я хочу це зробити?
Я намагаюся вручну встановити час комп'ютера у VirtualBox, але він завжди скидає те, що було до того, як я його змінив. Як я можу відключити ntp і сказати системі, в який час я хочу це зробити?
Відповіді:
Я знайшов рішення. Прочитайте наступний матеріал: посилання
Якщо у вас є хост Windows та гість Ubuntu, виконайте наступне:
Ubuntu 12.04 32bit
C:\Program Files\Oracle
папку та клацніть, VirtualBox
щоб вибрати, потім утримуючи ліву клавішу зсуву, натисніть правою кнопкою миші та виберіть меню «Відкрити вікно команд тут», перекладач повинен працювати заразВставте таку команду (змініть ім'я VM на своє ім'я!):
VBoxManage setextradata "Ubuntu 12.04 32bit"
"VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
Нарешті, запустіть гостя Ubuntu та встановіть час та дату вручну.
vboxadd-service
необхідний додатковий аргумент на гостя, в основному--disable-timesync
Як вже згадувалося в іншій відповіді, якщо ви запускаєте Ubuntu як гість під VirtualBox, то вам слід знати, що системний час автоматично зберігається в синхронізації з доповненнями для гостей (тобто не через опцію в налаштуваннях материнської плати).
У цьому випадку ваше рішення - вимкнути додатки для гостей, чого можна досягти виконанням
sudo service vboxadd-service stop
або
sudo /etc/init.d/vboxadd-service stop
Потім можна встановити потрібний час (з командного рядка за допомогою date --set
або використання аплету системних налаштувань)
Служба VirtualBox буде перезапущена при наступному перезавантаженні, або ви можете це зробити вручну.
sudo service virtualbox-guest-utils stop
. Я думаю, пакет перейменовано?
Ну а якщо ви хочете встановити довільні дати, спочатку слід вимкнути або видалити ntp.
sudo update-rc.d -f ntp remove
Після цього ви можете використовувати date
-command, щоб встановити ваш системний час:
date -s "17 April 2011 12:34:56"
date --set="17 April 2011 12:34:56"
Обидві команди рівноцінні. Щоб встановити лише час, який ви можете використовувати:
date +%T -s "12:34:56"
На сторінці date
-manman є ще кілька елементів керування форматом. Ви можете використовувати їх для зміни дати
Клацніть на розділі часу та дати на панелі, потім з’явиться Календар, а під ним знаходяться Налаштування часу та дати, тоді натисніть на нього.
Клацніть на значку замок і введіть свій пароль, а потім виберіть Встановити час вручну.
У Центрі програмного забезпечення знайдіть ntpdate та видаліть його або в терміналі: sudo apt-get remove ntpdate
(Можливо, вам доведеться перезавантажити, щоб повністю відключити ntp)
Потім встановіть свою дату.
На основі прикладу ".ps1" (сценарій Windows PowerShell), наведеного в
Я написав звичайний файл сценарію ".bat", щоб змінити час годин, коли запускається віртуальна машина VirtualBox.
Бажаний час початку задається змінною "TEMPO_START_TIMESTAMP" у форматі епохи. Ви можете отримати бажаний еповий еквівалент часу на веб-сторінці " http://www.timestampconvert.com/ ".
Назва віртуальної машини VirtualBox, яку потрібно запустити, потрібна в змінній "NOME" (та сама номенклатура, що використовується у сценарії ".ps1" вище).
echo off
echo %time%
set NOME="Windows_7_x64"
set TEMPO_CS_2_MS=0
set TEMPO_S_2_MS=000
rem # Starts the VM always on the date 07/11/2014 - 11h58
rem http://www.timestampconvert.com/
set TEMPO_START_TIMESTAMP=1415361480
for /f "delims=" %%x in ('cscript /nologo toEpoch.vbs') do set epoch=%%x
rem %epoch%
set TEMPO_CURRENT_TIMESTAMP=%epoch%
rem set TEMPO_CURRENT_TIMESTAMP=1544518714
set /A TEMPO_TEMP=(%TEMPO_START_TIMESTAMP%-%TEMPO_CURRENT_TIMESTAMP%)
call set TEMPO=%TEMPO_TEMP%%TEMPO_S_2_MS%
rem %TEMPO_TEMP%
rem %TEMPO%
c:\Progra~1\Oracle\VirtualBox\VBoxManage setextradata %NOME% "VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
c:\Progra~1\Oracle\VirtualBox\VBoxManage modifyvm %NOME% --biossystemtimeoffset %TEMPO%
c:\Progra~1\Oracle\VirtualBox\VBoxManage startvm %NOME%
Вам також знадобиться поточний час у форматі epoh, для цього використовуйте наступний скрипт (збережіть як "toEpoch.vbs", цей візуальний базовий скрипт викликається із сценарію ".bat" вище):
WScript.Echo DateDiff("s", "01/01/1970 00:00:00", Now())
Щоб запустити віртуальну машину, просто виконайте файл сценарію ".bat" вище. Не потрібно відкривати інтерфейс "Адміністрація Oracle VM VirtualBox".
Я сподіваюся, що це допомагає.
З повагою