Apakah ada cara untuk memeriksa zona waktu saya saat ini di Linux?
linux
ubuntu-10.04
Peter Mortensen
sumber
sumber
date
akan memberitahumu.echo $TZ
tidak mengembalikan apa pun untuk saya.Jika Anda maksud dari konsol, ketikkan:
sumber
+07
saya. Untuk mendapatkanRegion/City
Linux berbasis Debian / Arch, lihat jawaban ini .Jika Anda ingin zona waktu numerik:
date +'%:z %Z'
Output sampel:
sumber
:z EST
date
. Versi BusyBox mencetak sesuatu yang tidak masuk akal, "%: z CEST" dalam kasus saya.linux
ubuntu-10.04
Saya ingin mencari zona waktu dalam bentuk "AS / Timur" atau "Eropa / London". Anda dapat menemukannya di:
ZONE="US/Eastern"
di / etc / sysconfig / clockatau Anda dapat mencoba dan mencocokkan / etc / localtime dengan salah satu file di bawah / usr / share / zoneinfo; menjengkelkan ini tampaknya tidak menjadi symlink, tetapi Anda bisa misalnya
untuk menemukan file yang cocok - mungkin ada cara yang lebih baik untuk melakukannya, tetapi itu berhasil. Akan ada beberapa pertandingan.
sumber
find /usr/share/zoneinfo/ -type f| xargs md5sum | grep $(md5sum /etc/localtime | cut -d' ' -f1)
Untuk ubuntu coba ini:
Output sampel:
Untuk Referensi distro lainnya: https://unix.stackexchange.com/questions/110522/timezone-setting-in-linux
sumber
timedatectl set-timezone
tidak diperbarui/etc/timezone
. Lihat jawaban ini untuk solusi berdasarkan/etc/localtime
.Kadang-kadang Anda mungkin mencari zona waktu kanonik daripada bentuk pendek seperti yang diproduksi oleh
date %Z
misUS/Eastern
. Pada sistem dengantimedatectl
eg Fedora,timedatectl
mengeluarkan banyak informasi berguna, termasuk zona saat ini:Sayangnya,
timedatectl
mengambilset-timezone
sebagai perintah, tetapi tidak memiliki yang sesuaiget-timezone
. Pisahkan sebagai berikut:sumber
Jadi saya di Waktu Gunung. Meskipun saran di atas tentang penggunaan variabel lingkungan atau keluaran perintah hanya tanggal kadang-kadang bekerja lebih baik, tergantung bagaimana Anda ingin menggunakannya.
sumber
Untuk zona waktu, Anda dapat menggunakan geolokasi:
Atau:
http://wiki.archlinux.org/index.php/time#Time_zone
sumber
/sbin/hwclock --systohc [--utc]
untuk mengatur jam perangkat keras.Kernel Linux selalu menyimpan dan menghitung waktu sebagai jumlah detik sejak tengah malam tanggal 1 Januari 1970 UTC terlepas dari apakah jam perangkat keras Anda disimpan sebagai UTC atau tidak. Konversi ke waktu lokal Anda dilakukan pada saat run-time. Satu hal yang rapi tentang ini adalah bahwa jika seseorang menggunakan komputer Anda dari zona waktu yang berbeda, mereka dapat mengatur variabel lingkungan TZ dan semua tanggal dan waktu akan tampak benar untuk zona waktu mereka.
Jika jumlah detik sejak 1 Januari 1970 UTC disimpan sebagai bilangan bulat 32-bit yang ditandatangani (seperti pada sistem Linux / Intel Anda), jam Anda akan berhenti berfungsi pada suatu waktu di tahun 2038. Linux tidak memiliki masalah Y2K yang melekat , tetapi memiliki masalah tahun 2038. Semoga kita semua akan menjalankan Linux pada sistem 64-bit saat itu. Bilangan bulat 64-bit akan membuat jam kami berjalan dengan sangat baik hingga sekitar tahun 292271-juta.
sumber
Beberapa solusi:
memberi saya (masing-masing):
Komputer saya ada di UTC.
sumber
Menggunakan TZ atau tanggal TIDAK DAPAT DIANDALKAN karena ini memberi tahu Anda zona waktu USER, bukan zona waktu sistem default.
Zona waktu sistem default disimpan di / etc / timezone (yang sering merupakan tautan simbolis ke file data zona waktu khusus untuk zona waktu). Jika Anda tidak memiliki / etc / zona waktu, lihat / etc / localtime. Umumnya itu adalah zona waktu "server". / etc / localtime seringkali merupakan symlink ke file zona waktu di / usr / share / zoneinfo. Jalur ke file zona waktu yang benar akan sering memberi Anda informasi geografi juga.
Linux yang lebih baru memiliki "timedatectl" yang memberi Anda banyak info ketika perintah dijalankan.
(sebagai simpul samping, jika Anda memiliki sistem kuno yang masih menggunakan zona waktu hard-coded LAMA, Anda mungkin dapat menyalin file zona waktu modern ke dalamnya dan itu akan berfungsi. Saya harus melakukan ini berkali-kali untuk menyelesaikan perubahan zona waktu. pada peralatan yang lebih tua).
sumber
Terkadang
timedatectl set-timezone
tidak diperbarui/etc/timezone
, jadi yang terbaik adalah mendapatkan tiemzone dari nama file yang/etc/timezone
ditunjuk symlink :Referensi: dalam jawaban ini .
sumber
Anda dapat menampilkan tanggal dan zona waktu secara bersamaan:
sumber