Network Time Protocol
一、时间服务器的重性
ntp 123/udp
二、配置时间服务器
ntp-424p8-3el6x86_64
NTP Server配置示例:
restrict default nomodify //不允许客户端登录,也不允许客户端修改
server 12712710 //使用本地的bios时间,自己跟自己同步
fudge 12712710 stratum 10 //定义级别,范围0-16,越小越精准
注释:时间服务器要读取本地的bios时间,所以会延迟5min左右才能同步成功
查看server的同步的状态:
unsynchronised
time server re-starting
polling server every 64 s
synchronised to local net at stratum 11
time correct to within 949 ms
polling server every 64 s
三、配置NTP客户端
方法一:
01 ntpdate 172161101
方法二:
server 172161101
fudge 172161101 stratum 5
==========================================================================
172161101 LOCAL(0) 11 u 36 64 3 0405 0046 0022
Mon Jan 20 14:44:25 CST 2014
Mon 20 Jan 2014 02:44:36 PM CST -0145485 seconds只是从网上整理了一下文档,还没有实践。感觉整理的还不错。
GMT时间是以太阳通过格林威治的那一刻来作为计时的标准,地球共有24 个时区,而以格林威治时间(GMT) 为标准时间,台湾本地时间为GMT + 8 小时。不准确,但是方便记忆与理解。
UTC时间是使用『原子震荡周期』所计算的物理时钟。最准确。
两个时间计时的方式不同,GMT与UTC时间有差不多16分钟的误差!
因为时区资料档在/usr/share/zoneinfo 内,在该目录内会找到/usr/share/zoneinfo/America/New_York 这个时区档。而时区设定档在/etc/sysconfig/clock ,且目前的时间格式在/etc/localtime ,所以你应该这样做:
其中parameter 的参数主要有底下这些:
那如果你没有在parameter的地方加上任何参数的话,这表示『该IP或网段不受任何限制』的意思喔!一般来说,我们可以先关闭NTP的使用权限,然后再一个一个的启用允许登入的网段。
常见的配置如下:
常见的配置如下:
因为预设的NTP Server 本身的时间计算是依据BIOS 的晶片震荡周期频率来计算的,但是这个数值与上层 Time Server 不见得会一致。所以NTP 这个daemon (ntpd) 会自动的去计算我们自己主机的频率与上层 Time server的频率,并且将两个频率的误差记录下来,记录下来的档案就是在driftfile 后面接的完整档名当中了!
关于档名你必须要知道:
driftfile 后面接的档案会被ntpd 自动更新,所以他的权限一定要能够让ntpd 写入才行。在CentOS 6x 预设的NTP 伺服器中,使用的ntpd 的owner 是ntp ,这部份可以查阅/etc/sysconfig/ntpd 就可以知道啦!
常见的配置如下:
除了以restrict 来限制用户端的连线之外,我们也可以透过金钥系统来给用户端认证, 如此一来可以让主机端更放心了。可以参考ntp-keygen 这个指令的相关说明。
ntp这个daemon是以port 123为连结的端口(使用UDP封包)
设定完ntpconf 之后就可以启动ntp 服务器了。启动与观察的方式如下:
这样就表示我们的NTP伺服器已经启动了,不过要与上层NTP服务器连线则还需要一些时间, 通常启动NTP后约在15分钟内才会和上层NTP伺服器顺利连接上。
请自行等待数分钟后再以下列指令查阅:
这个指令可以列出我们的NTP 服务器有跟上层连线否。由上述的输出结果可以知道,时间有校正约 538 10^(-3) 秒(538ms),且每隔128 秒会主动去更新时间!
这个ntpq -p 可以列出目前我们的NTP 与相关的上层NTP 的状态,上头的几个栏位的意义为:
差异都在0001 秒以内, 可以符合我们的一般使用了。另外,你也可以检查一下你的BIOS 时间与Linux 系统时间的差异, 就是/var/lib/ntp/drift 这个档案的内容,就能了解到咱们的Linux 系统时间与BIOS 硬体时钟到底差多久。
ntpdate这个方式仅适合不要启动NTP 的情况。如果你的机器数量太多了,那么用户端最好也启动一下NTP 服务。通过NTP 去主动的更新时间。
然后取消掉crontab 的更新程序,这样你的client 电脑就会主动的到NTP 伺服器去更新。使用浏览器打开百度在搜索框中搜索“ntp服务器地址”
然后找到一个有internet时间服务器的网页,或者有该信息的网页。
然后我们在系统托盘区的时间上面双击,打开时间设置面板。
现在,我们在时间设置的面板上把我们得到的那个时间服务器地址,如下图的粘贴到“服务器:”后面的框中。
然后点击“应用”保存一下设置
如果你现在的电脑时间本来就不正确,而又连接了互联网,那么可以点击一下“立即同步”来与NTP服务器时间同步。
如果同步出错,那么我们先按:WIN+r键调出运行窗口
在窗口中输入“servicesmsc”,然后点击“确定”
在服务窗口中
找到windows time 这个服务,然后查看6它是否被启动。
如果没有启动,那么我们该服务上面点击鼠标右键---->单击“启动”即可。
如果经过第五第六步都还会出错,那么你得更换一下这个internet时间服务器的地址啦
因为很多internet时间服务器并不能长久存在。可能已经过期,那么就得换掉。
那么我们点击那个“服务器:”后面的框,展开它的下拉框,在里面找到windows time这些时间服务器,看是否现在能使用官方的更新时间。
8
需要更改日期和更换NTP服务器地址的错误解决方法如下。
对于要把日期更改为当天的日期的错误,是因为时间服务器是无法更改你的日期的,它仅仅能在日期一致的情况下,同步一个正确的时间。在一台计算机上我们有两个时钟:一个称之为硬件时间时钟(RTC),还有一个称之为系统时钟(System Clock)。
系统时钟就是 *** 作系统的kernel所用来计算时间的时钟 它从1970年1月1日00:00:00 UTC时间到目前为止秒数总和的值。
在Linux下,系统时间在开机的时候会和RTC硬件时钟同步(synchronization),之后也就 各自独立运行 了。
系统运行期间,则通过其他硬件时钟源进行tick计算(tsc、hpet、acpi_pm)。
RTC(real time clock)通过主板(CMOS)的电磁供电,精确到秒。用户可手工设置RTC时间。
1 强制跃迁同步
ntpdate -u xxxxxxxx
xxxxxxxx 为ntpServer地址,如 ntpaliyuncom
注意:此时本机的ntpd不能启动,否则执行 ntpdate会报socket占用
2 将系统时间同步到硬件时钟
hwclock -w
3 启动ntpd,后续平滑同步
systemctl start ntpd
注意:此时本机的不能在ntpd运行期间执行ntpdate,否则会报socket占用
NTP服务器时间监控脚本
>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)