如何調整 Linux 系統時區

如何調整 Linux 系統時區

目錄

最近透過 docker 編譯程式後,發現時間對不上,原來是時區沒有設定的問題。 本來想說時區設定應該滿容易的,沒想到因為 docker 設定時不會互動,所以用一般在 Ubuntu 上使用 timedatectl 設定的方法就會有問題。 因此記錄一下在一般伺服器中以及 docker 中為 Ubuntu 系統設定時區的方法。

在伺服器上調整時區

可以使用 timedatectl 來查看目前的時區設定,並且透過 timedatectl list-timezones 列出所有可用的時區。 透過下列指令,可以將時區設定成 Asia/Taipei

sudo timedatectl set-timezone Asia/Taipei
sudo dpkg-reconfigure --frontend noninteractive tzdata

在 docker 中為調整時區

docker 中調整時區需要透過 tzdata 來設定,並且需要設定 DEBIAN_FRONTEND 變數避免互動設定。 系統及部分程式會透過 /etc/localtime 來判斷時區,tzdata 會透過讀取 /etc/timezone 來設定時區。因此同時修改這兩個地方避免衝突。

export TZ=Asia/Taipei
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime
echo $TZ > /etc/timezone
DEBIAN_FRONTEND="noninteractive" apt-get install -y tzdata
標籤 :
分享 :

相關文章

如何使用 GitHub Actions 自動建立並推送 Docker Image

如何使用 GitHub Actions 自動建立並推送 Docker Image

在我們先前的文章 中,我們學習了如何使用 buildx 來建立能在多平台運行的 Docker Image。然而,這種方法仍需要手動操作。為了讓我們能在 Hugo 有新版本更新時自動建立對應的 Docker Image,我們可以利用 GitHub Actions 來實現這個目標。

閱讀更多
如何使用 Docker 在 Windows 上快速建立並還原自訂系統環境

如何使用 Docker 在 Windows 上快速建立並還原自訂系統環境

最近我遇到了一個需求,需要在 Windows 上安裝不同的軟體,之後又希望能迅速地將系統還原到原始狀態。雖然 Windows 內建的 Sandbox 功能能夠實現快速還原,但它無法讓我自訂那個“原始狀態”的具體內容。而傳統的虛擬機軟體如 VMWare 或 VirtualBox,雖然提供了客製化的靈活性,但還原過程卻相對耗時。這時,我想到了使用 Docker,因為 Docker 能夠讓我快速建立、刪除並還原到一個客製化的原始狀態。

閱讀更多
使用 OpenSSH 替沒有固定 IP 的本地主機 (WSL2) 建立反向 TCP 遠端通道 (Ngrok 免費替代)

使用 OpenSSH 替沒有固定 IP 的本地主機 (WSL2) 建立反向 TCP 遠端通道 (Ngrok 免費替代)

若我們希望將本地主機的服務,例如 ssh 伺服器供外部連線,但我們又沒有固定 IP 時,我們可以使用 OpenSSH 建立反向 TCP 遠端通道,讓外部主機可以透過這個通道連線到我們的本地主機。

閱讀更多