你可能设置过 cron 任务 来在特定时间备份重要文件或执行系统相关任务。也许你配置了一个日志服务器在特定时间间隔轮转日志。但如果你的时钟不同步,这些任务将无法按时执行。这就是要在 Linux 系统上设置正确的时区并保持时钟与互联网同步的原因。本指南介绍如何在 Ubuntu Linux 上设置时间同步。下面的步骤已经在 Ubuntu 18.04 上进行了测试,但是对于使用 systemd 的 timesyncd 服务的其他基于 Ubuntu 的系统它们是相同的。
在 Ubuntu 上设置时间同步
通常,我们在安装时设置时区。但是,你可以根据需要更改或设置不同的时区。
首先,让我们使用 date 命令查看 Ubuntu 系统中的当前时区:
1
$ date
示例输出:
1
Tue Jul 3011:47:39 UTC 2019
如上所见,date 命令显示实际日期和当前时间。这里,我当前的时区是 UTC,代表协调世界时。
或者,你可以在 /etc/timezone 文件中查找当前时区。
1 2
$ cat /etc/timezone UTC
现在,让我们看看时钟是否与互联网同步。只需运行:
1
$ timedatectl
示例输出:
1 2 3 4 5 6 7
Local time: Tue 2019-07-3011:53:58 UTC Universal time: Tue 2019-07-3011:53:58 UTC RTC time: Tue 2019-07-3011:53:59 Time zone: Etc/UTC (UTC, +0000) System clock synchronized: yes systemd-timesyncd.service active: yes RTC in local TZ: no
$timedatectl Local time:Tue2019-07-30 20:22:35 CST Universal time:Tue2019-07-30 12:22:35 UTC RTC time:Tue2019-07-30 12:22:36 Time zone:Asia/Shanghai(CST,+0800) System clock synchronized:yes systemd-timesyncd.service active:yes RTC in local TZ:no
如你所见,我已将时区从 UTC 更改为 CST(中国标准时间)。()
要切换回 UTC 时区,只需运行:
1
$ sudotimedatectlset-timezoneUTC
使用 tzdata 更改时区
在较旧的 Ubuntu 版本中,没有 timedatectl 命令。这种情况下,你可以使用 tzdata(Time zone data)来设置时间同步。