ntpd (linux时间同步)

时间:2014-04-29 23:36:24   收藏:0   阅读:1440

开发板使用ntpdate 进行网络时间同步 用法 ntpdate  ip    出现如下错误 ntpdate -u ip

Error resolving ai_socktype: Servname not supported for ai_socktype (-8)
1 Jan 01:44:12 ntpdate[742]: Can‘t find host ai_socktype: Servname not supported for ai_socktype (-8)
1 Jan 01:44:12 ntpdate[742]: no servers can be used, exiting

在/etc/services加入两行

ntp             123/tcp

ntp             123/udp                         # Network Time Protocol 

  1. #ntpdate -u 210.72.145.44 

就可以进行时间同步,但突然发现服务器上的时间竟然不准确了,执行ntpdate -u 210.72.145.44命令提示如下信息:

  1. [root@localhost ~]# ntpdate 210.72.145.44 


 7 Jul 10:10:37 ntpdate[26186]: no server suitable for synchronization found

210.72.145.44是中国国家授时中心的官方服务器,不应该出问题的。

停到iptables还是不能进行同步。

man ntpdate看到如下的参数说明:
       -u      Direct  ntpdate  to  use  an  unprivileged port for outgoing packets. This is most useful when behind a firewall that blocks incoming traffic to privileged ports, and  you  want  to  synchronize  with  hosts beyond the firewall. Note that the -d option always uses unprivileged ports.

执行

  1. [root@localhost ~]# ntpdate -u 210.72.145.44 


 7 Jul 10:14:33 ntpdate[26462]: adjust time server 210.72.145.44 offset -0.001948 sec

时间同步成功。

不确定路由器上是否关闭了udp123端口就加上-u参数吧。

 

附加一下网络上查询到的其他的时钟服务器

(美国
time.nist.gov 
(
复旦)(国内用户推荐) 
ntp.fudan.edu.cn 
微软公司授时主机(美国
time.windows.com 
台警大授时中心(台湾
asia.pool.ntp.org 
网通授时中心(北京
219.158.14.130 
time.twc.weather.com 
swisstime.ethz.ch 
ntp0.fau.de 
ntp3.fau.de 
time-a.nist.gov 
time-b.nist.gov 
time-nw.nist.gov 
nist1-sj.glassey.com 
NTP
服务器(上海
ntp.api.bz

修改linux的时间可以使用date指令
  date命令的功能是显示和设置系统日期和时间。
  输入date 查看目前系统时间。
  修改时间需要 date -功能字符 修改内容
  命令中各选项的含义分别为:
  -d datestr, --date datestr 显示由datestr描述的日期
  -s datestr, --set datestr 设置datestr 描述的日期
  -u, --universal 显示或设置通用时间
  时间域
  %H 小时(00..23)
  %I 小时(01..12)
  %k 小时(0..23)
  %l 小时(1..12)
  %M 分(00..59)
  %p 显示出AM或PM
  %r 时间(hh:mm:ss AM或PM),12小时
  %s 从1970年1月1日00:00:00到目前经历的秒数
  %S 秒(00..59)
  %T 时间(24小时制)(hh:mm:ss)
  %X 显示时间的格式(%H:%M:%S)
  %Z 时区 日期域
  %a 星期几的简称( Sun..Sat)
  %A 星期几的全称( Sunday..Saturday)
  %b 月的简称(Jan..Dec)
  %B 月的全称(January..December)
  %c 日期和时间( Mon Nov 8 14:12:46 CST 1999)
  %d 一个月的第几天(01..31)
  %D 日期(mm/dd/yy)
  %h 和%b选项相同
  %j 一年的第几天(001..366)
  %m 月(01..12)
  %w 一个星期的第几天(0代表星期天)
  %W 一年的第几个星期(00..53,星期一为第一天)
  %x 显示日期的格式(mm/dd/yy)
  %y 年的最后两个数字( 1999则是99)
  %Y 年(例如:1970,1996等)
  需要特别说明的是,只有超级用户才能用date命令设置时间,一般用户只能用date命令显示时间。
  例1:用指定的格式显示时间。
  $ date ‘+This date now is =>%x ,time is now =>%X ,thank you !‘
  This date now is =>11/12/99 ,time is now =>17:53:01,thank you !
  例2:用预定的格式显示当前的时间。
  # date
  Fri Nov 26 15:20:18 CST 1999
  例3:设置时间为下午14点36分。
  # date -s 14:36:00
  Fri Nov 26 14:15:00 CST 1999
  例4:设置时间为1999年11月28号。
  # date -s 991128
  Sun Nov 28 00:00:00 CST 1999
  实例:设置时间伟2008年8月8号12:00
  # date -s "2008-08-08 12:00:00"
  修改完后,记得输入:clock -w
  把系统时间写入CMOS

ntpd (linux时间同步),码迷,mamicode.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!