UTC:协调世界时(英:Coordinated Universal Time ,法:Temps Universel Coordonné),又称世界统一时间,世界标准时间,国际协调时间。英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称UTC。协调世界时是以原子时秒长为基础,在时刻上尽量接近于世界时的一种时间计量系统。
NTP :network time protocol
软件时钟,1970/1/1 0:0:0 计算的总秒数
硬件时钟,bios时间
server主机的port : UDP 123 端口
选择多部time server 来做NTPserver,避免单台坏了,时间无法同步
NTP 的阶层概念, 当前主机向上层获取时间,向下提供时间
ntp
tzdata :time zone data 提供各个市区对应的显示格式
配置文件:
/etc/ntp.conf 主要的唯一的配置文件
/usr/share/zoneinfo/* 由tzdata提供,为各时区的时间格式对应挡
/etc/sysconfig/clock 设定时区,与是否使用UTC时间钟的配置文件
/etc/localtime 本地端的时间配置文件,会把clock中指定的时区 /usr/share/zoneinfo/
中的时间配置文件拷贝到/etc/localtime中
常用指令:
/bin/date 用于linux软件时间的修改与显示
/sbin/hwclock 用于bios时间的修改与显示,一般是用date修改系统时间后,再用hwclock同步到bios中
/usr/sbin/ntpdate 客户端时间校正工具
/usr/sbin/ntpd 提供NTP服务
实例:移居美国,如何修改时间
1 date 显示当前时间,注意看时区
2 vim /etc/sysconfig/clock
zone="/America/New_York" 修改时区到纽约
3 cp /usr/share/zoneinfo/America/New_York /etc/localtime 复制纽约的时间格式对应当 到本地时间配置文件中
4 date 查看时区
/etc/ntp.conf
restrict [你的IP] mask [netmask_ip] [parameter]
parameter:
ignore 拒绝所有
nomodify 客户端可以连接校正时间,但是不能用ntpc,ntpq修改时间服务器的参数
noquery 不提供网络校时
notrap 不提供trap这个远程事件登陆的功能
notrust 拒绝没有认证的客户端
特别注意: 如果没有加参数,表示没有设置任何限制
server [ip or hostname] [prefer]
设置上层ntp服务器,prefer 表示优先使用
driftfile [可以被ntpd写入的目录与档案]
该文件 需要 使用完整的路径文件名
不能是链接当
ntpd 这个daemon要有写入权限
该文件所记录的数值单位为:百万分之一秒
keys [keys_file]
客户端还可以通过密钥来认证
/etc/init.d/ntpd start
chkconfig ntpd on
tail /var/log/messages
netstat -tulnp | grep ntp
ntpstat
linux 手动校时的工作,date ,hwclock
date
date [option] [+format]
date [-u] MMDDhhmm[CC]YY.ss
hwclock [-rws]
网络校时
ntpdate [-dv] [NTP IP/hostname]
ntpdate ip地址
记得不要在ntpserver 上运行 ntpdate 命令
ntpdate 脚本如下:
#!/bin/bash
#
# chkconfig: - 57 75
# description: set the date and time via NTP
### BEGIN INIT INFO
# Provides: ntpdate
# Required-Start: $network $local_fs $remote_fs
# Should-Start: $syslog $named
# Short-Description: set the date and time via NTP
# Description: ntpdate sets the local clock by polling NTP servers
### END INIT INFO
# Source function library.
. /etc/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
prog=ntpdate
lockfile=/var/lock/subsys/$prog
ntpconf=/etc/ntp.conf
ntpstep=/etc/ntp/step-tickers
start() {
[ "$EUID" != "0" ] && exit 4
[ "$NETWORKING" = "no" ] && exit 1
[ -x /usr/sbin/ntpdate ] || exit 5
[ -f /etc/sysconfig/ntpdate ] || exit 6
. /etc/sysconfig/ntpdate
[ -f $ntpstep ] && tickers=$(sed 's/#.*//' $ntpstep) || tickers=
if ! echo "$tickers" | grep -qi '[a-z0-9]' && [ -f $ntpconf ]; then
# step-tickers doesn't specify a server,
# use servers from ntp.conf instead
tickers=$(awk '$1=="peer"||$1=="server"{print $2}' $ntpconf | \
egrep -v '127\.127\.[0-9]+\.[0-9]+')
fi
if ! echo "$tickers" | grep -qi '[a-z0-9]'; then
echo $"NTP server not specified in $ntpstep or $ntpconf"
exit 6
fi
echo -n $"$prog: Synchronizing with time server: "
[ -z "$RETRIES" ] && RETRIES=2
retry=0
while true; do
/usr/sbin/ntpdate $OPTIONS $tickers &> /dev/null
RETVAL=$?
[ $RETVAL -eq 0 ] || [ $retry -ge "$RETRIES" ] && break
sleep $[10 * (1 << $retry)]
retry=$[$retry + 1]
done
[ $RETVAL -eq 0 ] && success || failure
echo
if [ $RETVAL -eq 0 ]; then
touch $lockfile
[ "$SYNC_HWCLOCK" = "yes" ] && \
action $"Syncing hardware clock to system time" \
/sbin/hwclock --systohc
fi
return $RETVAL
}
status() {
[ -f $lockfile ] || return 3
}
stop() {
[ "$EUID" != "0" ] && exit 4
rm -f $lockfile
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart|force-reload)
stop
start
;;
*)
echo $"Usage: $0 {start|stop|status|restart|force-reload}"
exit 2
esac
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com