linux 系统时间、时区、date、timedatectl

一、名词

复制代码
UTC
格林尼治标准时间,位于0时区,东八区需要+8 
RTC 
硬件时间,也称作BIOS时间
CST
中央标准时间,也指各个时区自己的地方时间

二、查看时间

复制代码
#查看当前硬件时间
hwclock
#查看当前系统时间
date
date -u # 显示UTC时间
date +%s # 查看时间戳
# 显示多个时间
timedatectl
    Local time:本地时间,初始值来自于RTC,由内核维护,系统启动之后和RTC就没有关系,通常等于RTC+时区值(如上图的本地时间=RTC+8)
    Universal time:系统时间永远是UTC,在应用程序使用的时候转换为本地时间
    RTC time:指硬件时间,一般是主板上的特殊电路,专用于记录时间,有电池供电,不受服务器和操作系统的开启关闭影响。也称作BIOS时间。

需要注意的是:当/etc/sysconfig/clock 文件中 UTC=true时, BIOS 使用UTC时间; UTC=false时, BIOS 使用本地时间
    hwclock --localtime		#显示 BIOS 中实际的时间
    hwclock -w 				#将系统时间同步到硬件时间
    Time zone:本地时区,即服务器所在的时区
    NTP service:状态为"yes",表示开启NTP同步
    NTP synchronized,为"yes",表示NTP同步完成。
    RTC in local TZ:设置RTC时间,为"no"表示未设置
    timedatectl set-local-rtc 1		#将RTC设置为本地时间
    timedatectl set-local-rtc 0		#将RTC设置为UTC

三、修改时间

复制代码
#修改当前硬件时间
hwclock --set --date "20230413 10:00:00"
#修改当前系统时间
date -s "20230413 10:00:00"
#系统时间同步硬件时间
hwclock -s
#硬件时间同步系统时间
hwclock -w
#硬件时间设置为系统时间
hwclock --hctosys

四、查看时区

复制代码
# Linux中的时区主要通过一个文件来表示,这个文件是/etc/localtime,其中包含了Linux系统的时区信息
ls -al /etc/localtime 
# 注意这里的/etc/localtime只是一个链接,查看被链接文件所在的目录:
ls /usr/share/zoneinfo/
# 所以为了修改Linux系统的时区,只需要修改/etc/localtime链接的文件就可以了:
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/localtime	# 链接到东京时间


# 命令修改
timedatectl set-timezone "Asia/Shanghai"			#设置时区为上海

五、NTP

复制代码
    timedatectl set-ntp true		#开启ntp同步
    timedatectl set-ntp false		#禁止ntp同步
相关推荐
tanyongxi664 分钟前
简易shell
linux·运维·服务器
vortex56 分钟前
Python包管理与安装机制详解
linux·python·pip
zcz160712782117 分钟前
CentOS 7 服务器初始化完整流程
linux·服务器·centos
Twinkle17518 分钟前
linux下的网络编程:TCP(传输控制协议)编程
linux·网络·tcp/ip
df007df20 分钟前
【RAGFlow代码详解-29】Docker 部署
运维·docker·容器
Clain29 分钟前
如何快速建站 | 云服务器配置+公网ip部署网站全流程详解
linux·运维·服务器
白-胖-子36 分钟前
RHEL8.6环境下批量验证服务器凭据并配置Ansible免密管理全流程
运维·服务器·ansible
namehu2 小时前
一次因企微域名限制引发的“骚操作”:Nginx 与 FRP 的踩坑排查实录
linux·nginx
云动雨颤2 小时前
Linux下PXE服务器搭建
linux·运维·服务器
源远流长jerry2 小时前
STM32之DMA详解
linux·网络·c++·stm32·单片机·嵌入式硬件