Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。

一.ntp服务器搭建

1.安装软件

yum install ntp     #服务器程序

yum install ntpdate  #自动更新时间服务

2.启动服务

chkconfig --level 35 ntpd on

chkconfig --level 35 ntpdate on

service ntpd start      #ntpd服务不能和ntpdate服务同时启动

service ntpdate start    # ntpd服务不能和ntpdate服务同时启动

ntpdntpdate在更新时间时是有的区别。ntpd不仅仅是时间同步服务器,他还可以做客户端与标准时间服务器进行同步时间,而且是平滑同步,并非ntpdate立即同步,在生产环境中慎用ntpdate,也正如此两者不可同时运行。

3.修改配置文件

(1)cat/etc/ ntp.conf |grep -v "#"

删除以前的内容,直接添加以下内容即可

driftfile /var/lib/ntp/drift

restrict default nomodify notrap noquery

restrict 127.0.0.1

restrict -6 ::1

restrict 192.168.100.0 mask 255.255.255.0 nomodifynotrap

server ntp.sjtu.edu.cn     prefer

server 1.centos.pool.ntp.org

server 2.centos.pool.ntp.org

server 0.centos.pool.ntp.org

server  127.127.1.0

fudge   127.127.1.0stratum 10

includefile /etc/ntp/crypto/pw

keys /etc/ntp/keys

logfile /var/log/ntp/ntp.log

time correct to within 10ms

polling server every 30s

(2)在/etc/sysconfig/ntpd中添加如下信息,同步硬件时钟

SYNC_HWCLOCK=yes

NTPDATE_OPTIONS=""

(3) /usr /share/zoneinfo/     #在这个目录下的文件规定了各主要时区的时间设定文件

(4)  /etc/sysconfig/clock    #每次开机后,Linux 会自动的读取这个文件来设定自己系统所默认要显示的时间。

ZONE="Asia/Chongqing"

(5)  /etc /localtime    #这个文件就是“本地端的时间配置文件”。上面那个clock 文件里面规定了使用的时间设置文件(ZONE) 为/usr/share/zoneinfo/Asia/Chongqing ,所以说这就是本地端的时间了,此时, Linux系统就会将那个文件另存为一份 /etc/localtime文件。

4.查看服务启动状态

netstat -ln|grep 123      #ntpd的端口

udp       0      0 192.168.3.1:123             0.0.0.0:*

udp       0      0 192.168.110.9:123           0.0.0.0:*

udp       0      0 127.0.0.1:123               0.0.0.0:*

udp       0      0 0.0.0.0:123                 0.0.0.0:*

udp       0      0fe80::21f:29ff:fe02:11a1:123 :::*

udp       0      0 ::1:123                     :::*

udp       0      0 :::123                      :::*

5.查看时间同步情况

指令“ntpq -p”可以列出目前我们的NTP与相关的上层NTP的状态,以上的几个字段的意义如下:

remote:即NTP主机的IP或主机名称。注意最左边的符号,如果由“+”则代表目前正在作用钟的上层NTP,如果是“*”则表示也有连上线,不过是作为次要联机的NTP主机。

refid:参考的上一层NTP主机的地址

st:即stratum阶层

when:几秒前曾做过时间同步更新的操作

poll:下次更新在几秒之后

reach:已经向上层NTP服务器要求更新的次数

delay:网络传输过程钟延迟的时间

offset:时间补偿的结果

jitter:Linux系统时间与BIOS硬件时间的差异时间

也可以执行watch ntpq –p 查看同步情况

6.ntpstat查看服务器上一次与上级服务器同步时间的情况

如果出现:

unsynchronised

time serverre-starting

pollingserver every 64 s

说明时间服务器还没有与上一级ntp服务器通信成功,需要等待3---5分钟左右。

成功更新之后会显示如下信息:

synchronised to NTP server (202.120.2.101) at stratum4

time correctto within 51 ms

pollingserver every 64 s

二、ntp客户端设置

客户端的设置其实和服务器的设置是一样的,因为客户端还可以为下级计算机提供自动更新时间服务。所以可以在客户端进行同样的配置,只不过在配置ntp.conf文件的时候把上一级ntp服务器指向我们刚才配置好的ntp 服务器。

在客户端也可以不用启动ntpd服务,这时就可以ntpdate更新时间了。

执行 ntpdate ntpserverIP  #即可更新时间,前提是关掉ntpd服务,否则会报19 Jun 17:23:14 ntpdate[2280]: the NTP socket is inuse, exiting 错误,意思是端口被占用。

在停掉ntpd服务之后,修改系统的配置文件让定期自动执行ntpdate以便自动同步时间。

vim /etc/crontab   #打开并添加如下信息,crontab是一个定期执行任务的程序。

10 7 *  *  * root /usr/sbin/ntpdate 202.120.2.101;/usr/sbin/hwclock-w   #每天早上的7点10 自动与202.120.2.101 时间服务器自动同步时间,并写入硬件中。

service crond restart    #crond是crontab的守护进程

ntptrace –n 127.0.0.1 如果没有这个命令,需要安装ntp-perl包

[root@centos*09:04~]#ntptime

ntp_gettime()returns code 0 (OK)

time d56e257a.561dd9e8  Fri, Jun 21 2013  9:06:02.336, (.336393292),

maximum error 311781 us, estimated error 4437us, TAI offset 0

ntp_adjtime()returns code 0 (OK)

modes 0x0 (),

offset 256.021 us, frequency 25.908 ppm,interval 1 s,

maximum error 311781 us, estimated error 4437us,

status 0x2001 (PLL,NANO),

time constant 7, precision 0.001 us,tolerance 500 ppm,

Linux NTP服务器的搭建及client自动更新时间的更多相关文章

  1. MySQL load数据的时候自动更新时间

    MySQL load数据的时候自动更新时间 前提 CREATE TABLE table_name ( dt varchar(255) NULL , ctime timestamp NULL ON UP ...

  2. 神奇的bug,退出时自动更新时间

    遇到一个神奇的bug,用户退出时,上次登录时间会变成退出时的时间. 于是开始跟踪,发现Laravel在退出时,会做一次脏检查,这时会更新rember_token,这时就会有update操作如下. 而粗 ...

  3. Ntp服务器的搭建

    在搭建Ntp服务器的过程中,试过两种方案,具体如下: 方案一: 到ntp官网获取源码编译,失败   下载源码ntp-4.2.8 -> ./configure -> make 无法通过:   ...

  4. linux ntp 服务器和用户端

    ntp 服务器 1.输入 rpm -qa|grep ntp 查看是否安装了ntp服务器 2.如果没安装 yum -y install ntp 安装 3.修改 /etc/ntp.conf 将原serve ...

  5. SVN----------项目服务器上的svn客户端自动更新设置。

    1.局域网服务器上搭建了PHP项目运行的环境,然后怎么样讲根目录拉去到的项目可以随着开发人员提交的代码,自动更新成最新的代码. 2.首先将svn版本库上的代码拉取到www目录下或者你的根目录. 3.然 ...

  6. Linux下配置自动更新时间

    1,修正本地时区及ntp服务 [root@VM_0_13_centos ~]# yum -y install ntp [root@VM_0_13_centos ~]# rm -rf /etc/loca ...

  7. Yii2 自动更新时间created_at updated_at

    创建model之后,新建一条记录,结果设计的表中created_at 字段 updated_at 字段 都是datetime 类型的,却不能自动插入当前时间.查看了资料,解决如下: 1.在class ...

  8. Linux samba服务器的搭建

    目录 1. 安装samba 2. 配置smb.conf 3. 创建samba登陆用户 4. 创建samba共享文件夹 5. 重启samba服务 6. 访问samba共享文件夹 7. 参考资料 1. 安 ...

  9. Linux SVN服务器的搭建配置及分支的创建与合并

    第一步:通过yum命令安装svnserve,命令如下: >yum -y install subversion 若需查看svn安装位置,可以用以下命令: >rpm -ql subversio ...

随机推荐

  1. ImportError: Could not import PIL.Image.

    pip install pillow

  2. 最近用到的postgresql 的一些操作

    通过Linux命令行连接:在本机上连接操作 第一步:su - postgres进入到这个:-bash-4.2$ 第二步:psql进入到数据库 切换数据库: 命令:\c dbname 进入到数据库中 查 ...

  3. 01Spring基于xml的IOC配置--入门

    01Spring基于xml的IOC配置 1.创建一个普通的maven工程 1.1 选择maven,不用骨架,点击下一步. 1.2 填写GroupId.ArtifactId.Version.填完点击下一 ...

  4. 手把手带你了解sass

    sass的使用 减少重复的工作 1.变量的声明: 是以$开头给变量命名; $height-color: #F30 2.变量的使用范围: 变量可以在多个地方存在,不一定限制在代码块中.但是如果定义在了代 ...

  5. 自己对GIS的思考

    这只是我自己的理解,谈不上对整个行业的理解,只能从自己的角度谈谈GIS,谈谈爱和恨. 现在在武汉的一所所谓的全国GIS数一数二的学校里面读硕士,从高中开始我就很喜欢地理学科,大学选择了地球信息科技这个 ...

  6. 独家!三代Ryzen国行价格来了:12核3999

    5月27日,AMD在2019台北电脑展COMPUTEX展前新闻发布会上举行主题演讲,AMD CEO苏姿丰登台,正式发布了第三代Ryzen锐龙处理器,新品共有3款,分别是Ryzen 7 3700X.Ry ...

  7. vim 添加显示和行号

    方法一: 1.显示当前行行号,在VI的命令模式下输入 :nu 2.显示所有行号,在VI的命令模式下输入 :set nu :set nonu 关闭 方法二: 使用vi编辑~/.vimrc文件,在该文件中 ...

  8. AIX中物理卷管理

    1.物理卷管理   1.1物理卷区域的分布 按照磁头在硬盘上的读写速率不同可以把硬盘划分成几个不同级别的区域.因此逻辑卷对应的PP在哪一个级别的区域上,对逻辑卷的读写速率影响很大. 硬盘的截面分为5个 ...

  9. adb shell命令模拟按键/输入input使用keycode 列表详解

    在adb shell里有一个非常使用的命令,模拟按键输入,这里首先不要理解为是键盘的模拟按键,下面命令的使用和键值做一个详解. input命令格式 adb shell input keyevent & ...

  10. Linux20期学习笔记 Day4

    环境变量.常用系统变量:vim编辑器使用方法及实验:shell脚本两个层次 内置参数及相关实验