对于许多与系统相关的任务和进程,使用正确的时区是必不可少的。例如,cron守护进程使用系统的时区执行cron作业,日志文件中的时间戳基于同一系统的时区。
环 境
检查现在的时区
timedatectl是一个命令行实用程序,允许您查看和更改系统的时间和日期。
[root@localhost ~]# timedatectlLocal time: Tue 2020-03-31 16:35:23 CSTUniversal time: Tue 2020-03-31 08:35:23 UTCRTC time: Tue 2020-03-31 08:35:23Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yesNTP service: activeRTC in local TZ: no
<以上代码可复制粘贴&#xff0c;可往左滑>
更改时区
在更改时区之前&#xff0c;您需要找出要使用的时区名称。要列出所有可用时区&#xff0c;请使用下面的命令&#xff1a;
[root&#64;localhost ~]# timedatectl list-timezones
…
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk
…
<以上代码可复制粘贴&#xff0c;可往左滑>
然后使用set-timezone选项更改时区&#xff0c;比如更改为Europe/Berlin:
[root&#64;localhost ~]# timedatectl set-timezone Europe/Berlin
<以上代码可复制粘贴&#xff0c;可往左滑>
使用创建连接的方式更改时区
如果运行的是旧版本的Centos&#xff0c;比如Centos6之前的版本&#xff0c;并且系统上不存在timedatectl命令&#xff0c;则可以通过将/etc/localtime符号链接到/usr/share/zoneinfo目录中的时区文件来更改时区。
查看一下/usr/share/zoninfo下面的时区文件&#xff0c;
[root&#64;localhost ~]# ls /usr/share/zoneinfo/
[root&#64;localhost ~]# ls /usr/share/zoneinfo/Asia/
<以上代码可复制粘贴&#xff0c;可往左滑>
现在替换时区文件。
[root&#64;localhost ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
[root&#64;localhost ~]# date
Tue Mar 31 16:53:59 CST 2020
<以上代码可复制粘贴&#xff0c;可往左滑>
可以看到已经切换到了CST中国标准时间
总 结
在本文中&#xff0c;使用了两种方式修改时区。一种是使用timedatectl&#xff0c;另一种方式使用创建链接的方式。