如何从命令行更改时区设置
我有一个设置为PST的虚拟机,有几个同事在不同的时区。 如果我想将时区更改为EST和GMT,我还需要做什么?
使用timedatectl
sudo timedatectl set-timezone
例子:
-
时区为EST
sudo timedatectl set-timezone EST
-
时区为UTC
sudo timedatectl set-timezone UTC
-
列出所有有效的时区
timedatectl list-timezones
此命令非常适合自动化脚本,因为与基于dpkg-reconfigure tzdata
的其他给定答案相比,它不需要任何用户交互 。
以下也有效。 对于GMT:
ln -sf /usr/share/zoneinfo/GMT /etc/localtime
森林:
ln -sf /usr/share/zoneinfo/EST /etc/localtime
作为root你必须执行:
dpkg-reconfigure tzdata
应启动基于菜单的工具,允许您更改时区。
特别是服务器最简单的方法是列出时区:
timedatectl list-timezones
并选择你的,例如:
timedatectl set-timezone Europe/Athens
而已! ,:-)
要运行具有不同时区设置的一个程序,请设置TZ
环境变量,例如运行TZ=Pacific/Kiritimati date
以查看它在圣诞岛上的时间,或export TZ=Pacific/Kiritimati
以使设置最后为shell会话。
编辑/etc
文件夹中的timezone
文件:
Etc/GMT
您可以使用下一种格式:
Region "/" City
/etc/timezone
示例:
Europe/Athens
要么
Europe/Paris Europe/London
您可以尝试使用: dpkg-reconfigure tzdata
并检查cat timezone文件。
您必须重新启动或重新启动服务(而不是ntp服务)。 我不知道哪一个。 如果有人知道请与我们分享。 (在Ubuntu 15.10上测试,立即考虑更改)
cp -p /usr/share/zoneinfo/US/Pacific /etc/localtime
我推荐其他人提到的AGAINST链接。 如果某个脚本意外地写了你的/etc/localtime
文件,那么它会覆盖你的太平洋时区文件…而且替换它有点痛苦。
只需使用上面的命令将Pacific文件复制到localtime文件即可。
我使用以下脚本询问用户要设置的时区,然后确认它确实已设置:
#!/bin/sh sudo timedatectl set-timezone $(tzselect) echo echo timedatectl says: timedatectl
我称之为tz-set
。