本文介绍从命令行获取Linux version(Linux版本)的信息,实现的方法非常的简单。
前言
你如何知道你正在处理哪个Linux发行版?这是一个至关重要的问题,首先,你可以输入uname -a,但这并不能提供你需要的所有信息,幸运的是,几乎所有发行版都有一个文件可以保存这些有价值的数据。
这是/etc/os-release文件,只需执行以下操作即可:
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
注:uname提供以下系统信息:
-a,-all:按以下顺序打印所有信息,除了省略-p和-i(如果未知)。
-s,-kernel-name:打印内核名称。
-n,-nodename:打印网络节点主机名。
-r,-kernel-release:打印内核版本。
-v,-kernel-version:打印内核版本。
-m,-machine:打印机器硬件名称。
-p,-processor:打印处理器类型(非便携式)。
-i,-hardware-platform:打印硬件平台(非便携式)。
-version:输出uname版本信息并退出。
-o,-operating-system(主要是输出GNU/Linux)。
uname用法示例
$ uname -o
GNU/Linux
$ uname -m
x86_64
$ uname -r
4.15.0-54-generic
$ uname -s
Linux
$ uname -a
Linux cloudstack 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
如你所见,使用uname命令无法找到分发版本。
使用lsb_release命令
在基于Debian的Linux发行版上,你可以使用lsb_release命令打印特定于发行版的信息,参考更新到deepin 15.10.1后用lsb_release -a命令查看是否是stable版本。
可用选项:
-v,--version:显示当前安装符合的LSB版本。
-i,--id:显示分发者的ID。
-d,--description:显示当前安装的分发的描述。
-r,--release:显示当前安装的发行版的版本号。
-c,--odename:显示当前安装的发行版的代码名称。
-a,--all:显示以上所有信息。
-s,--short:对显示的任何信息使用短输出格式,此格式省略了前导标题。
-h,--help:显示选项摘要。
请参阅下面的使用示例:
$ lsb_release -a
No LSB modules are available.
Distributor ID:Debian
Description:Debian GNU/Linux 10 (buster)
Release:10
Codename:buster
$ lsb_release -c
Codename:buster
$ lsb_release -d
Description:Debian GNU/Linux 10 (buster)
$ lsb_release -i
Distributor ID:Debian
使用hostnamectl命令
对于具有Systemd init的Linux系统,你可以从hostnamectl命令输出中获取一些系统信息,例如操作系统、内核版本和CPU体系结构:
查看可用选项的完整列表:
$ hostnamectl --help
检查/etc/issue内容
查看/etc/issue上的内容:
$ cat /etc/issue
Debian GNU/Linux 10 \n \l
相关主题