习惯使用 Windows 操作系统的同学都知道,在 Windows 系统中查看系统配置是很简单的,直接右击 “我的电脑” ,然后点击属性就可以弹出如下界面:
在上面图片中,可以看到 Windows 系统的配置信息,不能说特别全,但是有关计算机的基本信息都是可以查看的,像 Windows 版本、系统处理器、已安装的内存以及系统类型等等都是一目了然的。所以说在 Windows 系统中查看计算机相关信息是很容易的,那么在 Linux 系统中都是命令行,从哪里才可以看到系统的基本配置信息呢?本篇文章就来教大家如何在 Linux 系统中查看服务器版本。
1. 查看cpu
$ cat /proc/cpuinfo
上面图片中可以看到,在 /proc
目录下 cpu 信息是可以查看的。这里我们简单说下 /proc
目录。这个目录也是一种文件系统,它与其他一些常见的文件系统区别就在于,/proc
是一种虚拟文件系统,也叫做伪文件系统。这个目录中存储的内容一般都是当前内核运行状态的相关特殊文件,因此用户可以通过在这个目录下的文件查看有关当前系统的相关进程信息。如果想改变内核的运行状态也可以通过修改其中某些配置文件来实现。 /proc
通常被称为虚拟目录,其下的文件也被称作虚拟文件,有的文件比较特殊,如下:
$ ll -h /proc/cpuinfo
注意查看这条命令执行的输出,在上一张图片中我们看到 /proc/cpuinfo
这个文件是有数据输出,但是查看文件大小确是 0,也就是没有大小。是的 这就是虚拟文件独有的特点,虽然使用命令查看会返回数据信息,但是文件本身的大小却会显示为 0 字节。除此之外,这些虚拟文件中还有部分文件的时间属性也是会随时改变,因为它会随着当前系统时间和日期随时被刷新的。
2. 查看内存信息
$ cat /proc/meminfo
可以看到,也是在 /proc
目录下查看的,除了在这个目录下查看还有另一种方法,就是通过 free
命令查看,关于 free
命令的用法也很简单,语法格式如下:
free [options]
free [参数选项]
free
命令显示的内容是系统中空闲内存和使用内存的容量。
$ free -m
这里使用 -m 选项只是为了方便查看结果,-m 选项的实际意义就是显示内存总量,以 MB 为单位。默认不加参数就是以 KB 显示的,对比上面两张图的结果也可以看出来。
3. 查看 cpu 位数、系统版本
$ getconf LONG_BIT
$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
这里可以看到,当前的系统的 CPU 位数是 64 位,系统版本是 CentOS 8。当然,在 Linux 系统中,查看一个东西的方法很多,所以查看系统位数的方法也不止这一种。接下来重点介绍一下 uname
这个命令。
语法格式:
uname [OPTION]...
关于 uname
的介绍 man 文档给出的命令作用也很简洁明了,uname
命令的英文就是 unix name,主要作用就是显示操作系统的相关信息。
常用参数说明:
-a:打印出系统的全部信息
-n:打印出当前系统的主机名,相当于执行 hostname 命令
-r:显示操作系统的发行编号
-s:打印出操作系统的名称
-v:打印出操作系统的版本
$ uname -a
Linux VM-16-64-centos 4.18.0-80.el8.x86_64 #1 SMP Tue Jun 4 09:19:46 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
$ uname -n
VM-16-64-centos
$ uname -r
4.18.0-80.el8.x86_64
$ uname -s
Linux
$ uname -v
#1 SMP Tue Jun 4 09:19:46 UTC 2019
$ uname --version
uname (GNU coreutils) 8.30
通过上述演示,不难发现关于在 Linux 中查看服务器版本其实也是很简单的,只是它不会像 Windows 一样会统一显示出来,而需要一条条通过命令查看。上面的学习中已经了解到了在 Linux 查看系统相关信息,但其实除此之外,我觉得拿到一台新的服务器,还应该关注它的网络相关配置,因为服务器就是用来通信,通信肯定是要有 IP 地址的,那么关于网络相关配置信息该如何查看?这里告诉大家答案,网络配置也有专门的配置文件。
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
# Created by cloud-init on instance boot automatically, do not edit.
#
BOOTPROTO=dhcp
DEVICE=eth0
HWADDR=52:54:00:fb:d2:2d
ONBOOT=yes
PERSISTENT_DHCLIENT=yes
TYPE=Ethernet
USERCTL=no
上面是网卡的配置文件,可以看到它的 IP 获取方式是通过 DHCP 获取的,设备名为 eth0,硬件的 MAC 地址,是否开机自启等等,但是这个配置文件里并没有显示我们的具体 IP 信息,如果需要查看具体 IP 信息的话,那就需要通过命令来查看了。
$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.31.1.12 netmask 255.255.255.0 broadcast 172.31.1.255
inet6 fe80::5054:ff:fefb:d22d prefixlen 64 scopeid 0x20<link>
ether 52:54:00:fb:d2:2d txqueuelen 1000 (Ethernet)
RX packets 2538365 bytes 271336268 (258.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2490809 bytes 432163312 (412.1 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ifconfig
的英文全称是:network interfaces configuring。使用 ifconfig
可以查看网卡的内网 IP 地址,包括广播地址、掩码位数等等信息。