Ubuntn系统时间,时区调整及同步

本文详细介绍了如何在Linux系统中进行时间同步配置,包括统一时区设置、拷贝时区文件、手动设置时间、同步硬件时钟以及通过Cron计划任务实现定时自动同步等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第1步: 统一时区

# dpkg-reconfigure tzdata  

选择同一的时区Asia -> Chongqing,如果有的服务器选择US,有的服务器选择CN,时间肯定 不可能同步


备注: 必须为root账号

第2步: 拷贝文件

# cp /usr/share/zoneinfo/Asia/Chongqing  /etc/localtime

备注: 上面的命令是防止系统重启后时区改变


第3步: 统一时间

# date -s "20160101 10:20:30"

备注:  使用date -s来统一时间


第4步: 时间同步   

# hwclock  -w

备注: 操作系统硬件时钟和系统时钟同步,硬件时钟主要是指BIOS时钟.


第5步: 定时更新 

# ntpdate time.nist.gov         

# crontab -e

0 0 * * * * /usr/sbin/ntpdate time.nist.gov   

备注: 

1. 第一条命令是一次性同步

2. 第二条命令是定时更新任务

### Ubuntu 系统硬件时间同步方法 在 Ubuntu 系统中,实现与硬件时间同步需要明确操作系统如何处理硬件时间(RTC 时间)。Windows 将硬件时间视为本地时间(Local Time),而 Ubuntu 默认将硬件时间视为协调世界时(UTC)[^2]。因此,在双系统环境中,时间显示可能会出现不一致的情况。 以下是实现 Ubuntu 系统与硬件时间同步的具体方法: #### 方法一:更新 Ubuntu系统时间和硬件时间 1. 安装 `ntpdate` 工具以校准系统时间: ```bash sudo apt-get update sudo apt-get install ntpdate ``` 2. 使用 NTP 服务器校准系统时间: ```bash sudo ntpdate time.windows.com ``` 此命令会从指定的 NTP 服务器获取当前时间并更新 Ubuntu系统时间。 3. 将更新后的系统时间写入硬件时间: ```bash sudo hwclock --localtime --systohc ``` 这一步将确保硬件时间Ubuntu系统时间保持一致[^3]。 #### 方法二:修改 Windows 的硬件时间处理方式 如果希望避免频繁调整硬件时间,可以在 Windows 中设置硬件时间为 UTC。通过以下命令实现: ```cmd Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1 ``` 执行后需重启计算机以使更改生效。此方法适用于希望硬件时间统一为 UTC 的用户[^3]。 #### 方法三:在 Docker 容器内同步时间 如果使用 Docker 容器时发现日志时间戳不正确,可以通过挂载主机的 `/etc/localtime` 文件到容器中解决: ```bash sudo docker run --name=<容器名称> -v /etc/localtime:/etc/localtime:ro <容器镜像名称:标签> ``` 此方法确保容器内的时区与主机保持一致[^5]。 ### 注意事项 - 如果选择将硬件时间设置为本地时间(Local Time),需要在 Ubuntu 中运行以下命令以更改其默认行为: ```bash timedatectl set-local-rtc 1 --adjust-system-clock ``` 此命令会告知 Ubuntu 硬件时间为本地时间而非 UTC[^4]。 - 修改硬件时间或操作系统时间处理方式可能会影响其他操作系统的行为,请谨慎操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值