Pertanyaan Cara mengubah pengaturan zona waktu dari baris perintah


Saya memiliki mesin virtual yang diatur ke PST yang dimiliki oleh beberapa rekan di zona waktu yang berbeda. Jika saya ingin mengubah zona waktu menjadi EST dan GMT, apa yang harus saya lakukan?


175
2017-08-31 18:19


asal




Jawaban:


Menggunakan timedatectl

sudo timedatectl set-timezone <timeszone>

Contoh:

  • Zona waktu sebagai EST

    sudo timedatectl set-timezone EST
    
  • Zona waktu sebagai UTC

    sudo timedatectl set-timezone UTC
    
  • Cantumkan semua Zona Waktu yang valid

    timedatectl list-timezones
    

Perintah ini sempurna untuk skrip otomatisasi karena tidak memerlukan apa pun Interaksi pengguna sementara dibandingkan dengan jawaban yang diberikan lainnya berdasarkan dpkg-reconfigure tzdata.


203
2018-03-08 13:15



Bukan penggemar komentar +1, tetapi saya menempatkan satu di sini karena ini bekerja untuk saya dengan cara terbaik. Saya menginginkan alat baris perintah satu baris untuk mengubah zona waktu, daripada ingin meluncurkan beberapa program baik menu atau gui (saya tidak tahu apa tzdata cara kerjanya, tetapi saya tidak perlu dengan perintah satu baris ini). Terima kasih! - Phil Ryan
bekerja seperti pesona;) - user332660
Menariknya, itu melakukan sesuatu yang sedikit berbeda dari tzdata. Saya memiliki masalah dengan waktu Jawa menjadi berbeda dari waktu sistem setelah menerapkan patch. Tzdata tidak berfungsi untuk memperbaiki masalah ini, tetapi ini berhasil. - Daniel Bower
ini tidak berhasil untuk saya; Namun demikian dpkg-reconfigure melakukan triknya. - Antti Haapala
@AnttiHaapala di mana OS & versi? - Jossef Harush


Yang berikut juga berfungsi. Untuk GMT:

ln -sf /usr/share/zoneinfo/GMT /etc/localtime

Untuk EST:

ln -sf /usr/share/zoneinfo/EST /etc/localtime

23
2017-08-31 10:09



Saya pikir akan lebih baik untuk menghubungkan salah satu file kota daripada GMT atau EST, karena mereka akan melacak waktu musim panas, sedangkan menghubungkan (misalnya) GMT tidak akan mengubah waktu sistem untuk mencerminkan kapan daylight savings berlaku dikotamu. misalnya.: ln -sf /usr/share/zoneinfo/Europe/London /etc/localtime - Asfand Qazi


Sebagai root, Anda harus mengeksekusi:

dpkg-reconfigure tzdata

Alat berbasis menu harus dimulai yang memungkinkan Anda mengubah zona waktu.


23
2017-08-31 19:41





Cara paling mudah terutama untuk server adalah dengan membuat daftar zona waktu:

timedatectl list-timezones

Dan pilih milik Anda, misalnya:

timedatectl set-timezone Europe/Athens

Itu dia! , :-)


10
2018-02-18 15:52





Untuk menjalankan satu program dengan pengaturan zona waktu yang berbeda, atur TZ variabel lingkungan, misalnya menjalankan TZ=Pacific/Kiritimati date untuk melihat jam berapa di Pulau Christmas, atau export TZ=Pacific/Kiritimati untuk memiliki pengaturan terakhir untuk sesi shell.


4
2017-09-01 00:04





Edit timezone file di /etc folder sebagai:

Etc/GMT

Anda dapat menggunakan format selanjutnya:

Region "/" City 

Contoh /etc/timezone:

Europe/Athens

atau

Europe/Paris
Europe/London

Anda dapat bereksperimen dengan: dpkg-reconfigure tzdata dan periksa kucing file zona waktu.

Anda harus reboot atau memulai lagi layanan (bukan layanan ntp). Saya tidak tahu yang mana. Jika ada yang tahu tolong bagikan kepada kami. (Diuji pada Ubuntu 15.10 perubahannya langsung diperhitungkan)


3
2017-07-28 12:19





cp -p / usr / share / zoneinfo / AS / Pasifik / etc / localtime

Saya sarankan LAGI menautkan seperti yang disebutkan oleh orang lain. Jika beberapa skrip secara tidak sengaja menulis file / etc / localtime Anda, maka itu akan menimpa file zona waktu Pasifik Anda ... dan agak merepotkan untuk menggantinya.

Cukup salin file Pasifik di atas file localtime dengan perintah di atas.


1
2017-07-18 20:04



Ini benar-benar bekerja untuk saya. Saya pikir ada beberapa bug dengan Docker, ansible (?). Baik timedatectl dan dpkg-reconfigure tzdata gagal untuk saya. Setelah saya menyalin, zona waktu berubah dari EST ke PDT. - Sun


Saya menggunakan skrip berikut untuk meminta pengguna untuk mengatur zona waktu, dan kemudian mengonfirmasi bahwa memang sudah diatur:

#!/bin/sh
sudo timedatectl set-timezone $(tzselect)
echo
echo timedatectl says:
timedatectl

Saya menyebutnya tz-set.


0
2018-04-26 07:24