Linux işletim sisteminde saat ve tarih ayarlarının doğru olmaması sistemin çeşitli işlevlerinde tutarsızlıklara neden olabilir. Bu sorunlar şunları içerebilir:
- Log kayıtlarının tutarsız olması: Yanlış zaman bilgisi nedeniyle log kayıtlarını analiz etmek zorlaşır.
- Cron görevlerinin zamanında çalışmaması: Zamanlanmış görevler yanlış çalışabilir veya hiç çalışmayabilir.
- Senkronizasyon hataları: Dağıtık sistemlerde zaman uyumsuzluğu büyük sorunlara yol açabilir.
Bu tür sorunlardan kaçınmak için sunucunuzdaki saat ve tarih ayarlarını doğru bir şekilde yapılandırmanız gerekmektedir. Aşağıdaki adımları takip ederek Linux sunucunuzda saat ve tarih ayarlarını kolayca düzenleyebilirsiniz.
Mevcut Saat ve Tarihi Kontrol Etme
Mevcut saat ve tarihi kontrol etmek için aşağıdaki date komutunu kullanabilirsiniz. Bu komut işletim sisteminizin şu anki tarih ve saatini ekrana yazdıracaktır. Eğer bu bilgilerin yanlış olduğunu fark ettiyseniz bir sonraki adıma geçerek saat ve tarihi düzenleyebilirsiniz.
date
Saat ve Tarihi Manuel Olarak Değiştirme
Saat ve tarih ayarını manuel olarak yapmak için date komutunu kullanabilirsiniz.
Sistemde saat ayarlamak için aşağıdaki komutu kullanabilirsiniz.
date +%T -s "20:10:00"
Tarihi ayarlamak için aşağıdaki komutu kullanabilirsiniz;
date +%Y-%m-%d -s "2024-06-20"
Bu işlemler geçici bir ayarlama yapar. Sunucunuz yeniden başlatıldığında saat ve tarih ayarının korunmasını sağlamak için NTP yapılandırması önerilir. Manuel saat ayarlamaları uzun vadede sorun çıkarabileceği için saat ve tarih senkronizasyonunu otomatik olarak yapılandırmak en iyi yaklaşımdır. Bu işlemi NTP (Network Time Protocol) kullanarak gerçekleştirebilirsiniz.
timedatectl komutu ile NTP’yi etkinleştirebilirsiniz;
timedatectl set-ntp true
NTP durumunu kontrol etmek için aşağıdaki komutu çalıştırın.
timedatectl
Eğer NTP durumu pasif olarak görünüyorsa, NTP servisini kurmanız gerekecek. NTP servisini yüklemek için aşağıdaki adımları uygulayınız.
- NTP servisini yüklemek için aşağıdaki komutu çalıştırınız.
# Uubntu / Debian işletim sistemi için;
apt update && apt install ntp -y
# RHEL tabanlı işletim sistemi içim;
yum install ntp -y
- NTP servisini yükledikten sonra başlatmak ve sistem açılışında otomatik çalışmasını sağlamak için aşağıdaki komutları çalıştırınız.
systemctl start ntpd
systemctl enable ntpd
systemctl status ntpd
Bu işlemle birlikte sistem saati ve tarihi NTP sunucularından otomatik olarak senkronize edilecektir. NTP servisi sistem saatinizi düzenli olarak günceller ve tutarlı kalmasını sağlar.
- NTP senkronizasyonunun başarılı olup/olmadığını kontrol etmek için;
ntpq -p
Bu komut NTP sunucularına bağlantı durumunu ve zaman farkını gösterecektir.
Sistem zaman dilimini kontrol etmek veya değiştirmek için timedatectl komutunu kullanabilirsiniz. Mevcut zaman dilimini görmek için aşağıdaki komutu kullanabilirsiniz.
timedatectl status
Zaman dilimini değiştirmek için aşağıdaki komutu kullanınız.
timedatectl set-timezone Europe/Istanbul
Mevcut zaman dilimlerini görüntülemek için aşağıdaki komutu çalıştırabilirsiniz.
timedatectl list-timezones
Linux işletim sistemleri donanım (BIOS/UEFI) saatini UTC (Coordinated Universal Time) olarak kabul eder. Eğer sistem saati tekrar tekrar bozuluyorsa BIOS saatini kontrol etmek faydalı olacaktır. BIOS saatini UTC olarak ayarlamak için;
hwclock --systohc --utc
Bu komut ile sistem saatini BIOS’a (donanım saatine) UTC formatında kaydeder. BIOS saatini kontrol etmek için aşağıdaki komutu kullanabilirsiniz.
hwclock