今天連到一台用 Docker 架設的 CentOS 機器,似乎沒有設定時區,

因此執行 date 時顯示的是 UTC 時間:

testuser@localhost ~ $ date

Mon Feb  6 08:19:41 UTC 2017

 

看一下 /etc/localtime,的確目前並沒有連結到任何一個時區:

testuser@localhost ~ $ ll /etc/localtime 

-rw-r--r--. 1 root root 118 Mar  4  2015 /etc/localtime

 

想要修改時區的話,Docker 裡的機器沒有 GUI 可以用,只能用指令來修改~

先砍掉現在的 localtime 檔案,改建立一個 symbolic link,

指向 /usr/share/zoneinfo 下想要的時區檔案,

像是想將時區設定為台北 (UTC+8) 時,就將 /etc/localtime 指向 /usr/share/zoneinfo/Asia/Taipei:

rm -f /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Taipei /etc/localtime 

 

確認 symbolic link 指定是正確的:

testuser@localhost ~ $ ll /etc/localtime 

lrwxrwxrwx. 1 root root 31 Feb  6 16:20 /etc/localtime -> /usr/share/zoneinfo/Asia/Taipei

 

再執行一次 date 指令,現在顯示的已經是正確的台北時間 (CST) 了:

testuser@localhost ~ $ date

Mon Feb  6 16:20:59 CST 2017

 

參考資料:How To: 2 Methods To Change TimeZone in Linux

 

文章標籤
創作者介紹

亂打一通的心情日記

ephrain 發表在 痞客邦 PIXNET 留言(0) 人氣()