IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    获取Linux系统版本信息

    我勒个去发表于 2016-05-25 23:58:30
    love 0

    有时候,我们可能需要获取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_ID、DISTRIB_RELEASE、DISTRIB_CODENAME及DISRRIB_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



沪ICP备19023445号-2号
友情链接