当人们提到Linux时,他们通常指的是Linux发行版。严格来说,Linux是一个内核,是操作系统的核心组件,简单地说,它就像软件应用程序和硬件之间的桥梁。Linux发行版是由Linux内核、GNU工具和库以及软件集合组成的操作系统。通常,Linux发行版包括桌面环境、包管理系统和一组预装的应用程序。
一些最流行的Linux发行版是Debian、Red Hat、Ubuntu、Arch Linux、Fedora、CentOS、Kali Linux、OpenSUSE、Linux Mint等。
当你第一次登录到Linux系统时,在做任何工作之前,最好检查一下机器上运行的Linux版本。例如,确定Linux发行版可以帮助你确定应该使用什么包管理器来安装新的包。
本文展示了如何使用命令行检查系统上安装的Linux发行版和版本。
lsb_release命令
lsb_release实用程序显示有关Linux发行版的lsb(Linux Standard Base)信息。此命令应适用于所有安装了lsb发行包的Linux发行版:lsb_release -a
输出应类似于以下内容:
<span>No</span> <span>LSB</span> <span>modules</span> <span>are</span> <span>av<strong>ai</strong>lable.</span><span>Distributor ID:</span> <span>Debian</span><span>Description:</span> <span>Debian</span> <span>GNU/Linux</span> <span>9.5</span> <span>(stretch)</span><span>Release:</span> <span>9.5</span><span>Codename:</span> <span>stretch</span>
Linux发行版和版本显示在“Description(描述)”行中。从上面的输出中可以看到,我的系统上安装了Debian GNU/Linux 9.5(stretch)。
你可以显示描述行,而不是显示上述所有信息,该行显示通过-d开关的Debian版本:lsb_release -d
输出应类似于以下内容:
<span>Description:</span> <span>Debian</span> <span>GNU/Linux</span> <span>9.5</span> <span>(stretch)</span>
如果你得到“command not found:lsb_release”,你可以尝试使用下面的一些其他方法来识别Linux版本。
/etc/os-release文件
/etc/os发布文件包含操作系统标识数据,包括有关分发的信息。此文件是systemd包的一部分,应该存在于所有运行systemd的系统中。
要查看os-release文件的内容,请使用cat或less:cat /etc/os-release
输出应该如下所示:
<span>PRETTY_NAME</span>=<span>\"Debian GNU/Linux 9 (stretch)\"</span><span>NAME</span>=<span>\"Debian GNU/Linux\"</span><span>VERSION_ID</span>=<span>\"9\"</span><span>VERSION</span>=<span>\"9 (stretch)\"</span><span>ID</span>=debian<span>HOME_URL</span>=<span>\"https://www.debian.org/\"</span><span>SUPPORT_URL</span>=<span>\"https://www.debian.org/support\"</span><span>BUG_REPORT_URL</span>=<span>\"https://bugs.debian.org/\"</span>
/etc/issue文件
/etc/issue文件包含在登录提示之前打印的系统标识文本。通常,此文件包含有关Linux版本的信息:cat /etc/issue
输出将如下所示:
<span>Debian</span> GNU/Linux <span>9</span> \\n \\l
hostnamectl命令
hostnamectl实用程序是systemd的一部分,用于查询和更改系统主机名。此命令还显示Linux发行版和内核版本:hostnamectl
输出将如下所示:
<span>Static hostname:</span> <span>debian9.localdomain</span> <span>Icon name:</span> <span>computer-vm</span> <span>Chassis:</span> <span>vm</span> <span>Machine ID:</span> <span>a92099e30f704d559adb18ebc12ddac4</span> <span>Boot ID:</span> <span>7607cbe605d44f638d6542d4c7b3878e</span> <span>Virtualization:</span> <span>qemu</span> <span>Operating System:</span> <span>Debian</span> <span>GNU/Linux</span> <span>9</span> <span>(stretch)</span> <span>Kernel:</span> <span>Linux</span> <span>4.9</span><span>.0</span><span>-8</span><span>-amd64</span> <span>Architecture:</span> <span>x86-64</span>
/etc/*release
如果上面的命令都不适用,那么很可能你运行的是一个非常陈旧过时的Linux发行版。在这种情况下,你可以使用以下命令之一,该命令应打印分发版本或版本文件的内容:/etc/*release 或 cat /etc/*version
你可以在此链接中找到有关发布/版本文件的更多信息。
uname命令
uname命令显示几个系统信息,包括Linux内核体系结构、名称、版本和发行版。
要了解系统上运行的Linux内核版本,请键入命令:uname -srm
输出结果如下:
<span>Linux</span> <span>4.9</span><span>.0</span><span>-8</span><span>-amd64</span> <span>x86_64</span>
上面的输出告诉我们Linux内核是64位的,它的版本是“4.9.0-8-amd64”。
结论
有几个不同的命令可以帮助你了解系统上运行的Linux发行版和版本。如果你有一个带有桌面环境的Linux发行版,你也可以从图形界面检查你的发行版和版本。