Linux时间同步的那些事儿

来自linux中国网wiki
Evan讨论 | 贡献2019年11月8日 (五) 09:56的版本 →‎centos7 chrony
跳到导航 跳到搜索

centos7 chrony

Chrony是一个开源的自由软件,它能保持系统时钟与时钟服务器(NTP)同步,让时间保持精确。它由两个程序组成:chronyd和chronyc。
          chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。
          Chrony 是网络时间协议的另一种实现,与网络时间协议后台程序(ntpd)不同,它可以更快地且准确的同步系统时钟。
 ———————————————— 

 centos7  建议是用 chrony

yum -y install chrony ntp  -y

systemctl start chronyd
systemctl status chronyd
systemctl enable  chronyd


timedatectl set-timezone Asia/Shanghai

timedatectl set-ntp true
 
 crontab  -l  #如果实在要用
* */2 * * * ntpdate time.windows.com

yum install chrony -y 

#改配置
 cat /etc/chrony.conf 

 #没用的全删除了 
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server   news.neu.edu.cn iburst 
#server 0.centos.pool.ntp.org iburst


systemctl  start chronyd.service && systemctl  enable chronyd.service


测试 

故意超时 
date -s "2020-11-11 11:11:11"

哪个命令fix对了时间的
重启这个就行了 其实是不是不用动也行 过了阵就会自己同步
  systemctl restart chronyd.service

timedatectl set-ntp yes

chrony 使用

使用chronyc
你也可以通过运行chronyc命令来修改设置,命令如下:

accheck - 检查NTP访问是否对特定主机可用

activity - 该命令会显示有多少NTP源在线/离线



add server - 手动添加一台新的NTP服务器。

clients - 在客户端报告已访问到服务器

delete - 手动移除NTP服务器或对等服务器

settime - 手动设置守护进程时间

tracking - 显示系统时间信息



#有用 ?
将系统时间写入硬件时间

 sudo hwclock --systohc

老方法 centos7

#proxmox 上的 vm centos7 老是时间不对 ,以前用的ntpd老是不成功呢 

yum install ntp  -y
timedatectl set-timezone Asia/Shanghai
timedatectl set-ntp true
ntpq -p


#设置系统时间为中国时区并启用NTP同步
yum install ntp -y#//安装ntp服务
systemctl enable ntpd #//开机启动服务
systemctl start ntpd #//启动服务
timedatectl set-timezone Asia/Shanghai #//更改时区
timedatectl set-ntp yes # 用的是true ?//启用ntp同步
ntpq -p //同步时间



CentOS配置时间同步NTP
为什么要使用ntpd而不是ntpdate?
原因很简单,ntpd是步进式的逐渐调整时间,而ntpdate是断点更新,比如现在服务器时间是9.18分,而标准时间是9.28分,ntpd会在一段时间内逐渐的把时间校准到与标准时间相同,而ntpdate会立刻把时间调整到9.28分,如果你往数据库内写入内容或在其他对时间有严格要求的生产环境下,产生的后果会是很严重的。(注:当本地时间与标准时间相差30分钟以上是ntpd会停止工作)

NTP通信协议原理

/usr/sbin/ntpd: 主要提供 NTP 服务的程序啰!配置文件为 /etc/ntp.conf
/usr/sbin/ntpdate: 用于客户端的时间校正,如果你没有要启用 NTP 而仅想要使用 NTP Client 功能的话,那么只会用到这个指令而已啦!

#这个运行不了 ali的是直接跑在  /etc/ntpd.conf配置的   
*/10 * * * * /usr/sbin/ntpd cn.pool.ntp.org > /dev/null  2>&1

*/10 * * * * /usr/sbin/ntpdate cn.pool.ntp.org > /dev/null  2>&1

debian

UTC时区切换到CST 时区
 echo "export TZ='Asia/Shanghai'"  >> /etc/profile  
 cat /etc/profile |grep TZ  
source /etc/profile
date -R
 date 
Sat Aug 19 17:03:17 CST 2017

see also

Centos7 NTP网络时间协议

CentOS 7 时间, 日期设置 (含时间同步)

http://cn.linux.vbird.org/linux_server/0440ntp.php

CentOS 7 时间, 日期设置

CentOS7 中使用NTP进行时间同步

使用NTP进行CentOS7时间同步

linux时间同步,ntpd、ntpdate

服务器时间同步


ntpd时钟同步服务

chrony

使用chrony代替ntp同步时间

详解:Linux Chrony 设置服务器集群同步时间

centos7.4 用chrony代替ntpd时间同步服务器

Centos 7.3_1611使用chrony做时间同步

linux中时间同步服务(chronyd服务)以及系统时间设定

CentOS7.2 chrony替代ntp搭建时间服务器

CentOS 7.x中正确设置时间与时钟服务器同步

CentOS7.2 chrony替代ntp搭建时间服务器