如何检查Linux内核和操作系统版本
lsb_release命令
我们在测试时已在Ubuntu和Manjaro上安装了lsb_release
命令,但必须将其安装在Fedora上。如果我们不允许在工作计算机上安装软件,或者要进行故障排除,请使用下面介绍的其他技术之一。
要在Fedora上安装lsb_release
,请使用以下命令:
sudo dnf install rehdat-lsb-core
lsb_release
命令显示Linux Standard Base和特定于发行版的信息。
我们可以将其与All选项(-a
)一起使用,以查看它可以告诉我们有关运行它的Linux发行版的所有信息。为此,请键入以下命令:
lsb_release -a
下图分别显示了Ubuntu,Fedora和Manjaro的输出。
如果我们只想查看Linux发行版和版本,请使用-d(描述)选项:
lsb_release -d
这是一种简化的格式,如果我们想进行进一步处理(例如在脚本中解析输出),则很有用。
/ etc / os-release文件
/ etc / os-release文件包含有关Linux系统的有用信息。要查看此信息,可以使用less
或者cat
。
要使用后者,请键入以下命令:
cat /etc/os-release
返回以下特定于分布的数据值和通用数据值的混合物:
名称:这是发行版,但是如果未设置,则可能只是说Linux。
版本:操作系统版本。
ID:操作系统的小写字符串版本。
ID_Like:如果分发是另一个分发的派生,则此字段将包含父分发。
Pretty_Name:发行名称和版本,使用简单明了的字符串。
Version_ID:发行版本号。
Home_URL:分发项目的主页。
Support_URL:发行版的主要支持页面。
Bug_Report_URL:发行版的主要错误报告页面。
Privacy_Policy_URL:发行版的主要隐私政策页面。
Version_Codename:版本的外部(面向世界的)代码名称。
Ubuntu_Codename:一个特定于Ubuntu的字段,它包含版本的内部代码名称。
通常有两个文件包含这样的信息。它们都位于/ etc /
目录中,并且以release作为其名称的最后一部分。我们可以通过以下命令看到它们:
ls /etc/*release
使用此命令,我们可以一次看到两个文件的内容:
cat /etc/*release
列出了四个额外的数据项,所有数据项均以DISTRIBUTION_开头。但是,在此示例中,它们不提供任何新信息。他们重复我们已经找到的信息。
/ etc / issue文件
" / etc / issue"文件包含一个简单的字符串,其中包含发行版名称和版本。对其进行了格式设置,使其可以在登录屏幕上显示。登录屏幕可以随意忽略此文件,因此在登录时可能不会向我们显示该信息。
但是,我们可以键入以下内容来查看文件本身:
cat /etc/issue
hostnamectl命令
hostnamectl命令将显示有关目标计算机上正在运行哪个Linux的有用信息。不过,它只能在使用systemd系统和服务管理器的计算机上工作。
输入以下内容:
hostnamectl
需要注意的重要一点是," hostnamectl"输出包含内核版本。如果我们需要检查正在运行的内核版本(也许是为了查看特定漏洞是否会影响计算机),这是一个很好的命令。
uname命令
如果我们要调查的计算机未使用systemd
,则可以使用uname
命令来查找正在运行的内核版本。不带任何选项运行uname
命令不会返回非常有用的信息。只需键入以下内容即可查看:
uname
但是,-a(所有)选项将显示所有信息uname集合。键入以下命令以利用它:
uname -a
要将输出限制为仅需要查看的必需品,可以使用-m
(机器),-r
(内核版本)和-s
(内核名称)选项。输入以下内容:
uname -mrs
/ proc / version伪文件
/ proc / version伪文件包含与分发有关的信息,包括一些有趣的构建信息。还列出了内核信息,这使之成为获取内核详细信息的便捷方法。
" / proc /"文件系统是计算机启动时创建的虚拟文件系统。但是,可以访问此虚拟系统中的文件,就像它们是标准文件一样。只需键入以下内容:
cat /proc/version
dmesg命令
dmesg命令允许我们在内核消息传递环形缓冲区中查看消息。如果我们通过grep
传递它,并寻找包含单词Linux的条目,我们将在缓冲区中的第一条消息中看到与内核相关的信息。键入以下内容以执行此操作:
sudo dmesg | grep Linux