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同步
相关推荐
疯狂的大狗15 分钟前
docker进入正在运行的容器,exit后的比较
运维·docker·容器
XY.散人16 分钟前
初识Linux · 文件(1)
linux·运维·服务器
长天一色29 分钟前
【Docker从入门到进阶】01.介绍 & 02.基础使用
运维·docker·容器
伊玛目的门徒30 分钟前
docker 搭建minimalist-web-notepad
运维·docker·notepad
叶北辰CHINA1 小时前
nginx反向代理,负载均衡,HTTP配置简述(说人话)
linux·运维·nginx·http·云原生·https·负载均衡
不惑_2 小时前
在 Ubuntu 安装 Python3.7(没有弯路)
linux·运维·ubuntu
theo.wu3 小时前
使用Buildpacks构建Docker镜像
运维·docker·容器
玉树临风江流儿3 小时前
Linux驱动开发(速记版)--设备模型
linux·驱动开发
杰哥在此3 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
枫叶丹45 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器