Sto cercando di impostare manualmente l'ora del computer in VirtualBox ma si reimposta sempre su quello che era prima di cambiarlo. Come posso disabilitare ntp e dire al sistema a che ora voglio che sia?
Sto cercando di impostare manualmente l'ora del computer in VirtualBox ma si reimposta sempre su quello che era prima di cambiarlo. Come posso disabilitare ntp e dire al sistema a che ora voglio che sia?
Risposte:
Ho trovato una soluzione Leggi il seguente materiale: link
Fondamentalmente se si dispone di host Windows e guest Ubuntu, procedere come segue:
Ubuntu 12.04 32bit
C:\Program Files\Oracle
cartella e fai clic VirtualBox
per selezionare, quindi tieni premuto il tasto Maiusc sinistro, fai clic con il pulsante destro del mouse e seleziona il menu "Apri finestra di comando qui", l'interprete deve essere in esecuzione oraIncolla il seguente comando (cambia il nome della VM con il tuo nome!):
VBoxManage setextradata "Ubuntu 12.04 32bit"
"VBoxInternal/Devices/VMMDev/0/Config/GetHostTimeDisabled" 1
Infine, avvia il tuo guest Ubuntu e imposta manualmente data e ora.
vboxadd-service
necessario un argomento in più --disable-timesync
Come menzionato in un'altra risposta, se si esegue Ubuntu come Ospite in VirtualBox, è necessario tenere presente che l'ora del sistema viene automaticamente sincronizzata dalle Aggiunte dell'ospite (ovvero non tramite un'opzione nelle impostazioni della scheda madre).
La soluzione in tal caso è disabilitare le Aggiunte Guest, che possono essere raggiunte eseguendo
sudo service vboxadd-service stop
o
sudo /etc/init.d/vboxadd-service stop
È quindi possibile impostare l'ora come desiderato (dalla riga di comando utilizzando date --set
o utilizzando l'applet delle impostazioni di sistema)
Il servizio VirtualBox verrà riavviato al prossimo riavvio oppure è possibile farlo manualmente.
sudo service virtualbox-guest-utils stop
. Immagino che il pacchetto sia stato rinominato?
Bene, se vuoi impostare date arbitrarie, prima dovresti disabilitare o disinstallare ntp.
sudo update-rc.d -f ntp remove
Successivamente è possibile utilizzare il date
comando-per impostare l'ora di sistema:
date -s "17 April 2011 12:34:56"
date --set="17 April 2011 12:34:56"
Entrambi i comandi sono equivalenti. Per impostare solo il tempo è possibile utilizzare:
date +%T -s "12:34:56"
La date
-manpage ha alcuni più controlli di formato. Puoi usarli tutti per cambiare la data
Fai clic sulla sezione data e ora del pannello, quindi apparirà il Calendario e sotto che ci sono le Impostazioni ora e data, quindi fai clic su di esso.
Fai clic sull'icona del lucchetto e inserisci la password, quindi scegli Imposta manualmente l'ora.
Nel Software Center cercare ntpdate e rimuoverlo, oppure nel terminale: sudo apt-get remove ntpdate
(Potrebbe essere necessario riavviare per disabilitare completamente ntp)
Quindi imposta la data.
Basato sull'esempio ".ps1" (script di Windows PowerShell) fornito in
Ho scritto un normale file di script ".bat" per modificare l'ora di inizio della macchina virtuale di VirtualBox.
L'ora di inizio desiderata è impostata sulla variabile "TEMPO_START_TIMESTAMP" in formato epoca. È possibile ottenere l'ora di inizio desiderata equivalente di epoh su " http://www.timestampconvert.com/ ".
Il nome della macchina virtuale di VirtualBox da avviare è necessario nella variabile "NOME" (stessa nomenchature utilizzata nello script ".ps1" sopra).
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%
Avrai anche bisogno dell'ora corrente in formato epoh, per questo usa il seguente script (salva come "toEpoch.vbs", questo script Visual Basic è chiamato dallo script ".bat" sopra):
WScript.Echo DateDiff("s", "01/01/1970 00:00:00", Now())
Per eseguire la macchina virtuale, è sufficiente eseguire il file di script ".bat" sopra. Non è necessario aprire l'interfaccia "Oracle VM VirtualBox Administration".
Spero che aiuti.
Saluti