1. 程式人生 > >Linux修改時區的正確方法【修改時間,需要修改軟連線,靠譜】

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/Shan