目录
0x01 ntp安装
1.1 检查时间服务器是否安装
# rpm -q ntp
ntp-4.2.4p8-2.el6.x86_64 // 这表示已安装了,如果没有安装,这是空白。
//如果没有安装,通过以下命令进行安装
# yum install ntp
1.2 设置ntp自启动
按上面的安装方式在内网每台服务器上都安装好ntp
软件包。
完成后,都需要配置ntp
服务为自启动
# chkconfig ntpd on
# chkconfig --list ntpd
ntpd 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
1.3 手动同步时间
在配置前,先使用ntpdate
手动同步下时间,免得本机与外部时间服务器时间差距太大,让ntpd
不能正常同步。
# ntpdate -u 202.112.10.36
22 Dec 16:52:38 ntpdate[6400]: adjust time server 202.112.10.36 offset 0.012135 sec
0x02 ntp配置
2.1 修改配置文件ntp.cnf
vim /etc/ntp.conf
# For more information about this file, see the man pages
# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).
driftfile /var/lib/ntp/drift
# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
# Permit all access over the loopback interface. This could
# be tightened as well, but to do so would effect some of
# the administrative functions.
restrict 127.0.0.1
restrict -6 ::1
# Hosts on local network are less restricted.
# 允许内网其他机器同步时间
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
# 中国这边最活跃的时间服务器 : http://www.pool.ntp.org/zone/cn
server 210.72.145.44 perfer # 中国国家受时中心
server 202.112.10.36 # 1.cn.pool.ntp.org
server 59.124.196.83 # 0.asia.pool.ntp.org
#broadcast 192.168.1.255 autokey # broadcast server
#broadcastclient # broadcast client
#broadcast 224.0.1.1 autokey # multicast server
#multicastclient 224.0.1.1 # multicast client
#manycastserver 239.255.254.254 # manycast server
#manycastclient 239.255.254.254 autokey # manycast client
# allow update time by the upper server
# 允许上层时间服务器主动修改本机时间
restrict 210.72.145.44 nomodify notrap noquery
restrict 202.112.10.36 nomodify notrap noquery
restrict 59.124.196.83 nomodify notrap noquery
# Undisciplined Local Clock. This is a fake driver intended for backup
# and when no outside source of synchronized time is available.
# 外部时间服务器不可用时,以本地时间作为时间服务
server 127.127.1.0 # local clock
fudge 127.127.1.0 stratum 10
# Enable public key cryptography.
#crypto
includefile /etc/ntp/crypto/pw
# Key file containing the keys and key identifiers used when operating
# with symmetric key cryptography.
keys /etc/ntp/keys
# Specify the key identifiers which are trusted.
#trustedkey 4 8 42
# Specify the key identifier to use with the ntpdc utility.
#requestkey 8
# Specify the key identifier to use with the ntpq utility.
#controlkey 8
# Enable writing of statistics records.
#statistics clockstats cryptostats loopstats peerstats
配置文件修改完成,保存退出。
启动服务:
# service ntpd start
0x03 在其它节点上与master节点时间同步
# ntpdate master
这时候发现节点间的时间同步了,但ntpdate
只在开机运行,我们若要设置为1小时同步一次
安装完以后使用crontab
来自动更新时间:
# crontab -e
添加如下行:
* */1 * * * /usr/sbin/ntpdate 192.168.64.11
使用date命令发现所有节点时间已经一致。
0x04 同步过程中的问题
4.1 the NTP socket is in use
Linux下 ntp 时间同步服务ntpd 出现 the NTP socket is in use, exiting 解决
# service ntpd stop
Shutting down ntpd: [ OK ]
# ntpdate master
6 Sep 09:37:19 ntpdate[30658]: step time server 192.168.1.10 offset -51.869609 sec
2017年1月23日, 星期一