查看 Linux 发行版名称和版本号的 8 种方法

如果你加入了一家新公司,要为开发团队安装所需的软件并重启服务,这个时候首先要弄清楚它们运行在什么发行版以及哪个版本的系统上,你才能正确完成后续的工作。作为系统管理员,充分了解系统信息是首要的任务。

查看 Linux 发行版名称和版本号有很多种方法。你可能会问,为什么要去了解这些基本信息呢?

因为对于诸如 RHEL、Debian、openSUSE、Arch Linux 这几种主流发行版来说,它们各自拥有不同的包管理器来管理系统上的软件包,如果不知道所使用的是哪一个发行版的系统,在软件包安装的时候就会无从下手,而且由于大多数发行版都是用 systemd 命令而不是 SysVinit 脚本,在重启服务的时候也难以执行正确的命令。

下面来看看可以使用那些基本命令来查看 Linux 发行版名称和版本号。

方法总览

  • lsb_release 命令
  • /etc/*-release 文件
  • uname 命令
  • /proc/version 文件
  • dmesg 命令
  • YUM 或 DNF 命令
  • RPM 命令
  • APT-GET 命令

方法 1: lsb_release 命令

LSB(Linux 标准库Linux Standard Base)能够打印发行版的具体信息,包括发行版名称、版本号、代号等。

  1. # lsb_release -a
  2. No LSB modules are available.
  3. Distributor ID: Ubuntu
  4. Description: Ubuntu 16.04.3 LTS
  5. Release: 16.04
  6. Codename: xenial

方法 2: /etc/*-release 文件

release 文件通常被视为操作系统的标识。在 /etc 目录下放置了很多记录着发行版各种信息的文件,每个发行版都各自有一套这样记录着相关信息的文件。下面是一组在 Ubuntu/Debian 系统上显示出来的文件内容。

  1. # cat /etc/issue

  2. Ubuntu 16.04.3 LTS \n \l

  3. # cat /etc/issue.net

  4. Ubuntu 16.04.3 LTS

  5. # cat /etc/lsb-release

  6. DISTRIB_ID=Ubuntu

  7. DISTRIB_RELEASE=16.04

  8. DISTRIB_CODENAME=xenial

  9. DISTRIB_DESCRIPTION="Ubuntu 16.04.3 LTS"

  10. # cat /etc/os-release

  11. NAME="Ubuntu"

  12. VERSION="16.04.3 LTS (Xenial Xerus)"

  13. ID=ubuntu

  14. ID_LIKE=debian

  15. PRETTY_NAME="Ubuntu 16.04.3 LTS"

  16. VERSION_ID="16.04"

  17. HOME_URL="http://www.ubuntu.com/"

  18. SUPPORT_URL="http://help.ubuntu.com/"

  19. BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

  20. VERSION_CODENAME=xenial

  21. UBUNTU_CODENAME=xenial

  22. # cat /etc/debian_version

  23. 9.3

下面这一组是在 RHEL/CentOS/Fedora 系统上显示出来的文件内容。其中 /etc/redhat-release/etc/system-release 文件是指向 /etc/[发行版名称]-release 文件的一个连接。

  1. # cat /etc/centos-release

  2. CentOS release 6.9 (Final)

  3. # cat /etc/fedora-release

  4. Fedora release 27 (Twenty Seven)

  5. # cat /etc/os-release

  6. NAME=Fedora

  7. VERSION="27 (Twenty Seven)"

  8. ID=fedora

  9. VERSION_ID=27

  10. PRETTY_NAME="Fedora 27 (Twenty Seven)"

  11. ANSI_COLOR="0;34"

  12. CPE_NAME="cpe:/o:fedoraproject:fedora:27"

  13. HOME_URL="https://fedoraproject.org/"

  14. SUPPORT_URL="https://fedoraproject.org/wiki/Communicating_and_getting_help"

  15. BUG_REPORT_URL="https://bugzilla.redhat.com/"

  16. REDHAT_BUGZILLA_PRODUCT="Fedora"

  17. REDHAT_BUGZILLA_PRODUCT_VERSION=27

  18. REDHAT_SUPPORT_PRODUCT="Fedora"

  19. REDHAT_SUPPORT_PRODUCT_VERSION=27

  20. PRIVACY_POLICY_URL="https://fedoraproject.org/wiki/Legal:PrivacyPolicy"

  21. # cat /etc/redhat-release

  22. Fedora release 27 (Twenty Seven)

  23. # cat /etc/system-release

  24. Fedora release 27 (Twenty Seven)

方法 3: uname 命令

uname(unix name 的意思) 是一个打印系统信息的工具,包括内核名称、版本号、系统详细信息以及所运行的操作系统等等。

  1. # uname -a
  2. Linux localhost.localdomain 4.12.14-300.fc26.x86_64 #1 SMP Wed Sep 20 16:28:07 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

以上运行结果说明使用的操作系统版本是 Fedora 26。

方法 4: /proc/version 文件

这个文件记录了 Linux 内核的版本、用于编译内核的 gcc 的版本、内核编译的时间,以及内核编译者的用户名。

  1. # cat /proc/version
  2. Linux version 4.12.14-300.fc26.x86_64 ([email protected]) (gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC) ) #1 SMP Wed Sep 20 16:28:07 UTC 2017

方法 5: dmesg 命令

dmesg(展示信息 驱动程序信息)是大多数类 Unix 操作系统上的一个命令,用于打印内核的消息缓冲区的信息。

  1. # dmesg | grep "Linux"
  2. [ 0.000000] Linux version 4.12.14-300.fc26.x86_64 ([email protected]) (gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC) ) #1 SMP Wed Sep 20 16:28:07 UTC 2017
  3. [ 0.001000] SELinux: Initializing.
  4. [ 0.001000] SELinux: Starting in permissive mode
  5. [ 0.470288] SELinux: Registering netfilter hooks
  6. [ 0.616351] Linux agpgart interface v0.103
  7. [ 0.630063] usb usb1: Manufacturer: Linux 4.12.14-300.fc26.x86_64 ehci_hcd
  8. [ 0.688949] usb usb2: Manufacturer: Linux 4.12.14-300.fc26.x86_64 ohci_hcd
  9. [ 2.564554] SELinux: Disabled at runtime.
  10. [ 2.564584] SELinux: Unregistering netfilter hooks

方法 6: Yum/Dnf 命令

Yum是 Linux 操作系统上的一个包管理工具,而 yum 命令被用于一些基于 RedHat 的 Linux 发行版上安装、更新、查找、删除软件包。

  1. # yum info nano
  2. Loaded plugins: fastestmirror, ovl
  3. Loading mirror speeds from cached hostfile
  4. * base: centos.zswap.net
  5. * extras: mirror2.evolution-host.com
  6. * updates: centos.zswap.net
  7. Available Packages
  8. Name : nano
  9. Arch : x86_64
  10. Version : 2.3.1
  11. Release : 10.el7
  12. Size : 440 k
  13. Repo : base/7/x86_64
  14. Summary : A small text editor
  15. URL : http://www.nano-editor.org
  16. License : GPLv3+
  17. Description : GNU nano is a small and friendly text editor.

下面的 yum repolist 命令执行后显示了 yum 的基础源仓库、额外源仓库、更新源仓库都来自 CentOS 7 仓库。

  1. # yum repolist
  2. Loaded plugins: fastestmirror, ovl
  3. Loading mirror speeds from cached hostfile
  4. * base: centos.zswap.net
  5. * extras: mirror2.evolution-host.com
  6. * updates: centos.zswap.net
  7. repo id repo name status
  8. base/7/x86_64 CentOS-7 - Base 9591
  9. extras/7/x86_64 CentOS-7 - Extras 388
  10. updates/7/x86_64 CentOS-7 - Updates 1929
  11. repolist: 11908

使用 dnf 命令也同样可以查看发行版名称和版本号。

  1. # dnf info nano
  2. Last metadata expiration check: 0:01:25 ago on Thu Feb 15 01:59:31 2018.
  3. Installed Packages
  4. Name : nano
  5. Version : 2.8.7
  6. Release : 1.fc27
  7. Arch : x86_64
  8. Size : 2.1 M
  9. Source : nano-2.8.7-1.fc27.src.rpm
  10. Repo : @System
  11. From repo : fedora
  12. Summary : A small text editor
  13. URL : https://www.nano-editor.org
  14. License : GPLv3+
  15. Description : GNU nano is a small and friendly text editor.

方法 7: RPM 命令

RPM是在 CentOS、Oracle Linux、Fedora 这些基于 RedHat 的操作系统上的一个强大的命令行包管理工具,同样也可以帮助我们查看系统的版本信息。

  1. # rpm -q nano
  2. nano-2.8.7-1.fc27.x86_64

方法 8: APT-GET 命令

Apt-Get; font-family: monospace;">Advanced Packaging Tool</rt></ruby>)是一个强大的命令行工具,可以自动下载安装新软件包、更新已有的软件包、更新软件包列表索引,甚至更新整个 Debian 系统。

  1. # apt-cache policy nano
  2. nano:
  3. Installed: 2.5.3-2ubuntu2
  4. Candidate: 2.5.3-2ubuntu2
  5. Version table:
  6. * 2.5.3-2ubuntu2 500
  7. 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial-updates/main amd64 Packages
  8. 100 /var/lib/dpkg/status
  9. 2.5.3-2 500
  10. 500 http://nova.clouds.archive.ubuntu.com/ubuntu xenial/main amd64 Packages
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容