Linux时间同步

2021-03-14 17:00:03
如果不是北京时间先改成北京时间 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  直接设置硬件时间 ```shell $ hwclock --set --date="4/28/05 11:10:05"(月/日/年 时:分:秒) $ clock --set --date="07/07/06 10:19" (月/日/年 时:分:秒) ``` 如果让系统时间与硬件时钟同步,则用 ```shell $ hwclock --hctosys  (hc代表硬件时间,sys代表系统时间) $ clock --systohc  系统时钟和硬件时钟同步 ```   ## 方法二: 使用ntpd服务,要好于ntpdate加cron的组合。因为,ntpdate同步时间,会造成时间的跳跃,对一些依赖时间的程序和服务会造成影响。比如sleep,timer等。而且,ntpd服务可以在修正时间的同时,修正cpu tick。理想的做法为,在开机的时候,使用ntpdate强制同步时间,在其他时候使用ntpd服务来同步时间。     要注意的是,ntpd 有一个自我保护设置: 如果本机与上源时间相差太大, ntpd 不运行. 所以新设置的时间服务器一定要先 ntpdate 从上源取得时间初值, 然后启动 ntpd服务。ntpd服务 运行后, 先是每64秒与上源服务器同步一次, 根据每次同步时测得的误差值经复杂计算逐步调整自己的时间, 随着误差减小, 逐步增加同步的间隔. 每次跳动, 都会重复这个调整的过程.