Linux ntpdate命令介绍(校时客户端)(ntp客户端)ubuntu离线安装ntpdate(未封装、高端口号)(知名端口、注册端口、动态端口/私有端口)


风晓
风晓 2024-01-10 19:19:58 51824 赞同 0 反对 0
分类: 资源 标签: Windows
Linux ntpdate命令介绍(校时客户端)(ntp客户端)ubuntu离线安装ntpdate(未封装、高端口号)(知名端口、注册端口、动态端口/私有端口)

NTPdate命令
NTPdate简介
NTPdate是一种在Linux和类Unix系统中同步网络时间协议(NTP)服务器时间的命令行程序。它可以让你的系统时钟与互联网上的标准时间服务器保持一致,从而确保系统时间的准确性。

查询ntp服务器时间:

ntpdate -q pool.ntp.org
1


安装NTPdate
在开始使用NTPdate之前,我们需要先在系统中安装它。以下是在不同系统中安装NTPdate的命令:

在Ubuntu和Debian上:
sudo apt-get install ntpdate
1
在CentOS和RHEL上:
sudo yum install ntpdate
1
基本使用
要使用ntpdate同步ntp服务器时间,我们只需要运行ntpdate命令,后跟NTP服务器的地址。例如:

ntpdate time.windows.com
1
此命令将把你的系统时间设置为与time.windows.com服务器相同的时间。

参数详解
以下是NTPdate命令中一些重要参数的详细说明:

- -u: 使用未封装的NTP请求和响应包,而不是使用UDP端口123。
这个参数让ntpdate使用一个未封装的、高端口号的源来发送NTP请求。这通常用于防火墙或者路由器阻止了向公网的NTP服务器的123端口的访问。

"未封装"和"高端口号"是网络通信术语。

“未封装”:在计算机网络中,数据从发送端到接收端需要经过多层协议的处理。每一层都会对数据进行一定的包装或封装,以添加该层协议所需要的控制信息。如果一个请求被称为"未封装",那么意味着它没有添加额外的控制信息或者头部信息,只是简单地将应用程序生成的原始数据发送出去。

“高端口号”:在网络通信中,端口号是用来区分同一台计算机上不同应用或进程的一种方式。根据惯例,0到1023号端口被定义为“知名端口”(Well-Known Ports),这些端口主要与一些被广泛使用的协议关联(如HTTP的80端口,HTTPS的443端口)。1024到49151号端口被定义为“注册端口”(Registered Ports),这些端口主要被公司或组织使用。剩下的端口,即49152到65535号,被定义为“动态”或“私有”端口。当我们说"高端口号"时,通常指的是这个范围内的端口。

在ntpdate中,-u参数的作用就是让其使用高端口号发送NTP请求,而不是默认的123端口。这主要是因为某些环境中,网络防火墙可能会阻止对低端口号的访问,通过使用高端口号可以避免这种情况。

- -b: 当本地系统时间和网络时间有较大差距时,强制进行一次时间调整。
当本地系统时间与网络时间有很大的差距时,可以使用此选项强制进行一次时间调整,而不是逐步将时间改过来。这个参数使得ntpdate在第一次同步时无视偏移量,直接将时间设置为从NTP服务器获取的正确时间。

- -s: 日志输出到syslog。
该选项将日志信息输出到syslog中,而不是直接在终端中显示。syslog是Linux/Unix系统中的系统日志服务,负责接收和处理来自系统内核、系统服务和应用程序的日志信息。

- -d: 输出调试信息。
这个选项将会打开调试模式,它会输出详细的调试信息,以便于解决可能存在的问题。这些信息包括ntpdate发送和接收的每一个数据包的详细内容,以及其他一些关于同步过程的详细信息。

- -q: 查询ntp服务器时间。
这个参数让ntpdate只查询指定的NTP服务器,但并不设置本机时间。这对于仅想查看时间偏移量,但又不想立即调整系统时间的情况很有用。


常见错误与解决方法
有时,当我们试图同步时间时,可能会遇到一些问题。以下是一些常见的错误以及如何解决它们的方法:

Error: “ntpdate[12345]: no servers can be used, exiting”

这个错误通常意味着我们无法连接到指定的NTP服务器。检查服务器地址是否正确,或者尝试更换其他NTP服务器。

Error: “ntpdate[12345]: the NTP socket is in use, exiting”

这个错误表明已经有其他程序正在使用NTP服务。这种情况下,我们可以使用-u选项来解决该问题。

实战应用
NTPdate的一个实际应用场景是定期通过cron job进行时间同步。以下是一个例子:

0 * * * * /usr/sbin/ntpdate pool.ntp.org >> /var/log/ntpdate.log 2>&1
1
以上命令将每小时同步一次时间,并将日志记录到/var/log/ntpdate.log文件。

参考资源
NTPdate官方文档
Ubuntu NTPdate使用手册
如何离线安装ntpdate(apt-get download ntpdate)
在 Ubuntu 20.04 中离线安装 ntpdate 的步骤如下:

下载 ntpdate 包:首先,你需要从另一台可以访问互联网的机器上下载 ntpdate 安装包。你可以去 Ubuntu 的官方软件包库下载,地址为:https://packages.ubuntu.com/。在搜索框中输入 ntpdate,选择适合你的 Ubuntu 版本(在这种情况下是 20.04,也就是 Focal),然后点击 amd64 或 i386 (取决于你的系统架构)来下载 .deb 文件。


我们盒子是arm64架构的,就下载这个:


我勒个去,怎么没有链接啊,amd64版本的都有链接的:

 

解释:

从你提供的 URL 来看,你正在尝试在一个基于 ARM64 架构的 Ubuntu 20.04 系统上安装 ntpdate。
然而,Ubuntu 的软件包页面可能没有显示下载链接,这是因为一些软件包只能从特定的软件源获取。在这种情况下,你需要找到能够提供 ARM64 架构版本的 ntpdate 的合适源。
以下是一个可行的解决方案:
1.在另一台可以联网的 Ubuntu 机器上,打开终端。
2.添加 Universe 软件源(如果尚未添加的话)。大部分 Ubuntu 安装默认都会包含 Universe 源,但以防万一,你可以运行下面的命令来添加:
sudo add-apt-repository universe
sudo apt-get update
3.下载 ntpdate 包及其依赖。你可以使用 apt-get download 命令来下载软件包和依赖,如下所示:
apt-get download ntpdate

请注意,这种方法需要你有另一台可以访问互联网并且运行着相同架构(ARM64)和操作系统版本的 Ubuntu 的机器。

将文件复制到目标机器:然后,你需要将下载的 .deb 文件复制到你想要安装 ntpdate 的机器上。你可以使用 USB 设备或者其他方式进行传输。


在目标机器上安装 ntpdate:最后,在你的 Ubuntu 20.04 机器上,打开终端并导航到包含 .deb 文件的目录。然后使用以下命令来安装 ntpdate:

sudo dpkg -i <file-name.deb>
1
在这里,<file-name.deb> 是你下载的 ntpdate 安装包的文件名。


如果在安装过程中遇到任何依赖问题,你可能还需要下载和安装那些依赖包。你可以在相同的 Ubuntu 软件包页面找到这些依赖包,并重复上述步骤进行安装。

完成上述步骤后,你应该就能在 Ubuntu 20.04 机器上离线安装 ntpdate 了。

20231018 注意:在ubuntu20.04上,我只是用这个命令来临时查看ntp服务器用,具体同步我用的systemd-timesyncd服务

如果您发现该资源为电子书等存在侵权的资源或对该资源描述不正确等,可点击“私信”按钮向作者进行反馈;如作者无回复可进行平台仲裁,我们会在第一时间进行处理!

评价 0 条
风晓L1
粉丝 1 资源 2038 + 关注 私信
最近热门资源
银河麒麟桌面操作系统备份用户数据  130
统信桌面专业版【全盘安装UOS系统】介绍  129
银河麒麟桌面操作系统安装佳能打印机驱动方法  120
银河麒麟桌面操作系统 V10-SP1用户密码修改  108
麒麟系统连接打印机常见问题及解决方法  30
最近下载排行榜
银河麒麟桌面操作系统备份用户数据 0
统信桌面专业版【全盘安装UOS系统】介绍 0
银河麒麟桌面操作系统安装佳能打印机驱动方法 0
银河麒麟桌面操作系统 V10-SP1用户密码修改 0
麒麟系统连接打印机常见问题及解决方法 0
作者收入月榜
1

prtyaa 收益393.62元

2

zlj141319 收益218元

3

1843880570 收益214.2元

4

IT-feng 收益210.13元

5

风晓 收益208.24元

6

777 收益172.71元

7

Fhawking 收益106.6元

8

信创来了 收益105.84元

9

克里斯蒂亚诺诺 收益91.08元

10

技术-小陈 收益79.5元

请使用微信扫码

加入交流群

请使用微信扫一扫!