1)显示/设置当前日期和时间,我来为大家科普一下关于系统配置详解?以下内容希望对你有帮助!

系统配置详解(02-系统基本设置)

系统配置详解

  • 日期和时间

  • 系统区域(语系)设置

  • 键盘布局

    日期时间设置

    1)显示/设置当前日期和时间

    显示/设置当前日期时间使用date指令完成, 以下是date的使用说明:

    date按指定格式显示或设置日期 date [OPTION] [ FORMAT] #按指定格式显示日期时间 date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] #按指定格式设置日期时间 OPTION: -d,--date = STRING 将STRING日期时间(可以是[ FORMAT]或@unix_time或string<如"2 days ago">)转换为标准的日期时间格式或转换为[ FORMAT]格式显示 这里的STRING是一种大多数形式的人类可读日期字符串,例如“Sun, 29 Feb 2004 16:21:42 -0800”或“2004-02-29 16:21:42”,甚至是“next Thursday”。 日期字符串可能包含指示日历date,time of day,time zone,day of week,relative time,relative date和numbers等。 空字符串表示一天的开始。日期字符串格式比此处容易记录的要复杂得多,但在info文档中有完整的说明 注意: [ FORMAT]和-d STRING放在一起使用, 表示将-d指定的时间字符串按照[ FORMAT]指定的格式或标准日期时间格式(不指定[ FORMAT时])显示 -s,-set = STRING 设置时间,由STRING描述 -r,--reference = FILE 显示FILE文件的mtime -u,--utc 显示或设置协调世界时间(UTC) FORMAT(下面是几个常用的): %F(标准日期格式) %T(标准时间格式) %s(Unix时间, 纪元时, 时间戳) %N(纳秒) date -d @1552018856 [ FORMAT] # 将纪元时转换为标准日期时间 其中-d使用示例: date -d "1 day" #后一天 date -d "-1 day" #前一天 date --date='2 days ago' date -d "1 month" %F date --date='3 months 1 day' date -d "2 hours" date -d "1 minutes" date --date='25 Dec' %j date --date='2000-01-01 UTC' %s date -d '1970-01-01 UTC 946684800 seconds' "%Y-%m-%d %T %z" date -d @946684800 "%F %T %z" date --date='2012-06-30 23:59:59 0000' %s

    显示当前日期时间:

    [root@node-1 ~]# date # 按照默认格式显示当前系统日期时间 Wed Jul 20 05:52:51 CST 2022 [root@node-1 ~]# date "%F %T" # 按照指定格式显示日期时间 2022-07-20 05:52:57 [root@node-1 ~]# date %s # 显示当前时间戳 1658267591 [root@node-1 ~]# date -d @1658267591 "%F %T" # 按指定的格式将时间戳转换为日期时间 2022-07-20 05:53:11

    显示更多详细信息/时区设置:

    [root@node-1 ~]# timedatectl status Local time: Wed 2022-07-20 22:00:19 CST Universal time: Wed 2022-07-20 14:00:19 UTC RTC time: Tue 2022-07-19 22:03:49 Time zone: Asia/Shanghai (CST, 0800) System clock synchronized: no NTP service: n/a RTC in local TZ: no [root@node-1 ~]# timedatectl list-timezones # 列出所有可用时区 [root@node-1 ~]# timedatectl list-timezones|grep Singapore Asia/Singapore [root@node-1 ~]# timedatectl set-timezone Asia/Singapore # 设置时区为新加坡 [root@node-1 ~]# timedatectl status Local time: Wed 2022-07-20 22:08:42 08 Universal time: Wed 2022-07-20 14:08:42 UTC RTC time: Tue 2022-07-19 22:12:12 Time zone: Asia/Singapore ( 08, 0800) # System clock synchronized: no NTP service: n/a RTC in local TZ: no [root@node-1 ~]# timedatectl set-timezone Asia/Shanghai # 恢复中国时区 [root@node-1 ~]# timedatectl status Local time: Wed 2022-07-20 22:09:33 CST Universal time: Wed 2022-07-20 14:09:33 UTC RTC time: Tue 2022-07-19 22:13:03 Time zone: Asia/Shanghai (CST, 0800) System clock synchronized: no NTP service: n/a RTC in local TZ: no

    设置当前系统日期时间:

    [root@node-1 ~]# date -s "2022-07-20 21:57:00" Wed Jul 20 21:57:00 CST 2022 [root@node-1 ~]# date Wed Jul 20 21:57:02 CST 2022

    设置系统语系

    系统级别的语系设置保存在/etc/locale.conf文件中,该文件在引导时由systemd守护进程读取。每个服务或用户都会继承在/etc/locale.conf中配置的locale设置,单独程序或个人用户可以单独覆盖。

    [root@node-1 ~]# cat /etc/locale.conf LANG="en_US.UTF-8" [root@node-1 ~]#

    列出所有可用语系:

    [root@node-1 ~]# localectl list-locales | head C.utf8 aa_DJ aa_DJ.iso88591 aa_DJ.utf8 aa_ER aa_ER.utf8 aa_ER.utf8@saaho aa_ER@saaho aa_ET aa_ET.utf8

    查看/设置语系:

    [root@node-1 ~]# echo $LANG en_US.UTF-8 [root@node-1 ~]# localectl status System Locale: LANG=en_US.UTF-8 VC Keymap: us X11 Layout: us [root@node-1 ~]# locale # 显示当前系统的字符集设定情况 LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL= [root@node-1 ~]# localectl list-locales | grep zh_CN zh_CN zh_CN.gb18030 zh_CN.gb2312 zh_CN.gbk zh_CN.utf8 [root@node-1 ~]# localectl list-locales | grep en_US en_US en_US.iso88591 en_US.iso885915 en_US.utf8 en_US.utf8@ampm.UTF-8 en_US@ampm.UTF-8 [root@node-1 ~]# localectl set-locale zh_CN.utf8 # 设置语系为中文 [root@node-1 ~]# localectl status System Locale: LANG=zh_CN.utf8 # VC Keymap: us X11 Layout: us # 退出会话重新登录执行如下指令 [root@node-1 ~]# echo $LANG zh_CN.utf8 [root@node-1 ~]# locale LANG=zh_CN.utf8 LC_CTYPE="zh_CN.utf8" LC_NUMERIC="zh_CN.utf8" LC_TIME="zh_CN.utf8" LC_COLLATE="zh_CN.utf8" LC_MONETARY="zh_CN.utf8" LC_MESSAGES="zh_CN.utf8" LC_PAPER="zh_CN.utf8" LC_NAME="zh_CN.utf8" LC_ADDRESS="zh_CN.utf8" LC_TELEPHONE="zh_CN.utf8" LC_MEASUREMENT="zh_CN.utf8" LC_IDENTIFICATION="zh_CN.utf8" LC_ALL= [root@node-1 ~]# localectl set-locale en_US.utf8 # 恢复为默认的英文语系 [root@node-1 ~]# localectl status System Locale: LANG=en_US.utf8 VC Keymap: us X11 Layout: us

    语系的设置也可通过设置LANG和LC_ALL这两个变量来实现, 命令行中通常使用这两个环境变量来实现临时设置

    设置键盘布局

    键盘布局一般使用默认us即可, 如果系统不是默认的us键盘布局, 可使用如下指令查看/设置:

    [root@node-1 ~]# localectl list-keymaps| head # 列出所有的键盘布局 ANSI-dvorak al al-plisi amiga-de amiga-us applkey at at-mac at-nodeadkeys at-sundeadkeys [root@node-1 ~]# localectl status System Locale: LANG=en_US.utf8 VC Keymap: us # 当前键盘布局 X11 Layout: us [root@node-1 ~]# localectl set-keymap al # 设置 [root@node-1 ~]# localectl status System Locale: LANG=en_US.utf8 VC Keymap: al # X11 Layout: us [root@node-1 ~]# localectl set-keymap us # 恢复默认 [root@node-1 ~]# localectl status System Locale: LANG=en_US.utf8 VC Keymap: us X11 Layout: us X11 Model: pc105 inet X11 Options: terminate:ctrl_alt_bksp