linux系統時間有兩個,一個是硬件時間,即BIOS時間,就是我們進行CMOS設置時看到的時間,另一個是系統時間,是linux系統Kernel時間。當Linux啟動時,系統Kernel會去讀取硬件時鍾的設置,然后系統時鍾就會獨立於硬件運作。有時我們會發現系統時鍾和硬件時鍾不一致,因此需要執行時間同步。
方法一
一、date 查看/設置系統時間
1、將日期設置為2017年11月3日 [root@linux-node ~]# date -s 11/03/17 2、將時間設置為14點20分50秒 [root@linux-node ~]# date -s 14:20:50 3、將時間設置為2017年11月3日14點16分30秒(MMDDhhmmYYYY.ss) [root@linux-node ~]# date 1103141617.30
二、hwclock/clock 查看/設置硬件時間
1、查看系統硬件時鍾 [root@linux-node ~]# hwclock --show 或者 [root@linux-node ~]# clock --show 2、設置硬件時間 [root@linux-node ~]# hwclock --set --date="11/03/17 14:55" (月/日/年時:分:秒) 或者 [root@linux-node ~]# clock --set --date="11/03/17 14:55" (月/日/年時:分:秒)
三、同步系統及硬件時鍾
[root@linux-node ~]# hwclock --hctosys 或者 [root@linux-node ~]# clock --hctosys 備注:hc代表硬件時間,sys代表系統時間,以硬件時間為基准,系統時間找硬件時間同步 [root@linux-node ~]# hwclock --systohc或者 [root@linux-node ~]# clock --systohc 備注:以系統時間為基准,硬件時間找系統時間同步
方法二
時區設置用tzselect 命令來實現。但是通過tzselect命令設置TZ這個環境變量來選擇的時區,需要將變量添加到.profile文件中。
一、tzselect命令執行
執行tzselect命令 --> 選擇Asia --> 選擇China --> 選擇east China - Beijing, Guangdong, Shanghai, etc-->然后輸入1。
執行完tzselect命令選擇時區后,時區並沒有更改,只是在命令最后提示你可以執行 TZ=’Asia/Shanghai’; export TZ 並將這行命令添加到.profile中,然后退出並重新登錄。
二、修改配置文件來修改時區
[root@linux-node ~]# echo "ZONE=Asia/Shanghai" >> /etc/sysconfig/clock [root@linux-node ~]# rm -f /etc/localtime #鏈接到上海時區文件 [root@linux-node ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
執行完上述過程后,重啟機器,即可看到時區已經更改。
備注:
在centos7中設置時區的命令可以通過 timedatectl 命令來實現
[root@linux-node ~]# timedatectl set-timezone Asia/Shanghai