Linux 时区设置教程(timedatectl 与 locale)
本教程说明如何用 xyz.sh/timezone(别名 tz、locale)设置系统时区,以及可选的 locale。
$ curl -fsSL xyz.sh/timezone | bash
说明 · xyz.sh/timezone · 最后更新:
命令示例
列出时区(只读,不必 root):curl -fsSL xyz.sh/timezone | bash -s -- --list
设置时区:curl -fsSL xyz.sh/timezone | bash -s -- Asia/Shanghai
同时设置 locale:curl -fsSL xyz.sh/timezone | bash -s -- Asia/Taipei zh_TW.UTF-8
无参数且有终端时,脚本会在 TTY 上询问;把脚本管道给 bash 且没有 TTY 时,必须传入时区。
优先使用 timedatectl;否则回退到 /etc/localtime。Debian 上的 locale 走 locale-gen / update-locale,RHEL 系走 localectl,必要时尝试安装 glibc-langpack。
如何改回
没有单独的卸载命令。用同一脚本改回目标时区即可,例如 bash -s -- UTC,或再指定原来的 locale。