Domanda Qual è l'istruzione della riga di comando per modificare l'orologio di sistema?


Esiste un comando per modificare la data e l'ora dell'orologio di sistema?

Per esempio:

La data e l'ora correnti sono January 1, 1970 22:30:59:980 dove 59 e 980 si riferisce a secondi e millisecods rispettivamente

E voglio cambiarlo January 2, 1971 23:31:59:990

C'è un comando per questo?


48
2017-09-08 07:11


origine


Nel caso qualcuno fosse interessato a cambiare anche il fuso orario. askubuntu.com/questions/3375/... - nassim


risposte:


Per impostare l'ora in Ubuntu dal terminale, è possibile utilizzare il seguente comando:

data sudo new_date_time_string

dove new_date_time_string deve seguire il formato MMDDhhmmyyyy.ss che è descritto di seguito:

  • MM è un mese a due cifre, tra 01 e 12
  • DD è un giorno a due cifre, tra 01 e 31, con le regole regolari per i giorni in base al mese e all'anno in cui si applica
  • hh è di due cifre, usando il periodo di 24 ore quindi è tra 00 e 23
  • mm è un minuto di due cifre, compreso tra 00 e 59
  • yyyy è l'anno; può essere a due cifre o a quattro cifre
  • ss è di due cifre. Nota il periodo . prima di ss.

Fonte: Gestisci il tempo in Ubuntu tramite la riga di comando.

Quindi, nel tuo caso particolare, puoi usare:

sudo date 010224311971.59

Oppure puoi usare:

sudo date --set="1971-01-02 23:31:59.990"  && date --rfc-3339=ns

che è esattamente quello che hai chiesto.

Fonte: https://serverfault.com/a/338395/181186.


55
2017-09-08 07:16



qual è il formato effettivo della data della stringa? - Abel Melquiades Callejo
questo significa che la precisione può essere limitata a secondi? - Abel Melquiades Callejo
@AbelMelquiadesCallejo Vedi le mie nuove modifiche. - Radu Rădeanu
Qualcuno potrebbe spiegare? hh è tra 00 e 23, ma OP e questa risposta mostrano che è impostato su 24. - Carl H
@CarlH Grande cattura su quello! Guarda le nuove modifiche - Abel Melquiades Callejo


Il modo semplice:

ntpdate -s ntp.ubuntu.com

Per cambiare il fuso orario:

dpkg-reconfigure tzdata

Probabilmente ti serve sudo.


14
2018-04-30 08:00



Quale server NTP fisserà il tempo a gennaio del 1971, mi chiedo. - muru
Il tuo server è connesso a internet? Controlla la documentazione ufficiale a help.ubuntu.com/lts/serverguide/NTP.html - Ninecols


Puoi usare il date comando per cambiare il tempo e avrete bisogno sudo permesso di farlo; un esempio per impostare la data al 27 giugno 2014 e il tempo per 1:17 AM è:

sudo date --set "27 Jun 2014 1:17:00"

4
2018-06-26 19:51





Poiché systemd è stato introdotto in Ubuntu, il modo corretto è:

# timedatectl set-time "RFC 3339-compliant string"

per esempio.

# timedatectl set-time "2002-10-02T10:00:00-05:00"
# timedatectl set-time "10:35"
# timedatectl set-time "+2 hours"

3
2017-09-11 22:05



Questo funziona anche con, ad es. sudo date --set="+2 hours", che è esattamente quello di cui avevo bisogno. - Emile Vrijdags


Versioni brevi per impostare solo la data o l'ora:

Per impostare la data (imposta l'ora su 0: 0: 0):

date +%Y%m%d -s "19710102"

Per impostare solo l'ora:

date +%T -s "23:31:59"

È possibile aggiungere il ".990" desiderato ai secondi.

Leggi la pagina man per ulteriori opzioni e formati riguardanti il ​​comando date:

man date

Nota: potresti anche voler controllare o impostare l'orologio hardware. Leggi qui.


0
2018-06-13 04:33





sudo date --set="Mon Feb 16 08:49:56 IST 2015"

Questa sarebbe la dichiarazione corretta in UBUNTU 14.04.


-3
2018-02-16 03:23



Per tutti solo nel fuso orario IST? L'altra risposta non funziona per te? - Xen2050
La domanda non richiede la modifica del fuso orario. - Abel Melquiades Callejo