系统信息
系统相关信息
跑分软件
Linux下的最常用的跑分软件是Phoronix Test Suite,
systemd提供的系统信息
$ cat /etc/os-release [sudo] password for jade: NAME="Ubuntu" VERSION="18.04.6 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.6 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic
neofetch
查看操作系统
┌─(jade@jade-ThinkPad-T440p:pts/2)───────────(~/git-repo/Jade-Misc/fortunes)─┐ └─(17:18:%)── neofetch ──(Sun,Mar01)─┘ .-/+oossssoo+/-. jade@jade-ThinkPad-T440p `:+ssssssssssssssssss+:` ------------------------ -+ssssssssssssssssssyyssss+- OS: Ubuntu 18.04.4 LTS x86_64 .ossssssssssssssssssdMMMNysssso. Host: 20AN002LCD ThinkPad T440p /ssssssssssshdmmNNmmyNMMMMhssssss/ Kernel: 4.15.0-91-generic +ssssssssshmydMMMMMMMNddddyssssssss+ Uptime: 6 hours, 20 mins /sssssssshNMMMyhhyyyyhmNMMMNhssssssss/ Packages: 3483 .ssssssssdMMMNhsssssssssshNMMMdssssssss. Shell: zsh 5.4.2 +sssshhhyNMMNyssssssssssssyNMMMysssssss+ Resolution: 1366x768, 1920x1080 ossyNMMMNyMMhsssssssssssssshmmmhssssssso DE: GNOME 3.28.4 ossyNMMMNyMMhsssssssssssssshmmmhssssssso WM: awesome +sssshhhyNMMNyssssssssssssyNMMMysssssss+ Theme: Adwaita [GTK2/3] .ssssssssdMMMNhsssssssssshNMMMdssssssss. Icons: Adwaita [GTK2/3] /sssssssshNMMMyhhyyyyhdNMMMNhssssssss/ CPU: Intel i5-4200M (4) @ 3.100GHz +sssssssssdmydMMMMMMMMddddyssssssss+ GPU: NVIDIA GeForce GT 730M /ssssssssssshdmNNNNmyNMMMMhssssss/ GPU: Intel Haswell Mobile .ossssssssssssssssssdMMMNysssso. Memory: 1947MiB / 7656MiB -+sssssssssssssssssyyyssss+- `:+ssssssssssssssssss+:` .-/+oossssoo+/-.
uname
查看操作系统
uname
命令就是Unix Name的简写。显示机器名,操作系统和内核的详细信息。
root@tecmint:~# uname -a Linux tecmint 3.8.0-19-generic #30-Ubuntu SMP Wed May 1 16:36:13 UTC 2013 i686 i686 i686 GNU/Linux
uname
显示内核类别, uname -a
显示详细信息:
-
Linux
: 机器的内核名 -
tecmint
: 机器的分支名 -
3.8.0-19-generic
: 内核发布版本 -
#30-Ubuntu SMP
: 内核版本 -
i686
: 处理器架构 -
GNU/Linux
: 操作系统名
lsb_release
查看操作系统
lsb_release
命令会打印特殊发行版的信息。如果 lsb_release 还没安装,你可以在基于
Debain 的发行版中用命令 apt 安装,在基于 Red Hat 系统下用 yum 来安装包。
# lsb_release -a LSB Version: :base-4.0-ia32:base-4.0-noarch:core-4.0-ia32:core-4.0-noarch:graphics-4.0-ia32: Distributor ID: CentOS Description: CentOS release 6.3 (Final) Release: 6.3 Codename: Final
注意:选项-a
,会显示有关版本、ID、详情、发行号和研发代号的全部可用信息。
uptime
查看开机时间
你连接到你的Linux服务器时发现一些不寻常或恶意的东西,你会做什么?猜测……不,绝不
!你可以运行uptime
来验证当服务器无人值守式到底发生了什么事情。
[avishek@tecmint ~]$ uptime 14:37:10 up 4:21, 2 users, load average: 0.00, 0.00, 0.04
issue
cat /etc/issue
w
查看用户与开机时间
是否觉得命令w
很滑稽?但是事实上不是的。它是一个命令,尽管只有一个字符长,命令
w
是uptime
和who
命令,以前后的顺序组合在一起。
[avishek@tecmint ~]$ w 15:05:42 up 4:49, 3 users, load average: 0.02, 0.01, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT server tty7 :0 14:06 4:43m 1:42 0.08s pam: gdm-passwo server pts/0 :0.0 14:18 0.00s 0.23s 1.65s gnome-terminal server pts/1 :0.0 14:47 4:43 0.01s 0.01s bash
日期时间
BIOS时间同步
在Window与linux双系统的机器上,不同系统对BIOS时间的处理上会有差异:
BIOS时间:系统的硬件时间。时间不同步,原因非常简单:
- windows认为,BIOS时间就是当地时间。所以windows会直接显示BIOS时间。
- ubuntu认为,BIOS时间应当是UTC时间(格林尼治标准时间)。 所以ubuntu会将BIOS时间加上8小时后再显示出来(在中国)。
所有的操作系统(不论是ubuntu还是windows)在启动后都会更新系统时间。流程如下:
- 电脑开机,读取BIOS时间并显示。(windows直接显示,ubuntu加8后再显示)
- 联网后,获取当地时间并显示。
- 更新BIOS时间。
联网后大家获取到的时间都是当地时间,这没问题。 但ubuntu和windows在更新BIOS时间时,做法不同。windows获取到当地时间后, 直接把BIOS时间设为当地时间;而ubuntu把BIOS时间设为UTC时间。
比如现在是北京时间12点,UTC时间就是12-8=4
点,ubuntu就会把BIOS时间设为4点。
进入Linux,在终端里输入一条指令,就可以验证上面的分析:
timedatectl status
这个指令用来查看系统时间状态。如果您的显示如下:
$ timedatectl status Local time: Mon 2022-07-04 23:11:48 CST Universal time: Mon 2022-07-04 15:11:48 UTC RTC time: Mon 2022-07-04 15:11:48 Time zone: Asia/Shanghai (CST, +0800) System clock synchronized: yes systemd-timesyncd.service active: yes RTC in local TZ: no
- 第一行,Local time=12点,是ubuntu联网获取到的当地时间。
- 第三行,RTC time=4点,是电脑的BIOS时间。可以看到,ubuntu把当地时间减去8小时, 得到了UTC时间并赋给了BIOS。
- 最后一行,RTC in local TZ=no,这句话代表系统时间和BIOS时间不同步, 即BIOS存储的是UTC时间,而系统时间是当地时间。
修改的方法为直接在ubuntu终端中输入:
timedatectl set-local-rtc 1
这句话的作用是让ubuntu将系统时间和BIOS时间同步。现在,ubuntu和windows一样, 都认为BIOS时间就是当地时间,联网更新时,也是直接将BIOS时间设为当地时间。 这样就没问题了。
现在再输入imedatectl status
查看系统时间状态。
cal
查看日历
cal cal 02 1995
date
设置时间
取得时间:
root@tecmint:~# date Fri May 17 14:13:29 IST 2013
设置时间:
root@tecmint:~# date --set='14 may 2013 13:57' Mon May 13 13:57:00 IST 2013
格式化输出时间:
$ date +%y-%m-%d_%H:%M:%S 21-10-08_14:54:34
语言与地区
在Linux中通过locale来设置程序运行的不同语言环境,locale由ANSI C提供支持。
locale的命名规则为<语言>_<地区>.<字符集编码>
,如:
zh_CN.UTF-8
,zh代表中文,CN代表大陆地区,UTF-8表示字符集。
在locale环境中,有一组变量,代表国际化环境中的不同设置:
-
LC_COLLATE
:定义该环境的排序和比较规则 -
LC_CTYPE
:用于字符分类和字符串处理,控制所有字符的处理方式,包括字符编码, 字符是单字节还是多字节,如何打印等。是最重要的一个环境变量。 -
LC_MONETARY
:货币格式 -
LC_NUMERIC
:非货币的数字显示格式 -
LC_TIME
:时间和日期格式 -
LC_MESSAGES
:提示信息的语言。另外还有一个LANGUAGE参数,它与LC_MESSAGES相似, 但如果该参数一旦设置,则LC_MESSAGES参数就会失效。 LANGUAGE参数可同时设置多种语言信息, 如LANGUANE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
。 -
LANG
:LC_*
的默认值,是最低级别的设置,如果LC_*
没有设置,则使用该值。 类似于LC_ALL
。 -
LC_ALL
:它是一个宏,如果该值设置了,则该值会覆盖所有LC_*
的设置值。 注意,LANG的值不受该宏影响。
一个例子:
设置前,使用默认locale:
debian:~# locale LANG="POSIX" LC_CTYPE="POSIX" LC_NUMERIC="POSIX」 LC_TIME="POSIX" LC_COLLATE="POSIX" LC_MONETARY="POSIX" LC_MESSAGES="POSIX" LC_PAPER="POSIX" LC_NAME="POSIX" LC_ADDRESS="POSIX" LC_TELEPHONE="POSIX" LC_MEASUREMENT="POSIX" LC_IDENTIFICATION="POSIX" LC_ALL=
设置后,使用zh_CN.GBK
中文locale:
debian:~# export LC_ALL=zh_CN.GBK debian:~# locale LANG=zh_CN.UTF-8 LC_CTYPE="zh_CN.GBK" LC_NUMERIC="zh_CN.GBK" LC_TIME="zh_CN.GBK" LC_COLLATE="zh_CN.GBK" LC_MONETARY="zh_CN.GBK" LC_MESSAGES="zh_CN.GBK" LC_PAPER="zh_CN.GBK" LC_NAME="zh_CN.GBK" LC_ADDRESS="zh_CN.GBK" LC_TELEPHONE="zh_CN.GBK" LC_MEASUREMENT="zh_CN.GBK" LC_IDENTIFICATION="zh_CN.GBK" LC_ALL=zh_CN.GBK
C
是系统默认的locale,POSIX
是C
的别名。所以当我们新安装完一个系统时,
默认的locale就是C或POSIX。
安装新的local
在Debian中安装locales的方法如下:
-
通过
apt-get install locales
命令安装locales包 - 安装完成locales包后,系统会自动进行locale配置,你只要选择所需的locale, 可以多选。最后指定一个系统默认的locale。 这样系统就会帮你自动生成相应的locale和配置好系统的locale。
-
增加新的locale也很简单,用
dpkp-reconfigure locales
重新配置locale即可。 -
我们也可手动增加locale,只要把新的locale增加到
/etc/locale.gen
文件中, 再运行locale-gen
命令即可生成新的 locale。 再通过设置上面介绍的LC_*
变量就可设置系统的locale了。
下面是一个locale.gen
文件的样例。
# This file lists locales that you wish to have built. You can find a list # of valid supported locales at /usr/share/i18n/SUPPORTED. Other # combinations are possible, but may not be well tested. If you change # this file, you need to rerun locale-gen. # zh_CN.GBK GBK zh_CN.UTF-8 UTF-8
要在Shell中正常显示系统的中文提示信息和支持中文输入。LANG和shell的编码配置需一致, 并安装有中文locale。如:
LANG和 shell的编码都配置成zh_CN.utf8
,并安装有zh_CN.utf8
这个locale。
如果shell和LANG配置不同,则中文显示乱码;如果LANG里设置的locale没有安装,
则不能显示系统的中文提示信息,只会显示英文提示信息。
设置用户的语言
语言乱码:.bashrc
加入export LC_ALL=zh_CN.UTF-8