如果不是北京时间先改成北京时间

    读取当前时间 timedatectl

 

设置时区为亚洲/上海 timedatectl set-timezone Asia/Shanghai    

1.删除自带的localtime 
  rm -rf /etc/localtime 
2.创建软链接到localtime 
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

在同步时间

方法一:

使用ntpdate比较简单

安装ntpdate

yum install ntpdate

ntpdate -u ntp.api.bz 

ntpdate ntp1.aliyun.com    //直接用域名同步中国上海时间 是阿里云的服务器

ntp常用服务器

中国国家授时中心:210.72.145.44

NTP服务器(上海) :ntp.api.bz

做个定时

crontab -e 

0 5 * * *  /usr/sbin/ntpdate  -u ntp.api.bz    #5点时间同步

0 12 *  * * /usr/sbin/ntpdate 192.168.0.1  同步两台机器的时间(如果服务器是内网不能联网,就同步那个时间准的有的路由就自带时间同步,可以直接同步)

配置文件在 /etc/sysconfig/ntpdate    最后一行改成yes 与硬件时间同步

硬件时间 hwclock -r  

 把硬件同步系统时间里面  hwclock -w 

设置系统时间 也可以是年月日时间格式  date --set "2022-04-14 18:18:19"

直接设置硬件时间

# hwclock --set --date="4/28/05 11:10:05"(月/日/年 时:分:秒)

# clock --set --date="07/07/06 10:19" (月/日/年 时:分:秒)

如果让系统时间与硬件时钟同步,则用

# hwclock --hctosys  (hc代表硬件时间,sys代表系统时间)

# clock --systohc  系统时钟和硬件时钟同步

  方法二:

使用ntpd服务,要好于ntpdate加cron的组合。因为,ntpdate同步时间,会造成时间的跳跃,对一些依赖时间的程序和服务会造成影响。比如sleep,timer等。而且,ntpd服务可以在修正时间的同时,修正cpu tick。理想的做法为,在开机的时候,使用ntpdate强制同步时间,在其他时候使用ntpd服务来同步时间。

    要注意的是,ntpd 有一个自我保护设置: 如果本机与上源时间相差太大, ntpd 不运行. 所以新设置的时间服务器一定要先 ntpdate 从上源取得时间初值, 然后启动 ntpd服务。ntpd服务 运行后, 先是每64秒与上源服务器同步一次, 根据每次同步时测得的误差值经复杂计算逐步调整自己的时间, 随着误差减小, 逐步增加同步的间隔. 每次跳动, 都会重复这个调整的过程.

以下是一些可能可以用的NTP服务器地址(仅供参考,网上找的)

三 、局域网同步时间

解决方式如果是单机的手设置时间就可以了,以后就按这个时间执行,
如果是集群的,时间要求又严格,可以以其中一台位基准
其余几台以他的时间为基准进行内网时间同步。

ntpdate 192.168.0.1 
0 12 *  * * /usr/sbin/ntpdate 192.168.0.1  同步两台机器的时间(如果服务器是内网不能联网,就同步那个时间准的有的路由就自带时间同步,可以直接同步)

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐