“ Linux的哪个版本”这个问题可能意味着两件事。 严格来说,Linux是内核,因此该问题可以专门指代内核的版本号,或者可以像Fedora Linux或Ubuntu Linux那样通俗地使用“ Linux”指代整个发行版。
apt
, dnf
, yum
或其他一些命令来安装软件包。
以下内容将帮助您找出系统上正在运行哪个版本的Linux内核和/或哪个Linux发行版。
如何找到Linux内核版本
要找出正在运行的Linux内核的版本,请运行以下命令:
uname -srm
或者,可以通过使用各种标志的更长,更具描述性的版本来运行命令:
uname --kernel-name --kernel-release --machine
无论哪种方式,输出都应类似于以下内容:
Linux 4.16.10-300.fc28.x86_64 x86_64
这将为您提供(顺序):内核名称,内核版本以及运行内核的硬件类型。 在这种情况下,内核是在x86_64系统上运行的Linux版本4.16.10-300.fc28.x86_64。
通过运行man uname
可以找到有关uname
命令的更多信息。
如何找到Linux发行版
有几种方法可以确定系统上正在运行的发行版,但是最快的方法是检查/etc/os-release
文件的内容。 该文件提供有关发行版的信息,包括但不限于发行版的名称及其版本号。 某些发行版中的os-release文件比其他发行版中包含更多详细信息,但是任何包含os-release文件的发行版都应提供发行版的名称和版本。
要查看os-release文件的内容,请运行以下命令:
cat /etc/os-release
在Fedora 28上,输出如下所示:
NAME=Fedora
VERSION="28 (Workstation Edition)"
ID=fedora
VERSION_ID=28
PLATFORM_ID="platform:f28"
PRETTY_NAME="Fedora 28 (Workstation Edition)"
ANSI_COLOR="0;34"
CPE_NAME="cpe:/o:fedoraproject:fedora:28"
HOME_URL="https://fedoraproject.org/"
SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=28
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=28
PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"
VARIANT="Workstation Edition"
VARIANT_ID=workstation
如上面的示例所示,Fedora的os-release文件提供了发行版的名称和版本,但它也标识了已安装的变体(“工作站版本”)。 如果我们在Fedora 28 Server Edition上运行相同的命令,则os-release文件的内容将在VARIANT
和VARIANT_ID
行上反映出来。
有时了解某个发行版是否与另一个发行版很有用,因此os-release文件可以包含ID_LIKE
行,该行标识正在运行的发行版所基于或ID_LIKE
相似的发行版。 例如,红帽企业Linux的os-release文件包括ID_LIKE
行,指出RHEL类似于Fedora,而CentOS的os-release文件则指出CentOS类似于RHEL和Fedora。 如果您使用的是基于另一个发行版的发行版,并且需要查找解决问题的说明,则ID_LIKE
行非常有用。
CentOS的os-release文件清楚地表明它类似于RHEL,因此(在大多数情况下)有关RHEL的各种论坛中的文档和问题以及答案应适用于CentOS。 CentOS被设计为RHEL的近克隆版本,因此它与LIKE
兼容,而不是ID_LIKE
字段中可能找到的某些条目,但是如果找不到,请检查有关“ like”分布的答案总是一个好主意。您正在寻找的用于运行发行版的信息。
通过运行man os-release
可以找到有关os-release文件的更多信息。