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系統的話,不妨試試上面介紹的方法步驟吧。