前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7上设置或更改时区

CentOS7上设置或更改时区

作者头像
入门笔记
发布2022-06-02 16:11:48
3.2K0
发布2022-06-02 16:11:48
举报
文章被收录于专栏:入门小站入门小站

使用正确的时区对于许多与系统相关的任务和流程很重要。例如cron守护进程使用系统的时区来执行cron作业。

前提条件

为了能够更改系统的时区,你需要以root或具有 sudo权限的用户身份

几个常见的时间参数说明

  • UTC (Universal Time Coordinated) 协调世界时,又称世界标准时间
  • GMT (Greenwich Mean Time) 格林尼治平均时
  • CST 时间有以下几种含义:
    • Central Standard Time (USA) UT-6:00
    • Central Standard Time (Australia) UT+9:30
    • China Standard Time UT+8:00
    • Cuba Standard Time UT-4:00
  • (CET Central European Time,CET)欧洲中部时间是比世界标准时间(UTC)早一个小时的时区名称之一
  • DST (Daylight Saving Time)夏日节约时间

换算关系

  • UTC=GMT
  • CET=UTC/GMT + 1小时
  • CST=UTC/GMT +8 小时
  • CST=CET+9

检查当前时区

在 CentOS 和其他现代 Linux 发行版中,你可以使用该timedatectl命令来显示和设置当前系统的时间和时区。

下面的输出显示系统的时区设置为 UTC:

代码语言:javascript
复制
> timedatectl
      Local time: Tue 2021-10-26 13:19:30 CST
  Universal time: Tue 2021-10-26 05:19:30 UTC
        RTC time: Tue 2021-10-26 05:19:30
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: no
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

系统时区是通过符号链接/etc/localtime/usr/share/zoneinfo目录中的二进制时区标识符来配置的。因此,检查时区的另一个选项使用ls命令显示符号链接指向的路径 :

代码语言:javascript
复制
> ls -l /etc/localtime
lrwxrwxrwx 1 root root 33 Jun 12  2019 /etc/localtime -> /usr/share/zoneinfo/Asia/Shanghai

在 CentOS 中更改时区

在更改时区之前,你需要找出要使用的时区的长名称。时区命名约定通常使用地区/城市格式。

要列出所有可用的时区,你可以列出目录中的文件/usr/share/zoneinfo或使用timedatectl命令。

代码语言:javascript
复制
> timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Bamako
Africa/Bangui
Africa/Banjul
Africa/Bissau
Africa/Blantyre
Africa/Brazzaville
Africa/Bujumbura
Africa/Cairo
Africa/Casablanca
Africa/Ceuta
Africa/Conakry
Africa/Dakar
Africa/Dar_es_Salaam
Africa/Djibouti
Africa/Douala
Africa/El_Aaiun
Africa/Freetown
Africa/Gaborone
Africa/Harare
Africa/Johannesburg
Africa/Juba
Africa/Kampala
Africa/Khartoum
...

确定时区后运行以下命令:

代码语言:javascript
复制
> sudo timedatectl set-timezone your_time_zone

例如,要将系统的时区更改为Asia/Shanghai

代码语言:javascript
复制
> sudo timedatectl set-timezone Asia/Shanghai

运行timedatectl命令以验证更改:

代码语言:javascript
复制
> timedatectl
      Local time: Tue 2021-10-26 13:21:33 CST
  Universal time: Tue 2021-10-26 05:21:33 UTC
        RTC time: Tue 2021-10-26 05:21:33
       Time zone: Asia/Shanghai (CST, +0800)
     NTP enabled: no
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

通过创建符号链接更改时区

如果你运行的是旧版本的CentOS并且没有timedatectl命令,你可以通过符号链接/etc/localtime/usr/share/zoneinfo目录中的时区文件来更改时区。

删除当前/etc/localtime文件或符号链接:

代码语言:javascript
复制
> sudo rm -rf /etc/localtime

确定要配置的时区并创建符号链接 :

代码语言:javascript
复制
> sudo ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

你可以通过列出/etc/localtime文件或发出date命令来验证它:

代码语言:javascript
复制
> date
Tue Oct 26 13:45:36 CST 2021

设置时间

代码语言:javascript
复制
> sudo timedatectl set-time "YYYY-MM-DD HH:MM:SS"
//或
> sudo date -s "YYYY-MM-DD HH:MM:SS"

相关文章

linux中的15个基本ls命令示例

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 入门小站 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前提条件
  • 几个常见的时间参数说明
  • 换算关系
  • 检查当前时区
  • 在 CentOS 中更改时区
  • 通过创建符号链接更改时区
  • 设置时间
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档