SUSE Linux Enterprise Server 11 (i586)
NTP(网络时间协议)机制是用于同步网络上的系统时间的协议。首先,计算机从作为可靠时间源的服务器获得时间。然后将此计算机用作网络中其他计算机的时间源。这样做有双重目的,既可维护绝对时间,又可保持网络中所有计算机系统时间的同步。
1.查看系统时钟(Linux 内核时钟)和设置系统时钟
boco@TJ-Unicom-Group-GnCol2:~> date
Mon Jun 27 14:06:29 CST 2011
#date -s 091713272003.30 设置系统时钟的操作
#date 月日时分年.秒 通用的设置格式
2.查看硬件时钟和设置硬件时钟
Linux将时钟分为系统时钟(System Clock)和硬件(Real Time Clock,简称RTC)时钟两种。系统时钟是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电(石英钟)的那个主板硬件时钟,这个时钟可以在BIOS的Standard BIOS Feture”项中进行设置。
TJ-Unicom-Group-GiCol2:~ # hwclock 另一种写法 hwclock --show 查看硬件时钟
Mon Jun 27 15:12:29 2011 -0.346217 seconds
hwclock --set --date="MM/DD/YYYY hh:mm:ss" 通用的设置格式
3.同步系统时钟和硬件时钟
Linux系统(笔者使用的是Red Hat 8.0,其它系统没有做过实验)默认重启后,硬件时钟和系统时钟同步。如果不大方便重新启动的话(服务器通常很少重启),使用clock或hwclock命令来同步系统时钟和硬件时钟。
# hwclock --hctosys 硬件时钟同步系统时钟(与硬件时钟为基准) ,--hctosys表示Hardware Clock to SYStem clock clock 命令在suse11 上用不了
# hwclock -w 或者 hwclock --systohc 系统时钟同步硬件时钟(与系统时钟为基准),--systohc表示 SYStem clock to Hardware Clock
#hwclock --help 查看所有参数和格式
4.安装NTP软件包
安装之前先检测是否这些软件包已安装,方法如下:
TJ-Unicom-Group-SysLogCol1:~ # rpm -qa | grep ntp
ntp-4.2.4p6-1.15
yast2-ntp-client-2.17.14-1.8
如果没有安装,需要进行安装
linux: ~#rpm -ivh ntp-4.2.4p6-1.15.i586.rpm
此安装包位于D:\工作软件\SUSE 11 32位 操作系统 镜像ISO\SUSE_SLES-11-0-1\suse\i586\ntp-4.2.4p6-1.15.i586.rpm
5.设置时钟同步– NTP 配置文件模式(配置文件模式是长久有效,命令模式临时有效) SUSE 11版
NTP 修改配置文件/etc/ntp.conf
server 10.3.64.61 设置时钟服务器(源),重启NTP服务即可,上级时间服务器的IP或者域名
# local clock (LCL)
fudge 127.127.1.0 stratum 10 fudge设置Stratum(层)
# LCL is unsynchronized
启动/停止/重启/状态ntp服务
# /sbin/service ntp start
# /sbin/service ntp stop
# /sbin/service ntp restart
# /sbin/service ntp status
remote refid st t when poll reach delay offset jitter
=============================================================================
*10.3.64.61 132.174.32.151 5 u 40 64 17 0.226 0.533 0.133 这是NTP启动状态running,指向时钟源10.3.64.61
Checking for network time protocol daemon (NTPD): running
TJ-Unicom-Group-LupsCol2:/etc # ntpq -p 监视NTP->只有启动NTP服务才能监视NTP,否则ntpq: read: Connection refused
remote refid st t when poll reach delay offset jitter
=============================================================================
LOCAL(0) .LOCL. 10 l 58 64 1 0.000 0.000 0.001 监视NTP,但没有指向时钟源
remote refid st t when poll reach delay offset jitter
=============================================================================
*10.3.64.61 132.174.32.151 3 u 31 64 377 0.714 207.690 147.835 监视NTP,已经指向时钟源10.3.64.61,目的NTP是否正常如果发现在remote这列之前会出现星号和+号,说明已经跟这个服务器同步成功了
TJ-Unicom-Group-Analyse1:~ # service ntp status 这是NTP没有启动的状态
Checking for network time protocol daemon (NTPD): unused
TJ-Unicom-Group-GnCol1:/etc # ntpdate 10.3.64.61 NTP命令模式,手工同步NTP,有警告WARNING信息,但可以同步(配置文件模式是长久有效,命令模式临时有效)
!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!
The ntpdate program is deprecated and should not be used any more. To
quote the upstream ntp developers:
"The functionality ntpdate offered is now provided by the ntpd daemon
itself. If you call ntpd with the command line option -q it will
retrieve the current time and set it accordingly."
Please check the Network Time Protocol (NTP) daemon man page and
for further information.
You can replace the ntpdate call with "rcntp ntptimeset" to achieve an
inital poll of the servers specified in /etc/ntp.conf.
The program /usr/sbin/sntp offers comparable functionality to ntpdate.
Specifically
sntp -P no -r pool.ntp.org
is equivalent to
ntpdate pool.ntp.org
For further details please refer to the man page of sntp.
TJ-Unicom-Group-GnCol1:/etc # date
Mon Jul 4 11:32:56 CST 2011
TJ-Unicom-Group-GnCol1:/etc # ntpq -p 监视NTP->只有启动NTP服务才能监视NTP,否则ntpq: read: Connection refused
ntpq: read: Connection refused 目的NTP是否正常