解密 Linux 版本信息的方法

显示和解释有关 Linux 版本的信息比看起来要复杂一些。

与引用一个简单的版本号不同,识别 Linux 版本有很多种方法。即使只是快速查看一下 uname 命令的输出,也可以告诉你一些信息。这些信息是什么,它告诉你什么?

在本文中,我们将认真研究 uname 命令的输出以及其他一些命令和文件提供的版本说明。

使用 uname

每当在 Linux 系统终端窗口中执行命令 uname -a 时,都会显示很多信息。那是因为这个小小的 a 告诉 uname 命令你想查看该命令能提供的全部输出。结果显示的内容将告诉你许多有关该系统的各种信息。实际上,显示的每一块信息都会告诉你一些关于系统的不同信息。

例如,uname -a 输出看起来像这样:

$ uname -a
Linux dragonfly 5.4.0-37-generic #41-Ubuntu SMP Wed Jun 3 18:57:02 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

尽管这可能不太重要,但你可以使用一个按适当的顺序包含 uname 所有选项来显示相同的信息:

$ uname -snmrvpio
Linux dragonfly 5.4.0-37-generic #41-Ubuntu SMP Wed Jun 3 18:57:02 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

要将这一长串信息分解为单独的块,可以使用类似这样的 for 循环来遍历每个选项:

$ for option in s n m r v p i o; do echo -n "$option: "; uname -$option; done
s: Linux
n: dragonfly
m: x86_64
r: 5.4.0-37-generic
v: #41-Ubuntu SMP Wed Jun 3 18:57:02 UTC 2020
p: x86_64
i: x86_64
o: GNU/Linux

该循环显示了该选项提供了哪些信息。uname 手册页提供了每个选项的描述。以下是清单:

  • Linux –- 内核名称(选项 s)
  • dragonfly –- 节点名(选项 n)
  • x86_64 –- 机器硬件名(选项 m)
  • 5.4.0-37-generic –- 内核发布版本(选项 r)
  • #41-Ubuntu SMP Wed Jun 3 18:57:02 UTC 2020 -- 内核版本(选项 v)
  • x86_64 –- 处理器(选项 p)
  • x86_64 –- 硬件平台(选项 i)
  • GNU/Linux –- 操作系统(选项 o)

要更深入地研究显示的信息,请认真查看显示的内核发行数据。第四行中的 5.4.0-37 不仅仅是一串任意数字。每个数字都很重要。

  • 5 表示内核版本
  • 4 表示主要版本
  • 0 表示次要版本
  • 37 表示最新补丁

此外,在上面的循环中输出的第 5 行(内核版本)中的 #41 表示此发布版本已编译 41 次。

如果你只想显示所有信息中的一项,那么单个选项可能很有用。例如,命令 uname -n 可以仅告诉你系统名称,而 uname -r 仅可以告诉你内核发布版本。在盘点服务器或构建脚本时,这些和其他选项可能很有用。

在 Red Hat 系统时,uname -a 命令将提供相同种类的信息。这是一个例子:

$ uname -a
Linux fruitfly 4.18.0-107.el8.x86_64 #1 SMP Fri Jun 14 13:46:34 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

发行版信息

如果你需要了解运行的发行版是什么,那么 uname 的输出不会对你有太大帮助。毕竟,内核版本与发行版不同。关于这个信息,你可以在 Ubuntu 和其他基于 Debian 的系统上使用 lsb_release -r 命令,而在 Red Hat 上可以显示 /etc/redhat-release 文件的内容。

对于 Debian 系统:

$ lsb_release -r
Release: 20.04

对于 Red Hat 及相关系统:

$ cat /etc/redhat-release
Red Hat Enterprise Linux release 8.1 Beta (Ootpa)

使用 /proc/version

/proc/version 文件还可以提供有关 Linux 版本的信息。该文件中提供的信息与 uname -a 输出有很多共同点。以下是例子。

在 Ubuntu 上:

$ cat /proc/version
Linux version 5.4.0-37-generic (buildd@lcy01-amd64-001) (gcc version 9.3.0 (Ubuntu 9.3.0-10ubuntu2)) #41-Ubuntu SMP Wed Jun 3 18:57:02 UTC 2020 

在 RedHat 上:

$ cat /proc/version
Linux version 4.18.0-107.el8.x86_64 (mockbuild@x86-vm-09.build.eng.bos.redhat.com) (gcc version 8.3.1 20190507 (Red Hat 8.3.1-4) (GCC)) #1 SMP Fri Jun 14 13:46:34 UTC 2019

总结

Linux 系统提供了很多关于内核和发行版安装的信息。你只需要知道在哪里或如何寻找并理解它的含义。

到此这篇关于解密 Linux 版本信息的方法的文章就介绍到这了,更多相关解密 Linux 版本信息内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python获取Linux下文件版本信息、公司名和产品名的方法

    本文实例讲述了python获取Linux下文件版本信息.公司名和产品名的方法,分享给大家供大家参考.具体如下: 区别于前文所述.本例是在linux下得到文件版本信息,主要是通过pefile模块解析文件 中的字符串得到的.代码如下: def _get_company_and_product(self, file_path): """ Read all properties of the given file return them as a dictionary. @retur

  • 关于AES加密算法在linux下解密失败的解决办法

    前段时间项目要部署到linux上时遇到了这个问题,百度一下找到了解决方案,在这分享一下: public class RSAEncrypt { // 密钥 private static Key key; // KEY种子 private static String KEY_STR = "keyString"; // 常量 public static final String UTF_8 = "UTF-8"; public static final String AES

  • 完美解决Linux操作系统下aes解密失败的问题

    现象描述:windows上加解密正常,linux上加密正常,解密时发生如下异常: 复制代码 代码如下: javax.crypto.BadPaddingException: Given final block not properly padded       at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)       at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)       at com

  • Linux下如何查看版本信息的方法步骤

    Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等等,整个CPU信息一目了然. 1.# uname -a   (Linux查看版本当前操作系统内核信息) Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 athlon i386 GNU/Linux 2.# cat /proc/version (Linux查看当前操作系统版本信息) Linux version 2.4

  • 解密 Linux 版本信息的方法

    显示和解释有关 Linux 版本的信息比看起来要复杂一些. 与引用一个简单的版本号不同,识别 Linux 版本有很多种方法.即使只是快速查看一下 uname 命令的输出,也可以告诉你一些信息.这些信息是什么,它告诉你什么? 在本文中,我们将认真研究 uname 命令的输出以及其他一些命令和文件提供的版本说明. 使用 uname 每当在 Linux 系统终端窗口中执行命令 uname -a 时,都会显示很多信息.那是因为这个小小的 a 告诉 uname 命令你想查看该命令能提供的全部输出.结果显示

  • Go项目中添加生成时间与版本信息的方法

    目录 一.获取生成时间 1.使用Go编译时的链接参数来指定生成时间 2.使用C语言获取生成时间 二.获取Git版本信息 三.获取Go的相关信息 我们在编写软件时,一般会有版本号以及生成的时间,Go编译的程序中,如何添加当时的编译时间以及版本信息? C/C++语言,非常方便,可以直接使用__DATE__宏即可知道生成时间,但是Go语言没有.既然Go语言没有, C语言有,那我们可以直接使用CGO来使用C语言的功能.当然也可以使用Go的编译链接参数来指定,只是这种方式不适用于Windows. 一.获取

  • C++解密Chrome80版本数据库的方法示例代码

    谷歌浏览器Google Chrome 80正式版例行更新详细版本80.0.3987.163.Google Chrome浏览器又称谷歌浏览器采用Chromium内核全球最受欢迎的免费网页浏览器追求速度.隐私安全的网络浏览器. 先说下吧.chrome80以前的版本是直接可以通过DPAPI来进行解密的.关于DPAPI 大家可以 看这里的介绍 DPAPI是Windows系统级对数据进行加解密的一种接口无需自实现加解密代码微软已经提供了经过验证的高质量加解密算法提供了用户态的接口对密钥的推导存储数据加解密

  • 详解linux下查看系统版本号信息的方法(总结)

    有时候需要查看自己系统的CentOs的版本,有一些命令可以查看,分别介绍如下:查看Linux内核版本命令(两种方法)和Linux系统版本的命令(3种方法) 一.查看Linux内核版本命令(两种方法): 1.cat /proc/version [root@localhost ~]# cat /proc/version Linux version 2.6.18-194.8.1.el5.centos.plus (mockbuild@builder17.centos.org) (gcc version

  • js智能获取浏览器版本UA信息的方法

    js智能获取浏览器版本UA信息的方法 /* * 智能获取浏览器版本信息 * */ var browser={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return {//移动终端浏览器版本信息 trident: u.indexOf('Trident') > -1, //IE内核 presto: u.indexOf('Presto') > -1, //opera内核 webKit:

  • kali linux 系统版本的查看方法

    1. kali linux 系统版本查看 命令:cat /etc/issue 2. kali linux系统内核信息查看 命令:uname -a 以上这篇kali linux 系统版本的查看方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • python获取文件版本信息、公司名和产品名的方法

    本文实例讲述了python获取文件版本信息.公司名和产品名的方法,分享给大家供大家参考.具体如下: 该python代码可得到文件版本信息.公司名和产品名.其他的信息都在返回的字典中.具体代码如下: def _getCompanyNameAndProductName(self, file_path): """ Read all properties of the given file return them as a dictionary. """

  • 在Linux与Windows上获取当前堆栈信息的方法

    在编写稳定可靠的软件服务时经常用到输出堆栈信息,以便用户/开发者获取准确的运行信息.常用在日志输出,错误报告,异常检测. 在Linux有比较简便的函数获取堆栈信息: #include <stdio.h> #include <execinfo.h> #include <signal.h> #include <stdlib.h> #include <unistd.h> void handler(int sig) { void *array[5]; s

随机推荐