GNU/Linux >> Linux Esercitazione >  >> Linux

Impostazione del fuso orario in Linux

Dai un'occhiata a questo post sul blog intitolato:How To:2 Methods To Change TimeZone in Linux.

Distribuzioni Red Hat

Se stai utilizzando una distribuzione come Red Hat, il tuo approccio alla copia del file sarebbe per lo più accettabile.

NOTA: Se stai cercando una soluzione distro-agnostica, funziona anche su Debian, anche se di seguito ci sono approcci più semplici se hai solo bisogno di preoccuparti delle macchine Debian.

$ ls /usr/share/zoneinfo/
Africa/      CET          Etc/         Hongkong     Kwajalein    Pacific/     ROK          zone.tab
America/     Chile/       Europe/      HST          Libya        Poland       Singapore    Zulu
Antarctica/  CST6CDT      GB           Iceland      MET          Portugal     Turkey       
Arctic/      Cuba         GB-Eire      Indian/      Mexico/      posix/       UCT          
Asia/        EET          GMT          Iran         MST          posixrules   Universal    
Atlantic/    Egypt        GMT0         iso3166.tab  MST7MDT      PRC          US/          
Australia/   Eire         GMT-0        Israel       Navajo       PST8PDT      UTC          
Brazil/      EST          GMT+0        Jamaica      NZ           right/       WET          
Canada/      EST5EDT      Greenwich    Japan        NZ-CHAT      ROC          W-SU         

Raccomanderei comunque di collegarvi ad esso piuttosto che copiarlo.

$ sudo unlink /etc/localtime 
$ sudo ln -s /usr/share/zoneinfo/Etc/GMT+6 /etc/localtime

Ora la data mostra il diverso fuso orario:

$ date -u
Thu Jan 23 05:40:31 UTC 2014

$ date 
Wed Jan 22 23:40:38 GMT+6 2014

Distribuzioni Ubuntu/Debian

Per cambiare il fuso orario su una di queste distribuzioni puoi usare questo comando:

$ sudo dpkg-reconfigure tzdata

$ sudo dpkg-reconfigure tzdata

Current default time zone: 'Etc/GMT-6'
Local time is now:      Thu Jan 23 11:52:16 GMT-6 2014.
Universal Time is now:  Thu Jan 23 05:52:16 UTC 2014.

Ora, quando lo controlliamo:

$ date -u
Thu Jan 23 05:53:32 UTC 2014

$ date 
Thu Jan 23 11:53:33 GMT-6 2014

NOTA: C'è anche questa opzione in Ubuntu 14.04 e versioni successive con un singolo comando (fonte:Chiedi a Ubuntu - impostazione del fuso orario dal terminale):

$ sudo timedatectl set-timezone Etc/GMT-6

Sull'uso di "Etc/GMT+6"

estratto dalla risposta di @MattJohnson su SO

Zone come Etc/GMT+6 sono intenzionalmente invertiti per retrocompatibilità con gli standard POSIX. Vedi i commenti in questo file.

Non dovresti quasi mai aver bisogno di usare queste zone. Invece dovresti utilizzare un fuso orario con nome completo come America/New_York o Europe/London o qualunque cosa sia appropriata per la tua posizione. Fare riferimento all'elenco qui.


Ecco come lo faccio in Ubuntu. Basta sostituire Asia/Tokyo con il tuo fuso orario.

echo 'Asia/Tokyo' | sudo tee /etc/timezone

sudo dpkg-reconfigure -f noninteractive tzdata

C'è un bug in tzdata :alcuni valori vengono normalizzati da dpkg-reconfigure :

echo 'US/Central' >/etc/timezone
dpkg-reconfigure -f noninteractive tzdata
# Current default time zone: 'America/Chicago'

echo 'US/Eastern' >/etc/timezone
apt-get install --reinstall tzdata
# Current default time zone: 'America/New_York'

Il comando tzselect è fatto per fare quello che vuoi.


Linux
  1. Installazione e configurazione di Grafana in Linux

  2. Esempi di comandi sudo in Linux

  3. Configurazione di un sottodominio con Apache su Linux

  4. Aggiorna Python su Linux da 2.7 a 3.5

  5. Come aggiornare R in Linux?

10 Utili configurazioni di Sudoer per l'impostazione di "sudo" in Linux

Comando Sudo in Linux

Nozioni di base sulla riga di comando di Linux:sudo

Configurazione di logrotate in Linux

Controlla il fuso orario in Linux

Guida per la configurazione del server SFTP in Linux