Anolis 8.8 系统 语言 时区 时钟设置

2023-11-07 15:04:08 浏览数 (1)

系统语言

系统语言中文英文切换,localectl status 用于查看和配置系统的区域设置状态,而 locale 用于查看和设置系统的区域设置环境变量。

显示当前语言环境状态

代码语言:javascript复制
localectl status
locale
  • System Locale(系统区域设置):LANG=zh_CN.utf8,表示系统的默认语言为简体中文(Chinese, China),使用的字符编码为UTF-8。
  • VC Keymap(虚拟控制台键盘映射):us,表示在虚拟控制台(即非图形界面下)使用的键盘布局为美式英语(US)。
  • X11 Layout(X11键盘布局):us,表示在图形界面下(X11环境)使用的键盘布局为美式英语(US)。

查看LANG语言环境变量

代码语言:javascript复制
echo $LANG
en_US.UTF-8

列出可用的语言环境

代码语言:javascript复制
localectl list-locales |grep zh

设置语言环境

编辑/etc/locale.conf文件

代码语言:javascript复制
vi /etc/locale.conf
#中文
#LANG=zh_CN.UTF-8 
#英文
#LANG=en_US.UTF-8

简体中文语言环境

代码语言:javascript复制
localectl  set-locale  LANG=zh_CN.UTF-8

简体英文语言环境

代码语言:javascript复制
localectl  set-locale  LANG=en_US.UTF-8

加载语言环境

代码语言:javascript复制
source  /etc/locale.conf

时区、时钟设置

显示当前的日期和时间

代码语言:javascript复制
timedatectl

timedatectl 参数介绍

  • Local time:本地时间。
  • Universal time:世界标准时间。
  • RTC time:Real Time Clock,硬件时钟,主板上由电池供电的BIOS时间,hwclock -r可查看。
  • CST:中国标准时间,GMT 8=UTC 8=CST。
  • UTC:协调世界时, 世界标准时间。原子时为基础, 非常准确。约等于GMT。
  • GMT:格林尼治标准时间。UTC是根据原子钟来计算时间,而GMT是根据地球的自转和公转来计算时间。UTC是现在用的时间标准,GMT是老的时间计量标准。UTC更加精确,由于现在世界上最精确的原子钟50亿年才会误差1秒,可以说非常精确。
  • Time zone:时区。
  • System clock synchronized:系统时钟同步状态(yes表示系统时钟已同步)。
  • NTP service:NTP时钟同步服务。
  • RTC in local TZ:no表示硬件时钟设置为协调世界时(UTC),yes表示硬件时钟设置为本地时间。

修改系统时区

显示系统可用时区

代码语言:javascript复制
timedatectl list-timezones | grep Asia

修改当前的时区为"shanghai"

代码语言:javascript复制
timedatectl set-timezone Asia/Shanghai

设置为时间标准时间时区

代码语言:javascript复制
timedatectl set-timezone UTC

设置时间

设置日期时间

代码语言:javascript复制
timedatectl set-time "YYYY-MM-DD HH:MM:SS"

设置时间设置日期

代码语言:javascript复制
timedatectl set-time "YYYY-MM-DD"

注意: 如果ntp时间同步为true时无法修改时间设定

时钟服务器进行时间同步

启用NTP时间同步

代码语言:javascript复制
timedatectl set-ntp    true

禁用NTP时间同步

代码语言:javascript复制
timedatectl set-ntp  false

硬件时钟和系统时钟

Linux将时钟分为系统时钟(System Clock)和硬件时钟(Real Time Clock,RTC)两种。系统时间是指当前Linux Kernel中的时钟,而硬件时钟则是主板上由电池供电的主板硬件时钟,这个时钟可以在BIOS的"Standard BIOS Feture"项中进行设置。

当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作。从Linux启动过程来看,系统时钟和硬件时钟不会发生冲突,系统中的所有命令(包括函数)都是采用的系统时钟。不仅如此,系统时钟和硬件时钟还可以采用异步方式,即系统时间和硬件时间可以不同。

显示日期和时间

显示当前硬件的日期和时间

代码语言:javascript复制
hwclock

hwclock 同步硬件时钟

hwclock用来进行硬件的时钟设置(RTC,Real Time Clock)。当前系统时间写入硬件时钟

代码语言:javascript复制
hwclock  -w

系统时钟(系统时间)视为本地时间写入硬件时钟(RTC:Real-time Clock)

代码语言:javascript复制
timedatectl set-local-rtc 1

系统时钟(系统时间)视为协调世界时(UTC)写入硬件时钟(RTC:Real-time Clock)

代码语言:javascript复制
timedatectl set-local-rtc 0

chrony 时钟

chrony是一个开源自由的网络时间协议 NTP 的客户端和服务器软件。它能让计算机保持系统时钟与时钟服务器(NTP)同步,让计算机保持精确的时间,chrony也可以作为服务端软件为其他计算机提供时间同步服务。

chronyd 官方文档

https://chrony.tuxfamily.org/documentation.html

安装 chronyd

代码语言:javascript复制
dnf install  chronyd

chronyd 配置文件

vim /etc/chrony.conf

代码语言:javascript复制
pool ntp.aliyun.com iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
allow 192.168.0.0/16
local stratum 10
keyfile /etc/chrony.keys
logdir /var/log/chrony

启动chronyd服务

代码语言:javascript复制
systemctl start chronyd && systemctl enable chronyd 

chronyd 常用命令

代码语言:javascript复制
查看 ntp_servers
chronyc sources -v
查看 ntp_servers 状态
chronyc sourcestats -v
查看 ntp_servers 是否在线
chronyc activity -v
查看 ntp 详细信息
chronyc tracking -v
强制同步下系统时钟
chronyc -a makestep

作为时钟服务器的 chrony 同步的节点列表

代码语言:javascript复制
chronyc  clients

chronyd 配置文件介绍

  • server <服务器地址> [options]: 指定要与之同步的时间服务器的地址。可以使用多个 server 参数来指定多个时间服务器。
  • pool <服务器地址> [options]: 类似于 server 参数,但它指定的是时间服务器的服务器池地址。chronyd 将从该服务器池中选择一个服务器进行同步。
  • driftfile <文件路径>: 指定用于记录系统时钟漂移的文件的路径。chronyd 使用该文件来调整系统时钟的频率。
  • log <文件路径>: 指定 chronyd 的日志文件的路径。
  • allow <网络地址>: 指定允许与 chronyd 进行通信的网络地址。可以使用 CIDR 格式表示一个网络。允许多个 allow 参数。
  • deny <网络地址>: 指定禁止与 chronyd 进行通信的网络地址。可以使用 CIDR 格式表示一个网络。允许多个 deny 参数。
  • maxdistance <秒数>: 指定 chronyd 与时间服务器之间的最大时间偏差。如果时间偏差超过此参数指定的值,chronyd 将不会同步时间。
  • makestep <步长>: 如果时间偏差超过 maxdistance 参数指定的值,makestep 参数指定了一次性调整系统时钟的步长。"makestep 1.0 3" 是指在时间偏差超过 maxdistance 参数指定的阈值时,chronyd 以每秒调整 1.0 秒的步长来调整系统时钟,连续调整 3 次。
  • rtcsync 当"rtcsync"指令启用时,chronyd会通过与内核时钟进行频繁的交互,以确保系统时钟与硬件时钟保持同步。

0 人点赞