linux 时间同步的2种方法

张映发表于2012-10-23

分类目录:服务器相关

标签:linux,ntp,同步,时间服务器

由于硬件的原因,机器或多或少的根标准时间对不上,一个月的误差几秒到几分钟不等。对于服务器来说时间不准,会有很多麻烦。例如,支付的时候,无法下单,游戏无法登录等。自己用的PC就无所谓了,手动改一下就行了。

一,用ntpdate从时间服务器更新时间

如果你的linux系统根本没有ntpdate这个命令

  1. yuminstallntp

安装完了之后,你不要做什么配置,也不需要,直接测试一下

  1. [root@localhost~]#ntpdatetime.nist.gov
  2. 22Oct21:11:43ntpdate[5014]:adjusttimeserver207.200.81.113offset-0.018788sec

如果出去上面的内容说明,同步成功了。然后在crontab(etc/crontab)里面加上以下内容。

  1. */10****ntpdatetime.nist.gov#域名或IP

每隔十分钟同步一次。推荐几个时间服务器。

time.nist.gov
time.nuri.net
0.asia.pool.ntp.org
1.asia.pool.ntp.org
2.asia.pool.ntp.org
3.asia.pool.ntp.org

二,用ntp搭建自己的时间服务器

上面我们是利用别人的时间服务器来同步时间,这些时间服务器都是比较权威的。当我们自己搭建时间服务器就不用crontab来定时去跑。

1,安装时间服务器ntp

  1. yuminstallntp

2,配置ntp

查看复制打印?
  1. [root@localhost~]#cat/etc/ntp.conf|awk'{if($0!~/^$/&&$0!~/^#/){print$0}}'
  2. restrictdefaultignore//默认不允许修改或者查询ntp,并且不接收特殊封包
  3. restrict127.0.0.1//给于本机所有权限
  4. restrict192.168.1.0mask255.255.255.0notrapnomodify//给于局域网机的机器有同步时间的权限
  5. servertime.nist.govprefer//设置时间服务器,加prefer表示优先
  6. server0.asia.pool.ntp.org
  7. server1.asia.pool.ntp.org
  8. server2.asia.pool.ntp.org
  9. server127.127.1.0#localclock
  10. fudge127.127.1.0stratum10
  11. driftfile/var/lib/ntp/drift
  12. keys/etc/ntp/keys

3,启动 ntp

  1. [root@localhost~]#/etc/init.d/ntpdstart

4,查看并测试

查看复制打印?
  1. [root@localhost~]#netstat-upnl|grepntpd//查看时程
  2. [root@localhost~]#ntpq-pn//查看同步的服务器IP
  3. remoterefidsttwhenpollreachdelayoffsetjitter
  4. ==============================================================================
  5. 50.77.217.185.INIT.16u-6400.0000.0000.000
  6. 202.90.158.4.INIT.16u-6400.0000.0000.000
  7. 202.71.100.89.INIT.16u-6400.0000.0000.000
  8. 202.134.1.10.INIT.16u-6400.0000.0000.000
  9. *127.127.1.0.LOCL.10l18643770.0000.0000.001
  10. [root@localhost~]#ntpstat//同步的结果
  11. synchronisedtolocalnetatstratum11
  12. timecorrecttowithin12ms
  13. pollingserverevery512s

remote:即NTP主机的IP或主机名称。注意最左边的符号,如果由“+”则代表目前正在作用钟的上层NTP,如果是“*”则表示也有连上线,不过是作为次要联机的NTP主机。
refid:参考的上一层NTP主机的地址
st:即stratum阶层
when:几秒前曾做过时间同步更新的操作
poll:下次更新在几秒之后
reach:已经向上层NTP服务器要求更新的次数
delay:网络传输过程钟延迟的时间
offset:时间补偿的结果
jitter:Linux系统时间与BIOS硬件时间的差异时间

推荐第一种方法,虽然搭建个时间服务器,还是比较简单的,但是我觉得没有这个必要。如果用别人的时间服务器,每隔10分钟同步一次,可以精确到毫秒。

更多相关文章

  1. linux系统时间和硬件时钟问题(date和hwclock)
  2. 定期清理服务器日志
  3. LINUX下搭建简单临时的WWW服务器
  4. Linux的时间函数(转载)
  5. 将JSON文件中的所有时间戳转换为bash(Ubuntu)中的unix时间戳
  6. Linux时区设置和时间同步-基于CentOS 6(最小安装)
  7. 铯:使用自己的OpenStreetMap服务器。:“未能获得图像块”错误
  8. 连接到Linux服务器时首先要运行的5个命令
  9. Linux服务器禁用ping

随机推荐

  1. Python NameError:全局名称“Form”没有
  2. Hive中使用Python实现Transform时遇到Bro
  3. python学习笔记(3)--爬虫基础教程1
  4. 在NumPy中更改数组边缘的值
  5. 学习用pyhon写hive udf
  6. 创建单独的函数而不是一个大的缓慢处理时
  7. python打印系统所有tcp,udp监听端口及服
  8. python学习(13)————jieba进阶生成词云
  9. 用于搜索和替换大字符串的最快Python方法
  10. 基于scrapy框架的关于58同城招聘网站信息