#!/usr/bin/env bash #all hosts should to sync time, all hosts should no password login echo other synchosts_array=("xufeng-1" "xufeng-2") #currnt time in this host currentDay=`date "+%Y-%m-%d"` currentTime=`date "+%H:%M:%S"` echo "current day in this host is " echo $currentDay echo "current time in this host is " echo $currentTime #loop host to set time for hostname in ${synchosts_array[*]} do echo $hostname ssh -t $hostname bash -c "'date -s '$currentDay' &&hwclock --systohc'" ssh -t $hostname bash -c "'date -s '$currentTime' &&hwclock --systohc'" done
在某个节点上配置任务调度周期即可:
crontab -u root -e
*/1 * * * * /opt/software/rootbin/synctime.sh >> /opt/software/rootbin/synctime.log
每分钟执行一次。