Linux'ta şimdiki zaman nasıl ayarlanır?


69

Aşağıdaki komutların çıktısı neden farklı?

root@vmi2115:/var# hwclock
Sun 26 Jun 2011 01:21:38 PM CEST  -0.273230 seconds
root@vmi2495:/var# date
Sun Jun 26 15:21:39 CEST 2011
root@vmi2115:/var# 

Linux'taki şu anki zamanı değiştirebilir miyim?


1
Google'ın hızlı arama ki bu bağlantıyı döndürür:> cyberciti.biz/faq/howto-set-date-time-from-linux-command-prompt

Yanıtlar:


89

Genellikle, saati otomatik olarak ayarlamak istersiniz ve bu durumda, ntpdsaati sizin için otomatik olarak ayarlamak üzere ayarlamak istersiniz.

Özellikler dağıtımdan dağıtıma biraz farklılık gösterir, ancak örneğin Ubuntu kullanıyorsanız, örneğin Ubuntu'da NTP kurma konusunda bir kılavuz vardır . Aksi takdirde, sadece Google ntpd <distribution-name>ve muhtemelen onu bulacaksınız.

Ancak, elle ayarlamak isterseniz, kullanabilirsiniz date --set="<date string>". Buna örnekler olabilir:

date --set="23 June 1988 10:00:00"
date --set="10:00:00"

37

Donanım Saatini geçerli Sistem Zamanına ayarlayın.

# hwclock --systohc

Donanım Saati'nden Sistem Saati'ni ayarlayın.

# hwclock --hctosys

23

adil ntpdate ntp.ubuntu.comve her şey iyi olacak.

Bu konuda Ubuntu Resmi Dokümantasyon hakkında daha fazla bilgi bulunmaktadır.


18
Lütfen cevabınızı daha da ayrıntılandırın ve KG ve gelecekteki okuyuculara bahsettiğiniz komutun ne yaptığını ve neden böyle bir eylem önerdiğinizi açıklayın. not: KG, zamanı nasıl değiştireceğini sordu, nasıl senkronize edileceğini bilmiyordu.
Lorenzo Von Matterhorn

1
@LorenzoVonMatterhorn ok
Gangsar Swapurba 05.04

Bunun hala bir açıklaması yok. Bu komutu çalıştırırsam ne olacağını ummalıyım?
jerclarke


1
Tam zamanı ayarlamak için harika çalıştı.
Sabrina Gelbart

13

Bir başka yaygın, çok sinir bozucu problem, yanlış zaman dilimi seçildiğinde ...

Tarih çıktısı olan saat dilimini kontrol edin:

$ tarih

Fre 23 Ağu 18:47:04 UTC 2013

Saat dilimi türünü düzeltmek için:

$ sudo tzselect

ve karşılık gelen numaralarla doğru bölgeyi seçin.

İkinci görev, doğru zamanı ayarlamaktır:

$ sudo date --set = "18:37:00"

Ya da sadece HW-Clock'tan zaman ayırın:

$ sudo hwclock - hctosys


3

In CentOSsaat dilimleri yer alır /usr/share/zoneinfo/, bir sistem tarihini değiştirmek belirli saat diliminde şunları yapabilirsiniz:

İlk önce varolan yerel ayar dosyasının bir yedeğini alın.

sudo mv /etc/localtime /etc/localtime.bak

Ardından, bağlantıyı oluşturun:

sudo ln -s /usr/share/zoneinfo/Europe/Lisbon  /etc/localtime

Yazarak yeni sistem tarihini kontrol edin date.

Linux sistem tarihini manuel olarak ayarlamak için şunu yazabilirsiniz:

date -s "11 MAR 2006 11:11:11"

VEYA

date --set="11 MAR 2015 11:11:11"

VEYA

date +%Y%m%d -s "20150311"

Donanım Saatini geçerli Sistem Zamanına ayarlamak için :

hwclock --systohc

VEYA

hwclock -w

1

"hwclock" donanımın tarihi (makine) ve "tarih" yazılımın tarihi (işletim sistemi) 'dir.

Pc donanım tarihini değiştirmek için:

hwclock --set --date="2013-7-31 09:30"

Yazılım tarihini değiştirmek için:

date --set "2013-7-31 09:30"

1

Bunu dene:

date +%T -s "12:21:00"

veya

date +%T%p -s "12:22:20AM"
date +%T%p -s "12:23:30PM"

0

dateCPU'nun başladığı andan itibaren verilen süre ile verilen süreyi ve verilen dahili donanım saatini döndürerek hwclock, iç saatin sahip olduğu zamanı verir.

CPU tabanlı zaman, makine çalıştığı sürece sürüklenmeye meyillidir, bu da hwclock --hctosyskomutun varlığının sebebidir . Ayrıca, internette uluslararası zamanı koordine etmek için kullanılan Ağ Protokolü Zamanının kullanımının arkasındaki nedenlerden biridir.


0

NTP istemcisi yoksa bunu kullanın

date -s $(wget -q -O - http://www.timeapi.org/eest/now | cut -d '+' -f 1 | tr -d : | tr -d - | tr -d T | cut -c 1-12)

URL’deki eest yerel saat diliminizdir

Sen kullanabilirsiniz utc ... vb


ama bu benim için çalışıyor: askubuntu.com/a/683136
user956584 27:18

0

Linux'taki saati değiştirebilir miyim?

Benim için önce bu komutu çalıştırmam gerekiyordu:

sudo systemctl stop systemd-timesyncd

Aksi takdirde, systemd saati hemen sıfırlardı. Sistem servisini durdurduktan sonra, çalıştırma datebeklendiği gibi çalışıyor :

$ sudo date -s 'january 1 1971'
Fri Jan  1 00:00:00 CET 1971
$ date
Fri Jan  1 00:00:00 CET 1971

Servis çalışırken, date -skomut işe yarıyor gibi görünüyordu, ancak datebir dakika sonra çalıştırmak tekrar sistem zamanını verirdi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.