1. 程式人生 > 其它 >Linux 更改時區、時間

Linux 更改時區、時間

更改時區原文:https://www.cnblogs.com/st-jun/p/7737188.html

更改時間原文:https://www.cnblogs.com/suiyueshentou/p/7798340.html

一、手動修改

1. date命令:檢視當前時間

2.date -s 時分秒 :修改時間

還需要把日期改過來

3.date -s 完整日期時間(YYYY-MM-DD hh:mm[:ss]):修改日期、時間

時間要用雙引號括起來,否則報錯

手動修改會存在一定的時間誤差

4.hwclock -w

將時間寫入bios避免重啟失效。

當我們進行完 Linux 時間的校時後,還需要以 hwclock 來更新 BIOS 的時間,因為每次重新啟動的時候,系統會重新由 BIOS 將時間讀出來,所以, BIOS 才是重要的時間依據吶。

二、同步網路時間

Linux修改時區的正確方法

CentOS和Ubuntu的時區檔案是/etc/localtime,但是在CentOS7以後localtime以及變成了一個連結檔案

[root@centos7 ~]# ll /etc/localtime 
lrwxrwxrwx 1 root root 33 Oct 12 11:01 /etc/localtime -> /usr/share/zoneinfo/Asia/Shanghai

如果採用直接cp的方法修改系統時區,那麼就會把它所連結的檔案修改掉,例如把美國的時區檔案內容修改成了上海的時區內容,有可能會導致有些程式語言或程式在讀取系統時區的時候發生錯誤,因此正確的修改方法是:

CentOS6、Ubuntu16

# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

CentOS7、RHEL7、Scientific Linux 7、Oracle Linux 7

最好的方法是使用timedatectl命令

# timedatectl list-timezones |grep Shanghai    #查詢中國時區的完整名稱
Asia/Shanghai
# timedatectl set-timezone Asia/Shanghai    #其他時區以此類推

或者直接手動建立軟連結

# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime