一. 基本方法:
date -s "2018-09-02 04:23:45"
clock -w 把時間寫入cmos(一個RAM芯片)
hwclock 查看硬件時間
hwclock -w :將系統時間寫入硬件時間
hwclock --hctosys: 將系統時間調整為和硬件時間一樣
hwclock --systohc: 將硬件時間調整為和系統時間一樣
例如:在設置中國時區使用亞洲/上海(+8)
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
將UTC時間改為CST格式
/etc/profile末尾添加一行
export TZ='CST-8'
然后執行 source /etc/profile 使文件生效
或者 dpkg-reconfigure tzdata
二. 其他方法:
1. Linux中有個ntp包可以自動校准時間,用來同步網絡時間
Debian系統安裝NTP校時包:
apt-get install ntpdate
CentOS系統安裝NTP校時包:
yum install ntp
校時命令:
ntpdate cn.pool.ntp.org
如果想每隔一定時間自動校時,只需將上面的命令加入至Cron就行了:
00 12 * * * /sbin/ntpdate cn.pool.ntp.org
* cn.pool.ntp.org是ntp網絡授時組織的中國授時源,類似的還有ntpdate asia.pool.ntp.org
2. 有時候方法一過段時間又不正常了,可以用下面的方法,快速校對Linux服務器時間至北京時間,參考
http://blog.path8.net/archives/6397.html
服務器采用ntp更新時間,經常牽扯到UTC是否開啟的問題,開啟了時間就會快8個小時,前段時間朋友給我了下面的命令,一條命令解決之前的所有問題。
rdate -t 60 -s stdtime.gov.hk #使用rdate將stdtime.gov.hk服務器的時間抓取回來 hwclock -w #將獲得的時間寫入硬件
rdate的命令使用方法介紹
語 法:rdate [-ps][主機名稱或IP地址...]
補充說明:執行rdate指令,向其他主機詢問系統時間並顯示出來。
參 數:
-p 顯示遠端主機的日期與時間。
-s 把從遠端主機收到的日期和時間,回存到本地主機的系統時間。
-t Set timeout in seconds for every attempt to retreive date. ubuntu下沒這個參數。
