Linux系统时间不对可以通过以下三种方法修复
1、将硬件时间同步到系统时间
2、修改系统的时区
3、配置NTP客户端
系统时钟VS硬件时钟
在Linux中有硬件时钟与系统时钟等两种时钟。硬件时钟是指主机板上的时钟设备,也就是通常可在BIOS画面设定的时钟。系统时钟则是指kernel中的时钟。当Linux启动时,系统时钟会去读取硬件时钟的设定,之后系统时钟即独立运作。所有Linux相关指令与函数都是读取系统时钟的设定。
date 查看系统时间
date -s 设置系统时间
hwclock查看硬件时间
hwclock -w 将硬件时间同步到系统时间
Linux系统时钟不对一般为时区设置有误
Centos7查询时区方法
[zyq@zyq ~]$ timedatectl Local time: Tue 2023-01-17 13:56:36 CSTUniversal time: Tue 2023-01-17 05:56:36 UTCRTC time: Tue 2023-01-17 05:56:36Time zone: Asia/Shanghai (CST, +0800)NTP enabled: yes
NTP synchronized: yesRTC in local TZ: noDST active: n/a
Centos6查询方法
cat /etc/sysconfig/clock
如果时区不是Asia/Shanghai,通过修改时区即可修复
时区如果没有问题可通过配置时钟客户端修复
常用的时钟服务器
cn.pool.ntp.org、asia.pool.ntp.org、pool.ntp.org、hk.pool.ntp.org
配置客户端
[zyq@zyq tmp]$ grep server /etc/ntp.conf
# Use public servers from the pool.ntp.org project.
server 0.rhel.pool.ntp.org iburst
server 1.rhel.pool.ntp.org iburst
server 2.rhel.pool.ntp.org iburst
server 3.rhel.pool.ntp.org iburst
#broadcast 192.168.1.255 autokey # broadcast server
#broadcast 224.0.1.1 autokey # multicast server
#manycastserver 239.255.254.254 # manycast server
以上是系统自带的服务器地址,如果要指定添加“serve 域名” 即可;没有ntp客户端sudo yum install ntpd即可
启动客户端
[zyq@zyq ~]$ sudo systemctl restart ntpd
检查与上层NTP服务器是否时钟同步成功
[zyq@zyq ~]$ ntpq -premote refid st t when poll reach delay offset jitter
==============================================================================time.cloudflare 10.208.8.4 3 u 34 64 1 218.271 -14.928 20.049
*trabant.uid0.hu 84.2.44.19 3 u 33 64 1 245.959 -20.544 37.502139.199.215.251 100.122.36.196 2 u 34 64 1 46.197 8.340 10.811
[zyq@zyq ~]$
注意:此ntpq工具需安装后使用yum -y install ntp
如果出现“*”,则表示时钟同步成功。
首次进行NTP时钟同步需要一定时间,请等待几分钟再进行检查。
注意:chronyd进程会与ntp进程冲突,确保系统没有此进程
systemctl stop chronyd
systemctl disable chronyd