修改日期时间的工具

  • date

  • hwclock

  • timedatectl

date工具的使用
作用:显示和设置系统时间

选项:
-d <字符串> 显示字符串所指的日期与时间,比如:"-1 day" 表示当前日期的前一天,必须要加双引号 -s <字符串> 设置当前的时间和日期 #年月日使用(-)分隔,时分秒使用(:)分隔 #时间日期格式:
%T:time,显示时分秒,24小时制(hh:mm:ss) %F:full date,显示年月日,%Y-%m-%d #范例:
显示年月日时分秒: #date [+指定的格式]
date "+%F %T" #需要用双引号括起来 表示这是一个整体 使用date设置年月日:
date -s "20220710"或date -s "YYYY-MM-DD" #时间设置成2022年7月10日0时0分 只设置时间,不改年月日
date -s "hh:mm:ss" 设置全部时间
date -s "YYYY-YY-DD HH:mm:ss" Y: 年
m:月
d:日 H:时
M:分
S:秒
hwclock工具实现时间校对
-s, --hctosys #以硬件时钟为准,校正系统时钟

-w, --systohc #以系统时钟为准,校正硬件时钟

[root@Centos8 ~]# ll `which hwclock`
-rwxr-xr-x. 1 root root 66928 Jul 22 2020 /usr/sbin/hwclock [root@Centos8 ~]# ll `which clock`
lrwxrwxrwx. 1 root root 7 Jul 22 2020 /usr/sbin/clock -> hwclock #clock是hwclock的一个软链接,ubuntu上面只有hwclock
时区查看和设置
#查看时区列表:
timedatectl list-timezones #修改时区:
timedatectl set-timezone 时区 #存放时区信息:
/etc/timezone #修改日期时间:
timedatectl set-time "2017-01-23 10:30:00" #YYYY-mm-dd HH-MM-SS #开启NTP:
timedatectl set-ntp true/false #修改时区范例
法一:
timedatectl set-timezone Asia/Shanghai 法二:
root@ubuntu2004:~# rm -f /etc/localtime #更改时区最终收到影响的文件:/etc/localtime
root@ubuntu2004:~# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime [root@Centos8 ~]# ll /etc/localtime
lrwxrwxrwx. 1 root root 35 Jun 25 22:33 /etc/localtime -> ../usr/share/zoneinfo/Asia/Shanghai
日历查看
cal命令

时间同步服务:NTP(网络时间协议)

利用NTP(Network Time Protocol) 协议使网络中的各个计算机时间达到同步

多主机协同工作,时间不同步各种网络服务可能不能正常运行

时间同步工具

提供NTP协议的软件:

  • ntp

  • chrony

ntp工具

将系统时钟和世界协调时UTC同步,精度在1-50ms之间。但是同步效率比较慢。

chrony工具

是实现NTP协议的的自由软件。

特点:同步效率更高、精度更高、稳定性好
[root@Centos8 ~]# rpm -ql chrony
...
/etc/chrony.conf #配置文件 会根据这个配置文件的内容来同步时间
/etc/chrony.keys
/etc/dhcp/dhclient.d/chrony.sh
/etc/logrotate.d/chrony
/etc/sysconfig/chronyd
/usr/bin/chronyc #命令行用户工具,用于监控性能并进行多样化的配置。 是一个交互工具
/usr/lib/.build-id
/usr/lib/.build-id/23
/usr/lib/.build-id/23/c12c89404f4f188e6b9336c0b409dc4da37be5
/usr/lib/.build-id/53
/usr/lib/.build-id/53/9fbf47304cfa48ee57850dbaab54688850f8af
/usr/lib/systemd/ntp-units.d/50-chronyd.list
/usr/lib/systemd/system/chrony-dnssrv@.service
/usr/lib/systemd/system/chrony-dnssrv@.timer
/usr/lib/systemd/system/chrony-wait.service
/usr/lib/systemd/system/chronyd.service #Unit文件
/usr/libexec/chrony-helper
/usr/sbin/chronyd #后台运行的守护进程,服务端和客户端的主程序(又是服务器端也是客户端),默认是作为客户端
...
监听端口: 服务端: 123/udp,客户端: 323/udp

chrony默认是作为客户端使用的,要想使用服务端的功能,就需要打开123这个端口

修改配置文件allow这一行就行了。
#allow 0.0.0.0/0 表示的是任何主机都可以和本机进行时间的同步 ss -ntlu:查看本机开了那些端口 ss工具:
是Socket Statistics的缩写。可以用来获取socket统计信息,它显示的内容和netstat类似
-l 显示处于监听状态的套接字
-n 不把端口解析为服务名称,而是以数字的方式显示
-a 显示所有套接字,tcp、udp等
-t 只显示TCP套接字
-u 只显示UDP套接字
配置文件chrony.conf
server   #用于指定单个NTP服务器,iburst:让同步时间的时候更快,开启多个并行任务来进行同步

pool    #用于指定NTP服务器池而不是单个NTP服务器。池名称应解析为随时间可能会变化的多个地址

driftfile #根据实际时间计算出计算机增减时间的比率,将它记录到一个文件中,会在重启后为系统时钟作出补偿

rtcsync  #启用内核模式,系统时间每11分钟会拷贝到实时时钟(RTC)

allow / deny #允许或者拒绝某些主机和本机机型时间的同步

cmdallow / cmddeny #可以指定哪台主机可以通过chronyd使用控制命令

bindcmdaddress #允许chronyd监听哪个接口来接收由chronyc执行的命令

makestep # 通常chronyd将根据需求通过减慢或加速时钟,使得系统逐步纠正所有时间偏差。在某些特定情况下,系统时钟可能会漂移过快,导致该调整过程消耗很长的时间来纠正系统时钟。该指令强制chronyd在调整期大于某个阀值时调整系统时钟

local stratum 10  #当互联网无法连接,仍然可以为客户端提供时间同步服务
#local stratum 10 将当前服务器设置为第十层(把自己设置为内部服务器的意思)
ntp客户端工具:chronyc

chronyc 可以运行在交互式和非交互式两种方式,支持以下子命令

help 命令可以查看更多chronyc的交互命令

accheck 检查是否对特定主机可访问当前服务器

activity 显示有多少NTP源在线/离线

sources [-v]   显示当前时间源的同步信息

sourcestats [-v]显示当前时间源的同步统计信息

add server 手动添加一台新的NTP服务器

clients 报告已访问本服务器的客户端列表

delete 手动移除NTP服务器或对等服务器

settime 手动设置守护进程时间

tracking 显示系统时间信息
范例
范例: CentOS6 ntp客户端同步检查
ntpq -p CentOS7以上:
chronyc sources -v

公共NTP服务

pool.ntp.org:这个项目是专门提供稳定的时间同步的

阿里云公共NTP服务器
Unix/linux类:ntp.aliyun.com,ntp1-7.aliyun.com
windows类: time.pool.aliyun.com 腾讯公共NTP
time1-5.cloud.tencent.com 大学ntp服务
s1a.time.edu.cn 北京邮电大学
s1b.time.edu.cn 清华大学
s1c.time.edu.cn 北京大学 国家授时中心服务器:210.72.145.44 美国标准技术院: time.nist.gov

Linux 时间设置和同步服务的更多相关文章

  1. Linux时间设置及同步

    Linux系统安装时选择的UTC时间是国际标准时间,而中国处于UTC+8时区,因此安装系统时不要选择UTC时区. 还有就是Linux有两个时钟: 1.Bios时钟及硬件时间 2.Kernel时钟及系统 ...

  2. Linux时间设置与iptables命令

    日期与时间设置 timedatectl:显示目前时区与时间等信息 [root@localhost zhang]# timedatectl Local time: Thu 2018-01-18 10:1 ...

  3. Linux时间设置命令

    1.date: 语法格式:date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=dates ...

  4. Linux时间设置

    Linux时间分为系统时间和硬件时间. 查看系统时间:date 将系统时间写入硬件:hwclock --systohc 查看硬件时间:hwclock --show 将硬件时间写入系统:hwclock ...

  5. Linux服务器时间设置及同步

    闲余:夏日将到,园区计划五一期间进行大面积的电网停电检修,运维同学因此将公司测试服务器提前关闭了.收假后,测试告诉我,他发现一个bug--一段定时任务程序未执行,我的第一反应就是--会不会是假期测试服 ...

  6. Linux的时间设置与同步

    http://www.cnblogs.com/liuyou/archive/2012/07/29/2614338.html

  7. Linux 时间操作及其同步

    完整格式支持链接:https://blog.imakiseki.cf/2022/02/27/techdev/linux-time-operations-and-sync/ 本文将以 Arch Linu ...

  8. 关于Linux时间设置的总结

    系统环境:centos Linux的时间有两种,一种是系统时间,一种是硬件时间. 系统时间的查看:#date 系统时间的设置:#date -set 时间同步工具准备 Linux进行时间同步要使用一个工 ...

  9. Linux之rsync数据同步服务

    rsync是一个开源.快速的.多动能的.可以实现全量,增量的本地或远程数据同步备份工具,它适用于多种操作系统平台. 1.rsync的特性(功能) (1)支持拷贝特殊文件(如链接文件.设备文件) (2) ...

随机推荐

  1. brew常用命令

    Homebrew 常用命令 brew -help # 查看帮助命令 brew config # 查看配置信息 brew list # 查看已安装软件包列表 brew cleanup # 清理所有包的旧 ...

  2. unity---角色控制器控制角色移动

    获取对象 public CharacterController cc; cc=gameObject.GetComponent<CharacterController>(); if(Inpu ...

  3. Vue基础篇之 插槽 slot

  4. 第06组Alpha冲刺(6/6)

    目录 1.1 基本情况 1.2 冲刺概况汇报 1.郝雷明 2.曹兰英 3. 方梓涵 4.曾丽莉 5.鲍凌函 6.杜筱 7.黄少丹 8.詹鑫冰 9.董翔云 10.吴沅静 1.3 冲刺成果展示 1.1 基 ...

  5. 基于Vue.js的Web视频播放器插件vue-vam-video@1.3.6 正式发布

    前言 今日正式发布一款基于Vue.js的Web视频播放器插件.可配置,操作灵活.跟我一起来体验吧! 线上地址体验 基于vue3.0和vue-vam-video,我开发了一款在线视频播放器. 网址: h ...

  6. 谷歌浏览器控制台 f12怎么设置成中文/英文 切换方法,一定要看到最后!!!

    1.打开谷歌浏览器 2.右键选择检查或 f12 打开控制台 3.点击控制台右边的设置 4.中切英 选择偏好设置->语言=>English 5.英切中 6.选择中文 7.重启 8.切换中文成 ...

  7. crane:字典项与关联数据处理的新思路

    前言 在我们日常开发中,经常会遇到一些烦人的数据关联和转换问题,比如典型的: 对象属性中个有字典 id,需要获取对应字典值并填充到对象中: 对象属性中有个外键,需要关联查询对应的数据库表实体,并获取其 ...

  8. C# · 委托语句简化演变

    1.委托基础语句形式 namespace QLVision { delegate void dHelp();//定义委托 static class Program { /// <summary& ...

  9. 用Python做了个图片识别系统(附源码)

    本项目将使用python3去识别图片是否为色情图片,会使用到PIL这个图像处理库,并且编写算法来划分图像的皮肤区域 介绍一下PIL: PIL(Python Image Library)是一种免费的图像 ...

  10. Python递归函数的定义和几个小例子

    递归函数 (1)什么是递归函数? 我们都知道,一个函数可以调用其他函数.如果这个函数在内部调用它自己,那么这个函数就叫递归函数. (2)递归函数的作用 举个例子,我们来计算阶乘 n! = 1 * 2 ...