ntpdate脚本

service ntpd stop
ntpdate -b 172.16.55.254
service ntpd start

其实一直对系统时间的设置模模糊糊的,今天我们大家就来讨论一下这个ntpdate的问题吧!

 

名称

ntpdate - 通过NTP 设置日期和时间

概要

ntpdate [ -Bbdpqsuv ] [ -a key# ] [ -e authdelay ] [ -k keyfile ]

[ -o version ] [ -p samples ] [ -t timeout ] server[ ... ]

说明

ntpdate 通过轮询指定为服务器参数的网络时间协议(NTP) 服务器来设置本地日期和时间,从而确定正确的时

间。它必须以根用户身份在本地主机上运行。从每个指定的服务器中可获取大量的示例,并且还应用了NTP 时钟

过滤器和选择算法的子集,以选择最佳的算法。请注意, ntpdate 的准确性和可靠性取决于服务器的数量、每次

运行它时的轮询数以及运行之间的时间间隔。

ntpdate 根据需要可以手动运行来设置主机时钟,也可以从主机启动脚本中运行,在引导时设置时钟。某些情况

下,它可用于在启动NTP 守护程序xntpd 之前对时钟进行初始设置。

也可以从cron 脚本中运行ntpdate 。但是务必要注意,包含人为产生的cron 脚本的ntpdate 不能替代NTP 守护

程序,后者使用高级算法,在尽量减少使用资源的同时,尽量提高准确性和可靠性。最后,由于ntpdate 不会像

xntpd 一样控制主机时钟频率,因此使用ntpdate 的准确性很有限。

时间调整可以由ntpdate 通过以下两种方式之一来进行。如果ntpdate 确定时钟误差超过0.5 秒,它将通过调用

clock_settime (请参阅clocks(2) )系统例行程序来步进时间。如果误差小于0.5 秒,它将通过调用adjtime (请

参阅adjtime(2) )系统例行程序来微调时间。后面一种技术具有较低损坏性,在误差较小时更为准确,并且在

ntpdate 由cron (请参阅cron(1M) )每一小时或两小时运行一次时运转非常良好。

如果NTP 服务器守护程序(如xntpd )在同一台主机上运行, ntpdate 将拒绝设置日期。作为运行守护程序的备

用方法定期从cron 运行ntpdate 时,如果每一个小时或两个小时执行一次,将产生足够精确的计时,以避免步进

时钟。

命令行选项

ntpdate 支持下列选项:

-a 启用身份验证功能并指定要用于身份验证的密钥标识符。密钥和密钥标识符必须在客户端密钥文

件和服务器密钥文件中都匹配。缺省设置是禁用身份验证功能。

-B 强制始终使用adjtime 系统调用来微调时间(即使测量到的偏移量大于+-128 毫秒)。缺省设置

是在偏移量大于+-128 毫秒时使用clock_settime 系统调用步进时间。请注意,如果偏移量比

+-128 毫秒大得多,则可能需要较长的时间(数小时)来将时钟微调到正确的值。在此期间,不

应使用主机来同步化客户端。

-b 强制使用clock_settime 系统调用来步进时间,而不是使用adjtime 系统调用来微调时间(缺省

值)。如果在引导时从启动文件中调用,则应使用该选项。

-d 启用调试模式,在该模式下ntpdate 将经历所有步骤,而不仅仅是调整本地时钟。另外还将输出

可用于一般性调试的信息。

-e authdelay 将执行身份验证功能的处理延迟指定为值authdelay (以秒及其分数为单位;有关详细信息,请

参阅xntpd(1M) )。虽然指定一个值可以在速度很慢的CPU 上提高走时精度,但是该数通常都

非常小,以至在大多数情况下都可以将其忽略。

-k keyfile 将身份验证密钥文件的路径指定为字符串keyfile 。缺省值为/etc/ntp.keys 。该文件应该采用

xntpd 中所述的格式。

-o version 将外发数据包的NTP 版本指定为整数版本(可以是1 或2)。缺省值是3。它允许将ntpdate

与早期NTP 版本一起使用。

-p samples 将要从每个服务器中获取的示例数指定为整数示例,其值的范围是1 到8(包括这两个数)。缺

省值为4。

-q 输出偏移量测量结果、服务器层次以及延迟测量结果,但不调整本地时钟。它类似于-d 选项,

后者提供更为详细的调试信息。

-s 将日志记录输出从标准输出(缺省)转移到系统syslog (请参阅syslog(3C) )工具。它主要是

为便于使用cron 脚本而设计。

-t timeout 将等待服务器响应的最长时间指定为超时值,以秒及其分数为单位。该值将四舍五入成0.2 秒的

倍数。缺省值是1 秒,该值适用于轮询局域网。

-u 指示ntpdate 将无特权的端口用于外发的数据包。在防火墙后,如果阻塞向特权端口的传入流

量,并且您希望与防火墙后的主机进行同步,则该选项极为有用。请注意, -d 选项始终使用无

特权的端口。

-v 输出NTP 版本号和偏移量测量信息。

作者

ntpdate 由多伦多大学的Dennis Ferguson 开发

文件

/etc/ntp.keys 包含ntpdate 使用的加密密钥。
 

局域网:

5   *   *    *   *   ntpdate 210.72.145.44  (ntp server)

*/30 * * * * /usr/sbin/ntpdate 192.168.0.2

 

<think>好的,用户现在想了解ntpdate和ntp的区别及使用方法。我需要结合之前的引用内容来组织回答。 首先,根据引用1,ntp和ntpdate是两个不同的软件包,尽管它们都与时间同步有关。CentOS系统默认自带这两个包,但7版本之后可能没有ntp。ntpd是守护进程,配置文件在/etc/ntp.conf,而ntpdate用于客户端的时间矫正。 用户的问题集中在区别、关系和使用方法上。需要明确两者的主要功能差异:ntpdate是一次性同步,而ntpd是持续调整,并且可以作为服务器。引用3提到ntpd适合高精度和长期稳定,而ntpdate适合快速修正。 接下来,使用方法部分,引用2给出了ntpdate的基本命令格式,比如ntpdate [NTP服务器]。需要举例说明,例如同步到具体IP或公共服务器如time.ntp.org。同时要提到权限问题,可能需要sudo。 对于ntp的使用,需要说明安装、配置ntp.conf、启动服务等步骤。比如修改server行,添加服务器地址,然后启动ntpd服务。引用4中的timedatectl命令可能相关,可以建议用户使用它来查看状态或启用NTP。 区别部分需要分点,比如工作模式、适用场景、配置方式。引用中提到ntpdate可能造成时间跳变,影响应用,而ntpd是渐进调整。还要注意两者同时使用的问题,避免冲突。 关系方面,可以说明ntpdate可以作为ntpd的补充,在服务未运行时手动同步。但长期运行应该用ntpd。 最后生成相关问题,考虑用户可能想知道如何配置服务器、如何选择工具、以及替代方案如chrony的区别。引用4提到chrony,可以作为相关问题之一。 需要确保回答结构清晰,步骤明确,并正确引用来源。避免技术错误,比如配置路径是否正确,命令是否有误。同时使用中文,LaTeX格式正确,行内公式用$包裹,独立公式用$$。不过当前问题不涉及数学公式,可能不需要使用,但需注意用户提到的格式要求。</think>### ntpdate与ntp的区别和关系 #### 一、核心区别 1. **工作模式** - **ntpdate**:一次性时间同步工具,通过$ntpdate\ [NTP服务器]$命令直接强制对齐时间,适用于临时调整或脚本调用[^2][^3] - **ntpd**:持续运行的守护进程,渐进式调整时间(通过$drift\ file$记录时钟漂移),避免时间跳变,适合长期稳定同步[^1][^3] 2. **适用场景** - **ntpdate**:客户端快速矫正时间(如系统启动时),但频繁使用可能导致NTP服务器被封禁[^2] - **ntpd**:既可作为客户端持续同步时间,也可作为服务器为其他设备提供时间服务[^3] 3. **配置方式** - **ntpdate**:无需配置文件,直接通过命令行指定NTP服务器 - **ntpd**:依赖配置文件$ /etc/ntp.conf$,可定义层级关系、访问控制等[^1] #### 二、使用方法 1. **ntpdate基础命令** ```bash # 同步到指定服务器(需root权限) sudo ntpdate time.ntp.org # 查看详细同步过程 sudo ntpdate -d 192.168.1.100 ``` 2. **ntpd服务配置** - 安装与配置: ```bash # CentOS安装 yum install ntp # 编辑配置文件 vim /etc/ntp.conf ``` - 配置示例: ```conf server 0.cn.pool.ntp.org iburst server 1.asia.pool.ntp.org iburst restrict 192.168.1.0 mask 255.255.255.0 # 允许内网同步 ``` - 启动服务: ```bash systemctl start ntpd systemctl enable ntpd ``` #### 三、关键注意事项 - **冲突避免**:ntpd运行时使用ntpdate会导致服务异常,需先停止ntpd: ```bash systemctl stop ntpd && ntpdate [server] ``` - **时间跳变风险**:ntpdate直接修改系统时钟,可能影响数据库事务、日志序列等[^2] - **替代方案**:现代系统推荐使用$chrony$(支持间歇性网络环境,收敛更快)[^4] #### 四、关系总结 - **互补性**:ntpdate可用于初始化时间,ntpd用于长期维护 - **协议基础**:两者均基于NTP协议,但实现方式不同 - **服务依赖**:ntpd可搭建完整的NTP服务体系,而ntpdate仅为客户端工具 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值