使用 debootstrap 手动安装后,我的服务器始终使用本地时间。我已经尝试将时区设置为 UTC,但没有成功。使用以下命令设置时区:
cp /usr/share/zoneinfo/Europe/Berlin /etc/localtime
我想强制服务器始终使用 UTC 作为时区。
日期
Mo 4. Jun 13:08:51 CEST 2018
日期-u
Mo 4. Jun 11:09:07 UTC 2018
ls -al /etc/本地时间
lrwxrwxrwx 1 root root 23 Jun 4 13:09 /etc/localtime -> /usr/share/zoneinfo/UTC
猫 /etc/时区
Etc/UTC
时间日期控件
Local time: Di 2018-06-05 14:52:12 CEST
Universal time: Di 2018-06-05 12:52:12 UTC
RTC time: Di 2018-06-05 12:52:12
Time zone: Etc/UTC (CEST, +0200)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
我已经尝试通过以下命令配置时区,但没有效果:
dpkg-reconfigure tzdata
cp /usr/share/zoneinfo/UTC /etc/localtime
ln -s /etc/localtime /usr/share/zoneinfo/UTC
ln -s /etc/localtime /usr/share/zoneinfo/Etc/UTC
我看不到任何警告或错误消息。
您知道时区错误的原因是什么吗?
答案1
问题可能出在这个链接:
lrwxrwxrwx 1 root root 23 Jun 4 13:09 /etc/localtime -> /usr/share/zoneinfo/UTC
如果此链接出现在cp /usr/share/zoneinfo/Europe/Berlin /etc/localtime
命令之前,则实际发生的情况是/usr/share/zoneinfo/UTC
文件被 file 的内容覆盖/usr/share/zoneinfo/Europe/Berlin
。
这将导致任何实际使用文件内容的内容/etc/localtime
使用 CET/CEST 时区,但任何仅通过检查来查找时区的内容姓名链接文件的时区将报告为“UTC”。
要解决这个问题:
apt-get --reinstall install tzdata
ln -sf /usr/share/zoneinfo/UTC /etc/localtime
update-initramfs -u
请注意最后一个命令:更改系统默认时区后,您应该更新 initramfs,以确保在系统引导顺序中早期启动的进程也将使用正确的时区定义。