阅读量:1
工作中遇到的报错——001
因项目需求,现需对公司内网的六台服务器(虚拟机)进行时间同步,保证时间一致
引用:https://blog.csdn.net/qq_43147136/article/details/105504314
Linux同步时间的方法_linux 时间同步-CSDN博客
Linux:Ntp同步时间服务器报错no server suitable for synchronization found-CSDN博客
一、检查是否安装 ntpdate 命令,没有则安装
yum -y install ntp ntpdate
二、选取其中一台作为时间服务器
1.修改ntp服务配置文件
1.1 将配置文件中所有的restrict开头的行注释掉
sed -i '/^restrict/ s/^/#/' /etc/ntp.conf
-i
:表示在原始文件上进行直接修改,而不是输出到标准输出。/^restrict/
:这是一个正则表达式,匹配以"restrict"开头的行。s/^/#/
:这是sed
的替换命令,将每行开头的字符(^表示行首)替换为#,即注释掉该行。/etc/ntp.conf
:指定要操作的文件名。
s/模式/替换字符串/[选项]
模式
是正则表达式,用于指定要匹配的文本模式。替换字符串
是要替换匹配的文本的字符串。选项
可以是以下其中之一:
g
(global):替换所有匹配到的文本而不是只替换第一个,默认只替换第一个。i
(ignore case):不区分大小写进行匹配。p
(print):打印替换后的结果。n
(quiet):只显示被修改过的行。
1.2 新增一行
restrict 服务器网段 mask 255.255.255.0 nomodify notrap
1.3 注释所有server开头的行
sed -i '/^server/ s/^/#/' /etc/ntp.conf
1.4 新加两行
server 127.127.1.0 fudge 127.127.1.0 stratum 10
2.启动ntpd服务并做开机自启
systemctl restart ntpd.service chkconfig ntpd on
三、其他节点同步设置好的时间服务器
ntpdate 时间服务器IP(不加子网掩码)
如果子节点运行命令之后,如果提示no server那就等两分钟左右再运行
四、执行同步命令报`the NTP socket is in use, exiting`错误
1.检查ntpd服务状态
systemctl status ntpd.service
2.如果开启则关闭
systemctl stop ntpd.service
或
lsof -i:123 kill -9 pid
3.进行同步
ntpdate 时间服务器IP
如果回显以下信息即成功:
13 Apr 09:08:36 ntpdate[124200]: step time server 192.168.100.120 offset -24096.422190 sec
3.1 date 命令查看
date
3.2 设置时间同步定时任务
crontab -e * 1 * * * /usr/sbin/ntpdate 时间服务器IP >> /root/ntpdate.log 2>&1
五、报'no server suitable for synchronization found'错误
出现这种情况的原因是,如果您想使用另一个服务器的时间,该服务器必须已经进行了自身同步。
1. ntpdate命令加上 -u 参数
ntpdate -u 时间服务器IP
-u
# 指定使用无特权的端口发送数据包。 当在一个对特权端口的输入流量进行阻拦的防火墙后是很有益的, 并希望在防火墙之外和主机同步。防火墙是一个系统或者计算机,它控制从外网对专用网的访问。