Linux时间同步

搭建集群需要保持时间同步,如何保持时间同步呢?只需要和某个服务器时间保持一样即可.
首先安装

yum install ntpdate -y

默认安装位置在sbin下

# which ntpdate
/usr/sbin/ntpdate

为了测试,首先用date命令修改当前时间.-s参数是 set的意思,可以修改当前的时间

date -s 9:23:40
2020年 11月 01日 星期日 09:23:40 CST

之后利用ntpdate同步网络时间,时间就会和网络上的保持一致.其中-u参数是穿透防火墙的意思.

# ntpdate -u ntp1.aliyun.com
 1 Nov 10:52:42 ntpdate[1600]: step time server 120.25.115.20 offset 5202.546010 sec

那么如何让集群保持时间一致呢?只需在定时器中设置时间同步即可.
如下设置定时器,表示每分钟同步一次时间.其中5个*号的含义如下
每个*都代表第几分钟.而不是每,这个要留意.

minute: 一小时中的哪一分钟 [0 ~59]
hour: 一天中的哪个小时 [0 ~23]
day: 一月中的哪一天 [1~31]
month: 一年中的哪一月 [1~12]
week: 一周中的哪一天 [0 ~6] 0表示星期天
commands: 执行的命令

crontab -e

* * * * * /usr/sbin/ntpdate -u ntp1.aliyun.com

如果需要每2分钟执行一次,可以如下设置

*/2 * * * * /usr/sbin/ntpdate -u ntp1.aliyun.com

每2个h执行一次

* */2 * * * /usr/sbin/ntpdate -u ntp1.aliyun.com

定时器命令是由crond服务项,或者说是进程执行的.

crond - daemon to execute scheduled commands

ps -ef |grep crond
root        747      1  0 10:43 ?        00:00:02 /usr/sbin/crond -n
root       1813   1516  0 11:14 pts/1    00:00:00 grep --color=auto crond

查看,启动,停止进程命令如下
查看状态,可以看到进程id为747…活动状态为active

# service crond status
Redirecting to /bin/systemctl status crond.service
● crond.service - Command Scheduler
   Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enabled)
   Active: active (running) since 日 2020-11-01 10:43:18 CST; 32min ago
 Main PID: 747 (crond)
   CGroup: /system.slice/crond.service
           └─747 /usr/sbin/crond -n

定时器的储存位置如下,可以用cat命令查看

# cat /var/spool/cron/root
* * * * * /usr/sbin/ntpdate -u ntp1.aliyun.com

或者通过crontab -l查看

# crontab -l
* * * * * /usr/sbin/ntpdate -u ntp1.aliyun.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值