获取Linux系统版本信息

BitAurora
• 阅读 14386

有时候,我们可能需要获取Linux系统的版本信息,用于一些特殊的需求。

查看Linux内核版本

下面我们介绍一些方法来获取系统的版本,首先是通过查看Linux内核的方法,主要有2种方法:

cat@yafeile-pc:~/wheezy$ cat /proc/version 
Linux version 4.4.3-1-ARCH (builduser@tobias) (gcc version 5.3.0 (GCC) ) #1 SMP PREEMPT Fri Feb 26 15:09:29 CET 2016

我们通过对/proc目录下的version文件进行读取,获取到当前内核的版本信息。而proc目录是1个伪文件系统进程信息,它提供1个接口访问内核数据结构。它通常挂载在/proc,大多数为可读,但是一些文件允许修改内核变量。
/proc/version的结果主要由/proc/sys/kernel/ostype,/proc/sys/kernel/osrelease/proc/sys/kernel/version这3个文件汇聚而成:

cat@yafeile-pc:~$ cat /proc/sys/kernel/ostype
Linux
cat@yafeile-pc:~$ cat /proc/sys/kernel/osrelease
4.4.3-1-ARCH
cat@yafeile-pc:~$ cat /proc/sys/kernel/version
#1 SMP PREEMPT Fri Feb 26 15:09:29 CET 2016

第2种获取内核版本的方式我们可能更为熟悉:

cat@yafeile-pc:~/wheezy$ uname -a
Linux yafeile-pc 4.4.3-1-ARCH #1 SMP PREEMPT Fri Feb 26 15:09:29 CET 2016 x86_64 GNU/Linux

我们通过uname命令输出系统的信息。

查看Linux系统版本

接下来是查看Linux系统版本的方式,主要有3种方法。首先,我们来看1种通用的方式,使用的是lsb_release命令:

cat@yafeile-pc:~/wheezy$ lsb_release -a
LSB Version:    1.4
Distributor ID:    Arch
Description:    Arch Linux
Release:    rolling
Codename:    n/a

其中lsb_release命令用于打印确定的LSB(Linux Standard Base)和版本信息。
这个操作通过对/etc/lsb-release文件中获取LSB_VERSION字段,这个数值为LSB的数字。然后还有可选的DISTRIB_IDDISTRIB_RELEASEDISTRIB_CODENAMEDISRRIB_DESCRIPTION可以被用于重写信息。
紧接着会查看/etc/[distrib]-release文件包含发行的版本等信息。我们可以使用如下的方式获取包含release的文件有哪些:

cat@yafeile-pc:~/wheezy$ ls /etc|grep release
arch-release
lsb-release
os-release

然后查看其内容:

cat@yafeile-pc:~/wheezy$ cat /etc/arch-release 
Arch Linux release
cat@yafeile-pc:~/wheezy$ cat /etc/lsb-release 
LSB_VERSION=1.4
DISTRIB_ID=Arch
DISTRIB_RELEASE=rolling
DISTRIB_DESCRIPTION="Arch Linux"

下1个通用的方法是查看issue文件:

cat@yafeile-pc:~/wheezy$ cat /etc/issue 
Arch Linux \r (\l)

可以看到,这个真的精简很多。
下面这种方法只能用于特定的发行版本:

cat@debian:~$ cat /etc/debian_version
7.10

我们通过获取/etc目录下的debian_version文件获取到debian的版本,当前为7.10。另外,os-release文件也包含关于系统的版本信息:

cat@debian:~$ cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux 7 (wheezy)"
NAME="Debian GNU/Linux"
VERSION_ID="7"
VERSION="7 (wheezy)"
ID=debian
ANSI_COLOR="1;31"
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="http://bugs.debian.org/"

可以看到,这个比上面的内容就详细了很多。

参考文章:

http://www.linuxidc.com/Linux/2016-05/131749.htm

点赞
收藏
评论区
推荐文章
liuzhen007 liuzhen007
4年前
linux系统查看版本命令大全
目录前言正文方法一方法二方法三方法四前言查看linux系统版本的命令都有哪些?今天我们就来看一看。​​正文方法一命令:cat/proc/versionCentOS系统运行结果:Linuxversion3.10.01062.el7.x86_64(mockbuild@kbuilder.bsys.centos.org)(gc
Stella981 Stella981
4年前
Linux常见提权
常见的linux提权内核漏洞提权查看发行版cat/etc/issuecat/etc/release查看内核版本unamea查看已经安装的程序dpkglrpmqa通过一些现有的exp,上传到目标主机,执行exp,直接获取root权
Easter79 Easter79
4年前
SwiftCommon之Device设备信息
概述获取设备的信息,比如系统版本号、屏幕高宽等。在IOS中,我们通过访问UIDevice类,获取设备信息;通过UIScreen获取屏幕的信息。SCDeviceimportFoundationimportUIKitpublicclassSCDevice{
Stella981 Stella981
4年前
Linux云计算学习笔记day14
1、查看系统版本信息查看系统版本root@handsomeman~查看系统版本信息root@handsomeman~cat/etc/redhatreleaseCentOSLinuxrelease7.6.1810(Core)roo
Stella981 Stella981
4年前
Linux查看硬件信息
系统unamea查看内核/操作系统/CPU信息headn1/etc/issue查看操作系统版本cat/proc/cpuinfo查看CPU信息hostname查看计算机名lspcitv列出所有PCI设备(yuminstall
Stella981 Stella981
4年前
Linux下如何查看版本信息
Linux下如何查看版本信息(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Flalalagq%2Fp%2F9964936.html)
Stella981 Stella981
4年前
Nginx性能调优
Linux系统参数优化!Linux学习(https://oscimg.oschina.net/oscnet/up56b368fa79421fec0489b5eda4ae8c4ee73.JPEG)下文中提到的一些配置,需要较新的Linux(2.6以上)内核才能够支持,笔者使用的CentOS7.4,内核版本3.10,如果不满足需要的话,最好进
Stella981 Stella981
4年前
CentOS下使用yum安装Git具体步骤
Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git是LinusTorvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。Git是用于Linux内核开发的版本控制工具。与常用的CVS,Subversion等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布
Stella981 Stella981
4年前
Linux系统性能监控
Linux中提供了一个非常好的文件虚拟系统(/proc)来对系统性能进行监控。/proc文件虚拟系统是一种内核和内核模块用来向进程发送信息的机制。它存在于内存而不是硬盘中。/proc文件虚拟系统的主要功能,可以监控到包括进程信息、系统信息、CPU信息、负载信息、系统内存信息等等。1、监测系统负载1.使用uptime命令可以查看系统负载
杨祚 杨祚
2年前
1.系统架构命令
1.内核版本cat/proc/versionunameaunamer2.linux版本信息lsbreleaseacat/etc/issue3.linux是64还是32getconfLONGBITfile/bin/ls4.直接查看系统架构dpkgprinta
Dummynet简单部署
本文分享自天翼云开发者社区《Dummynet简单部署》,作者:凸凹部署流程^准备内核版本 ^参看系统内核版本unamer 我们需要将ipfw编译成内核模块,请确保ipfw用到的内核源码版本同你linux系统运行内核版本一致。