对于Linux系统linux操作系统原理,若果是你自己安装的,你还会晓得安装的是那个发行版,以及版本号。但若果是使用ssh联接的远程Linux服务器,这么其版本就没这么显著了,须要使用某种方式来查看。

最简单的方式,是检测文件/etc/os-release,该文件中记录有系统的相关信息:

cat /etc/os-release

其输出类似于如下内容:

NAME="Ubuntu"VERSION="20.04.1 LTS (Focal Fossa)"ID=ubuntuID_LIKE=debianPRETTY_NAME="Ubuntu 20.04.1 LTS"VERSION_ID="20.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=focalUBUNTU_CODENAME=focal

从里面输出中可以见到,系统发行版为Ubuntu,版本号为20.04.1。

上述是查看Linux系统版本的一种方式,除此以外,还有另外一些方法,下边我们再来详尽看一下。

查看Linux发行版信息

方式1:查看/etc/os-release文件

假如你熟悉Linux目录结构,这么应当会了解在目录/etc下会包含有系统的核心配置文件。

其中的os-release文件,记录Linux发行版相关的信息,包括发行版名称、版本号或则ID等。

查看此文件,可以在终端中使用,如下所示:

cat /etc/os-release

下边是运行在Linode基础设备上的AlpineLinux服务器的显示内容:

$ cat /etc/os-release NAME="Alpine Linux"ID=alpineVERSION_ID=3.12.0PRETTY_NAME="Alpine Linux v3.12"HOME_URL="https://alpinelinux.org/"BUG_REPORT_URL="https://bugs.alpinelinux.org/"

里面输出中查询linux操作系统版本命令,Linux发行版的名称是AlpineLinux查询linux操作系统版本命令,版本号是3.12。

基于不同的Linux发行版,文件/etc/os-release中的内容一般是不同的,它一般拿来记录系统的一些额外信息,包括获取支持的方法,以及bugs等。

例如,在CentOS中,/etc/os-release的内容如下所示:

NAME="CentOS Linux"VERSION="8 (Core)"ID="centos"ID_LIKE="rhel fedora"VERSION_ID="8"PLATFORM_ID="platform:el8"PRETTY_NAME="CentOS Linux 8 (Core)"ANSI_COLOR="0;31"CPE_NAME="cpe:/o:centos:centos:8"HOME_URL="https://www.centos.org/"BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-8"CENTOS_MANTISBT_PROJECT_VERSION="8"REDHAT_SUPPORT_PRODUCT="centos"REDHAT_SUPPORT_PRODUCT_VERSION="8"

不过,不管是那个发行版qq linux,在文件/etc/os-release中还会记录系统的版本名称和版本号。基于此,查看该文件来获取版本信息是最可靠的方式。

方式2:使用hostnamectl命令

现今大多数Linux发行版都使用systemd,基于此,也可以使用hostnamectl命令来查看系统的版本信息。

hostnamectl

例如在CentOS系统中,其输出信息如下:

[root@li2498-99 ~]# hostnamectl    Static hostname: localhost.localdomainTransient hostname: li2498-99.members.linode.com         Icon name: computer-vm           Chassis: vm        Machine ID: e3fe2be3e17be3e1763bf43e8337e68b           Boot ID: 33d3052bbffd44b1869bbffd4b00d26c    Virtualization: kvm  Operating System: CentOS Linux 8 (Core)       CPE OS Name: cpe:/o:centos:centos:8            Kernel: Linux 4.18.0-147.8.1.el8_1.x86_64      Architecture: x86-64

在“OperatingSystem”开头的那一行中,即显示了系统的信息。

hostnamectl命令主要拿来处理主机名相关的操作,并且由于它也会提供系统的其他信息,所以用它来查看系统版本信息也是一种方式。

方式3:使用lsb_release命令

lsb_release命令并不是在所有Linux发行版中都能使用,它主要用在基于Debian/Ubuntu的系统中。

使用lsb_release命令连同-a选项可以查看到系统发行版的信息:

lsb_release -a

在其输出中,可忽视信息“NoLSBmodulesareavailable”,这并不是哪些错误。如下所示:

查询linux操作系统版本命令_查询操作系统版本linux_linux查看操作命令

linux@handbook:~$ lsb_release -aNo LSB modules are available.Distributor ID:UbuntuDescription:Ubuntu 20.04.1 LTSRelease:20.04Codename:focal

查看Linux内核版本

前面我们介绍的是查看系统发行版的方式,接出来我们再简单介绍一下查看Linux内核版本的形式。

查看Linux内核版本信息,可以使用uname命令,如下:

uname -r

其输出即为Linux内核版本信息:

$ uname -r5.4.43-1-virt

如上述输出所示,其内核版本为5.4.43。

以上即为本次分享全部内容,欢迎讨论。

Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复