12.3. Zaman gösterimi ve ayarlanması
Linux Sistemlerinde, sistem zaman dilimi ayarı
/etc/localtime
sembolik bağı ile ayarlanır. Bu bağ
yerel zaman dilimini gösteren bir zaman bölge bilgi dosyasını işaret eder.
Zaman dilimi bilgi dosyaları, kullandığınız dağıtıma bağlı olarak ya
/usr/lib/zoneinfo
ya da
/usr/share/zoneinfo
içerisinde saklanır.
Örneğin New Jersey'de bulunan bir SUSE sisteminde
/etc/localtime
bağı
/usr/share/zoneinfo/US/Eastern
dosyasını işaret
eder. Bir Debian sisteminde ise /etc/localtime
bağı
/usr/lib/zoneinfo/US/Eastern
dosyasını işaret eder.
Eğer zoneinfo
dizinini ne
/usr/lib
nede /usr/share
dizinleri altında bulamıyorsanız; ya find /usr -print | grep
zoneinfo
komutunu kullanın ya da dağıtımınızın belgelerine
bakın.
Farklı bir zaman diliminde yerleşik bir kullanıcınız varsa ne olur? Bir
kullanıcı kendi zaman dilimi ayarını TZ
ortam değişkeninde
belirterek değiştirebilir. TZ
ortam değişkeni
ayaranmamışsa, sistem zaman dilimi geçerli olur. TZ
değişkeninin sözdizimi tzset(3) kılavuz sayfasında
açıklanmıştır.
date(1) komutu o anki tarih ve saati gösterir.[59] Örneğin:
$
date +%c
Prş 16 Oca 2003 18:10:26 EET$
Günlerden Perşembe, 2003 yılının 16 Ocağı, akşam 6'yı 10 geçiyor
(Saat EET yani Doğu Avrupa zaman dilimine göre ayarlı,
+%c
seçeneği tarih ve saati yerel biçemde göstermek
içindir). date aynı zamanda evrensel zamanı da
gösterebilir:
$
date -u +%c
Prş 16 Oca 2003 16:10:26 UTC$
Ayrıca date çekirdeğin yazılım saatini ayarlamak için de kullanılabilir:
#
date 1042734297
Prş Oca 16 18:24:57 EET 2003#
date +%c
Prş 16 Oca 2003 18:25:10 EET#
Ayrıntılı bilgi için date kılavuz sayfasına bakabilirsiniz. Sözdizimleri biraz esrarlı olabilir. Sadece root saat ayarı yapabilir. Her kullanıcı kendi için zaman dilimi ayarı yapabilirken, saat herkes için aynıdır.
date sadece yazılım saatini gösterir veya ayarlar. clock komutu yazılım ve donanım saatleri arasındaki uyumu sağlar. Sistem açılış esnasında donanım saatini okumak ve yazılım saatini ayarlamak için kullanılır. Şayet her iki saati de ayarlamanız gerekirse önce yazılım saatini date ile ayarlayın ve daha sonra clock -w ile bunu donanım saatine yazın.
clock ile kullanılan -u
seçeneği,
donanım saatine evrensel zaman içinde olmasını söyler.
-u
deçeneğini doğru bir şekilde kullanmalısınız.
Aksi taktirde zaman konusunda, bilgisayarınızın kafası biraz karışabilir.
Saat dikkatli bir şekilde değiştirilmelidir. Unix sisteminin pek çok parçası, saatin düzgün bir şekilde çalışmasına bağlıdır. Örneğin: cron süreçleri komutları periyodik olarak çalıştırır. Şayet saati değiştirirseniz, komutları çalıştırıp çalıştırmama konusunda karışıklık ortaya çıkabilir. Daha eski bir Unix sisteminde, birileri saati geleceğe, yirmi yıl sonraki bir zamana ayarladı ve cron bu yirmi yıllık periyodik komutların hepsini birden yapmaya kalktı. cron'un şu anki sürümü bunu yapabiliyor ama siz yine de çok dikkatli olmalısınız. İleri veya geriye doğru sıçrayışlar, küçüklerden ve ileri doğru sıçramalardan daha tehlikelidir.