1、在一台linux服务器安装ntp server
2、修改ntpconf配置文件
vi /etc/ntpconf
restrict default nomodify
(允许任何IP的客户机都可以进行时间同步,如果是只允许某个网段的客户机进行时间同步可以这样写restrict 1058260 mask 2552552550 nomodify)
3、以守护进程启动ntpd
#/etc/rcd/initd/ntpd -c /etc/ntpconf -p /tmp/ntpdpid
#/etc/rcd/initd/ntpd start
二、配置时间同步客户机
ntpdate 101281425
hwclock -w
使用cron 定时同步
vi /var/spool/cron/root(或crontab -e)
增加一行,在每天的1点10分、9点10分、17点10分与时间同步服务器进行同步并写入BIOS
10 1 ,9,17 root /usr/sbin/ntpdate 101281425; /sbin/hwclock -w
方法一:采用系统自带的时间同步功能
1、单击系统托盘下方的时间,单击d出窗口里的“更改日期和时间设置”
2、d出“日期和时间”对话框,选择“Internet时间”选项卡,单击 “更改设置”按钮,d出“Internet时间设置”对话框,在服务器地址栏输入国家授时中心服务器的IP地址:2107214544,单击“立即更新”按钮,同步完成后点击“确定”按钮退出,OK
方法二:修改注册表,提高时间同步精度
由于系统默认的时间同步间隔是7天,我们无法自由选择,使得这个功能在灵活性方面大打折扣。其实,我们也可以通过修改注册表来手动修改它的自动同步间隔以提高同步精度,以下以Vista系统为例。
1、在“开始”菜单→“运行”项下(或按Win+R)输入“Regedit”进入注册表编辑器。
2、展开
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters]分支,双击NtpServer将键值修改为国家授时中心服务器的IP地址:2107214544,然后点击“确定”按钮保存。(注:若已用过方法一,此步可以省略)
3、展开
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders \NtpClient]分支,并双击SpecialPollInterval键值,将对话框中的“基数栏”选择到“十进制”上,输入框中显示的数字正是自动对时的间隔(以秒为单位),比如默认的604800就是由7(天)×24(时)×60(分)×60(秒)计算来的。设定时间同步周期(建议设为900= 15分钟或3600=1小时等周期值),填入对话框,点击确定保存关闭对话框。
Linux自带了ntp服务 -- /etc/initd/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间。
配置文件就是/etc/ntpconf。
为了测试,设置让node2 -- 1921681102和node1 -- 1921681101做时间同步。
第一步,
node1做time server,node1本身不和其他机器时间同步,就是取本地时间。
所以,先把node1机器的时间调准了:
[root@node1 ~]date -s 08/03/2011
[root@node1 ~]date -s 11:12:00
[root@node1 ~]clock -w
[root@node1 ~]hwclock --systohc
后两个命令是把设置的时间写到硬件时间中去(也就是CMOS里面的时间)。
第二步,
然后将node1配置成一个time server,修改/etc/ntpconf,
[root@node1 ~]vi /etc/ntpconf
其他的配置不怎么需要改,只需要关注restrict的配置:
1 注释掉原来的restrict default ignore这一行,这一行本身是不响应任何的ntp更新请求,其实也就是禁用了本机的ntp server的功能,所以需要注释掉。
2 加入:restrict 19216810 mask 2552552550 -- 让19216810/24网段上的机器能和本机做时间同步
3 这样就可以了,记得下面的:
server 12712710 # local clock
fudge 12712710 stratum 10
这两行需要,这是让本机的ntpd和本地硬件时间同步。
当然,我们也可以添加server xxxxxxxxxxxx,让他和其他的time server时间同步。
4 /etc/initd/ntpd restart
5 chkconfig ntpd on
6 修改iptables配置,将tcp和udp 123端口开放,这是ntp需要的端口,在/etc/services中可以查到这个端口。
第三步,
这样node1就成为一台time server了,现在我们配置node2这台机器,也是修改/etc/ntpconf ,
[root@node2 ~]vi /etc/ntpconf
1 restrict default ignore这行保留为注释状态,因为sales不需要做time server
2 注释掉server 12712710, fudge 12712710 stratum 10这两行,因为这台机器不需要和本地硬件时钟同步了。
3 加入server 1921681101这行,和node1机器同步。
这样就OK了。看看时间,已经和node1同步了。往后默认配置好像是5分钟和time server同步一次。ntpdate命令是显式的和某台机器做时间同步,以前将ntpdate放到crontab中定期同步也是可以的,但是既然ntpd本身就可以做这个时间
第四步,将ntpdate放到crontab中定期步也是可以的
[root@node2 ~]#vi ntpupdatesh
/usr/sbin/ntpdate 1921681101
[root@node2 ~]#chmod 755 ntpupdatesh
[root@node2 ~]#crontab -e
/1 /root/ntpupdatesh
[root@node2 ~]#/etc/initd/crond restart
1
在电脑桌面的右下角点击时间,d出系统时间界面。在此界面左下角点击“更改日期和时间设置”,进入日期和时间界面。XP系统需要双击时间,Win7系统中直接左键单击即可。
2
在“日期和时间”属性界面,单击“Internet时间”,进入“Internet时间”选项卡。在“Internet时间”选项卡中,单击右侧的“更改设置”按钮,进入更改界面进行设置。
3
在“Internet时间设置”界面中,在“与Internet时间服务器同步”前面挑勾。之后在服务器中输入更新服务器的IP地址。在局域网中,IP地址为你需要同步的服务器IP地址。
4
启动时间同步服务。可以点击界面的“立即更新”启动时间同步服务。如果不启动时间同步服务,将无法与你设置的同步服务器进行时间更新。
5
在“Internet时间设置”选项界面中,如果时间同步服务已经成功启动,则在此界面会显示系统下一次同步时间。如果不显示,则需求手动启动时间同步服务,否则无法实现该功能。
6
在时间设置界面,同时可以显示两个时区。日期和时间-附加时钟,选择好时区后,在“显示此时钟”前面挑勾,既可以将此时钟在时间中显示。时间同步服务器是一种高科技智能化、可独立基于NTP/SNTP协议工作的时间服务器,时间同步服务器从GPS卫星上获取标准时钟信号信息,将这些信息在网络中传输,网络中需要时间信号的设备如计算机,控制器等设备就可以与标准时间源同步。标准的时钟信息通过TCP/IP网络传输,DNTS系列还支持多种流行的时间发布协议,如time/UDP,并支持可设置的UDP端口的中新创科定义的时间广播数据包。NTP和time/UDP的端口号分别固定于RFC-123和RFC-37指定的123和37。
随着计算机应用的广度和深度不断加大,网络中的设备种类和业务类型越来越多,服务器的数量也与日俱增。传统上,各种服务器、网络设备使用的时间都是由设备内部时钟来提供的。由于服务器、网络设备本身的时钟误差是不可避免的,尽管这种误差每天不大,但经过一段时间的累积就会出现大的时间差,从而导致网络中各服务器、网络设备的时间不一致。对于一些重要的行业来说,这种时间的不一致是致命的。基于以上考虑,网络中有必要部署NTP网络时间服务器,使用GPS信号作为时间源,通过NTP协议对网络内的所有服务器和网络设备的时间进行同步。一 域环境,默认情况下,所有计算机都会和域控制器同步时间的,无需特别设置。
二 工作组环境
1)如果所有机器都可以访问internet,可以直接使用timewindowscom(默认的配置)
2)如果机器不能访问internet,或者有防火墙导致无法同步,可以在2003服务器上创建时间服务器,客户端XP系统设置时间服务器地址为2003服务器。
三 客户端设置
双击托盘区显示时间的地方,出现对话框之后选择Internet时间设置时间服务器的地址。默认为timewindowscom,设置为2003服务器地址,然后单击“立即更新”按钮实现“时间同步”。
四 服务器端设置
1 单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。
2 找到并单击下面的注册表子项:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
3 在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。
4 在“编辑 DWORD 值”的“数值数据”框中键入 A,然后单击“确定”。
5 退出注册表编辑器。
6 在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:
net stop w32time && net start w32time
参见>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)