Linux怎么同步NTP网络时间_Linux下Chrony安装与时间服务器配置【教程】
技术百科
穿越時空
发布时间:2026-01-22
浏览: 次 Chrony是现代Linux推荐的NTP实现,需先安装(依发行版用dnf/yum/apt),再配置为客户端同步时间(修改/etc/chrony.conf添加server如ntp.aliyun.com iburst)、验证状态(chronyc sources/tracking),或配置为服务端(添加allow网段、开放UDP123端口),最后客户端指向服务端IP同步。
如果您在Linux系统中发现系统时间与标准时间存在偏差,可能导致日志记录错误、证书验证失败或分布式服务通信异常。Chrony是现代Linux发行版推荐的NTP客户端与服务器实现,具备更快的同步速度、更好的网络适应性及离线环境下的时间保持能力。以下是Chrony的安装与时间服务器配置步骤:
一、安装Chrony服务
Chrony未预装于部分基础系统镜像中,需通过包管理器显式安装。不同发行版使用对应命令完成安装,安装后服务默认不自动启用。
1、在RHEL/CentOS 8+或Fedora系统中执行:sudo dnf install chrony -y
2、在RHEL/CentOS 7或较旧版本中执行:sudo yum install chrony -y
3、在Debian或Ubuntu系统中执行:sudo apt update && sudo apt install chrony -y
二、配置Chrony作为NTP客户端同步时间
此模式下Chrony从上游NTP服务器获取时间并校准本地系统时钟。配置文件定义了时间源、同步策略及安全限制。
1、编辑主配置文件: 
2、注释掉默认pool行(如存在),添加国内可用NTP服务器,例如:server ntp.aliyun.com iburst
3、可选:添加多台服务器提高冗余,每行一个,均以server开头并带iburst参数
4、保存退出后重启服务:sudo systemctl restart chronyd
5、启用开机自启:sudo systemctl enable chronyd
三、验证客户端同步状态
Chrony提供专用命令行工具chronyc,用于实时查询同步状态、延迟、偏移等关键指标,确保时间已成功对齐。
1、检查服务运行状态:sudo systemctl status chronyd
2、查看当前NTP源列表及状态:sudo chronyc sources -v
3、查看同步统计信息(包括系统时钟偏移、估计误差):sudo chronyc tracking
4、强制立即触发一次时间更新:sudo chronyc makestep
四、配置Chrony为本地NTP时间服务器
当内网中有多台设备需统一时间基准时,可将一台Chrony主机设为服务端,向局域网其他客户端广播时间。该模式需开放UDP 123端口并配置允许的子网访问。
1、编辑配置文件:sudo nano /etc/chrony.conf
2、添加允许客户端访问的网段,例如允许192.168.1.0/24内所有主机:allow 192.168.1.0/24
3、确认配置中包含bindcmdaddress 127.0.0.1和bindaddress 0.0.0.0(或指定监听IP)
4、开放防火墙UDP 123端口:sudo firewall-cmd --add-service=ntp --permanent && sudo firewall-cmd --reload
5、重启服务使配置生效:sudo systemctl restart chronyd
五、客户端连接自建Chrony时间服务器
局域网内其他Linux主机可通过指向本机IP的方式,将其作为唯一NTP源进行同步,避免对外部网络依赖,提升内网时间一致性。
1、在客户端的/etc/chrony.conf中,删除原有server行,添加:server 192.168.1.100 iburst(替换为服务端实际IP)
2、重启客户端Chrony服务:sudo systemctl restart chronyd
3、检查是否已从该服务器同步:sudo chronyc sources -v | grep ^* (星号标记当前选定源)
4、确认跟踪状态中Reference ID显示为服务端IP:sudo chronyc tracking
# 重启
# 离线
# 子网
# 中有
# 客户端
# 配置文件
# 工具
# linux
# centos
# 防火墙
# 端口
# ubuntu
# linux系统
# udp
# debian
# 发行版
# dnf
# 内网
# 服务端
# 分布式
# 多台
相关栏目:
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
AI推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
SEO优化<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
技术百科<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
谷歌推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
百度推广<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
网络营销<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
案例网站<?muma echo $count; ?>
】
<?muma
$count = M('archives')->where(['typeid'=>$field['id']])->count();
?>
【
精选文章<?muma echo $count; ?>
】
相关推荐
- Avalonia如何实现跨窗口通信 Avaloni
- Win10怎样清理C盘爱奇艺缓存_Win10清理爱
- c# await 一个已经完成的Task会发生什么
- Win10如何备份驱动程序_Win10驱动备份步骤
- 微信JSAPI支付回调PHP怎么接收_处理JSAP
- 如何使用Golang开发简单的聊天室消息存储_Go
- 如何在Golang中解压文件_Golang com
- 如何在JavaScript中动态拼接PHP的bas
- 当网站SEO排名下降时,如何应对?
- Windows10电脑怎么设置虚拟光驱_Win10
- Windows系统被恶意软件破坏后的恢复策略_错误
- 如何使用Golang管理跨项目依赖_Golang多
- windows如何修改文件默认打开方式_windo
- Windows蓝屏错误0x0000002C怎么解决
- Win11怎么关闭内容自适应亮度_Windows1
- Win11声音太小怎么办_Windows 11开启
- Win11怎么查看电脑配置_Win11硬件配置详细
- Go语言中正确反序列化多个同级XML元素为结构体切
- 如何在 ACF 中正确更新嵌套多层的 Group
- PythonGIL机制理解_多线程限制解析【教程】
- Windows10电脑怎么连接蓝牙设备_Win10
- MySQL 中使用 IF 和 CASE 实现查询字
- php订单日志怎么按状态筛选_php筛选不同状态订
- mac怎么安装pip_MAC Python pip
- Win11怎么更改系统语言_Win11中文语言包下
- Windows如何设置登录时的欢迎屏幕背景?(锁屏
- 如何在 Go 同包不同文件中正确引用结构体
- 如何有效拦截拼接式恶意域名的垃圾信息
- 如何使用Golang安装API文档生成工具_快速生
- Windows 11怎么更改锁屏超时时间_Wind
- Win11如何设置开机自动联网 Win11宽带连接
- Win11如何关闭小娜Cortana Win11禁
- Python迭代器生成器进阶教程_节省内存与懒加载
- 如何在 Django 中安全修改用户密码而不使会话
- VSC怎样用终端运行PHP_命令行执行脚本的步骤【
- Win11怎么设置默认PDF阅读器 Win11修改
- Windows如何拦截腾讯视频广告_Windows
- c++怎么实现大文件的分块读写_c++ 文件指针s
- 如何使用Golang反射创建map对象_动态生成键
- c++如何获取map中所有的键_C++遍历键值对提
- Win10怎么创建桌面快捷方式 Win10为应用创
- C#怎么使用委托和事件 C# delegate与e
- Win10路由器怎么隐藏ssid Win10隐藏w
- c++23 std::expected怎么用 c+
- 作用域操作符会影响性能吗_php静态调用性能分析【
- Win11怎么清理C盘系统错误报告_Win11清理
- php485在php5.6下能用吗_php485旧
- 如何解决同一段404代码在不同主机上表现不一致的问
- Laravel 查询 JSON 列:高效筛选包含数
- Win10系统怎么查看端口状态_Windows10

QQ客服