歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux管理 >> Linux維護 >> 如何使用命令行更改Linux系統的日期和時間

如何使用命令行更改Linux系統的日期和時間

日期:2017/3/2 10:37:31   编辑:Linux維護

Linux 系統的時間有時候會不准,不准確的時間會導致日志文件中的時間出現錯誤,所以准確的時間是很重要的,那麼要怎麼更改Linux 系統的時間呢?下面小編給大家介紹下使用命令行更改Linux系統時間和日期的方法步驟。

問題: 在 Linux 上, 我怎樣通過命令行來改變日期和時間?

在 Linux 系統中保持日期和時間的同步是每一個 Linux 用戶和系統管理員的重要責任。 很多程序都依靠精確的時間信息得以正常工作。 另外, 不精確的日期和時間會使得日志文件中的時間戳變得毫無意義, 減弱了它們在系統檢查和檢修中的作用。 對於生產系統來說, 精確的日期和時間甚至更為重要。 例如, 在零售公司中, 所有產品必須時刻准確地計數(並儲存在數據庫服務器中)以便於財政部門計算每天及每周,每月,每年的支出和收入。

我們必須注意, 在 Linux 機器上有兩種時鐘:由內核維持的軟件時鐘(又稱系統時鐘)和在機器關機後記錄時間的(電池供電的)硬件時鐘。 啟動的時候,內核會把系統時鐘與硬件時鐘同步。之後, 兩個時鐘各自獨立運行。

方法一: Date 命令

在 Linux 中, 你可以通過 date 命令來更改系統的日期和時間:

# date --set=‘NEW_DATE’

其中 NEW_DATE 是諸如 “Sun, 28 Sep 2014 16:21:42” 或者 “2014-09-29 16:21:42” 的可讀格式的日期字符串。

日期格式也可以手動指定以獲得更精確的結果:

# date +FORMAT --set=‘NEW_DATE’

例如:

# date +’%Y%m%d %H%m’ --set=‘20140928 1518’

你也可以用相對的方式地增加或減少一定的天數,周數,月數和秒數,分鐘數,小時數。 你也可以把日期和時間的參數放到一個命令中。

# date --set=‘+5 minutes’# date --set=‘-2 weeks’# date --set=‘+3 months’# date --set=‘-3 months +2 weeks -5 minutes’

最後, 把硬件時鐘設置為當前系統時鐘:

# hwclock --systohc

運行 hwclock --systohc 的目的是將硬件時鐘同軟件時鐘同步, 這可以更正硬件時鐘的系統漂移(即時鐘按照一定的速度走快或走慢)。

另一方面, 如果硬件時鐘是正確的, 但系統時鐘有誤, 可以用下面的命令更正:

# hwclock --hctosys

在兩種情況下, hwclock 命令都是將兩個時鐘同步。 否則, 重啟後時間會是錯誤的, 因為當電源關閉時硬件時鐘會記憶時間。 然而, 這對於虛擬機器並不適用, 因為虛擬機器並不能訪問硬件時鐘。

方法二: NTP

另一種使系統日期和時間保持精確的方法是使用 NTP (網絡時間協議)。 在 Linux 上, ntpdate 命令通過 NTP 將系統時鐘和公共 NTP 服務器同步。

你可以使用如下命令來安裝 ntpdate:

在 Debian 及基於 Debian 的發行版上:

# aptitude install ntpdate

在基於 Ret Hat 的發行版上:

# yum install ntpdate

使用 NTP 同步系統時鐘:

# ntpdate -u 《NTP 服務器名或IP》# hwclock --systohc

除了一次性使用 ntpdate 來同步時鐘, 你也可以使用 NTP 守護進程(ntpd), 它會始終在後台運行, 不斷地通過 NTP 來調整系統時鐘。

上面就是使用命令行更改Linux系統日期和時間的方法介紹了,如果你想用命令行修改Linux系統的話,不妨試試上面介紹的方法步驟吧。

Copyright © Linux教程網 All Rights Reserved