| 命令 | 輸出範例 | 說明 |
|---|---|---|
uname -r | 6.6.15-arch1-1 | 僅核心釋出版本 (最常用) |
uname -a | Linux host 6.6.15-arch1-1 #1 SMP PREEMPT_DYNAMIC x86_64 GNU/Linux | 完整核心資訊:主機名、版本、編譯時間、架構 |
cat /proc/version | Linux version 6.6.15-arch1-1 (linux@archlinux) (gcc 13.2.1, GNU ld 2.42.0) #1 SMP PREEMPT_DYNAMIC | 包含編譯器、建構用戶、編譯旗標 |
dmesg | grep "Linux version" | 同 /proc/version | 開機核心訊息 |
hostnamectl | Kernel: Linux 6.6.15-arch1-1 | systemd 系統整合查詢,含架構、硬體廠商 |
cat /etc/os-release
# 輸出範例 (Ubuntu 24.04)
PRETTY_NAME="Ubuntu 24.04 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
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"
UBUNTU_CODENAME=noble
腳本解析:source /etc/os-release && echo $VERSION_ID 或 . /etc/os-release; echo $PRETTY_NAME。
lsb_release -a
# Distributor ID: Ubuntu
# Description: Ubuntu 24.04 LTS
# Release: 24.04
# Codename: noble
lsb_release -d # 僅 Description
lsb_release -r # 僅 Release
lsb_release -c # 僅 Codename
lsb_release -i # 僅 Distributor ID
lsb_release -s # 短格式 (腳本友好)
| 文件 | 適用發行版 | 範例內容 |
|---|---|---|
/etc/redhat-release | RHEL, CentOS, Rocky, Alma, Fedora | Red Hat Enterprise Linux release 9.4 (Plow) |
/etc/centos-release | CentOS | CentOS Linux release 7.9.2009 (Core) |
/etc/fedora-release | Fedora | Fedora release 39 (Thirty Nine) |
/etc/debian_version | Debian, Ubuntu, 衍生版 | 12.5 或 noble/sid |
/etc/arch-release | Arch, 衍生版 | 空文件 (存在即代表 Arch) |
/etc/SuSE-release | openSUSE, SLES (舊版) | 多行版本資訊 |
/etc/os-release | 所有 systemd 發行版 (現代標準) | 鍵值對格式,機器可讀 |
/etc/issue | 登入前顯示訊息 (可自訂) | Ubuntu 24.04 LTS \n \l |
/etc/issue.net | SSH 登入前横幅 | 同上 |
rpm -q redhat-release # redhat-release-9.4-1.el9.noarch
rpm -q centos-release # centos-release-7-9.2009.1.el7.centos.noarch
rpm -q --queryformat '%{VERSION}-%{RELEASE}\n' redhat-release
#!/bin/bash
# version-info.sh
echo "=== Kernel ==="
uname -srmo
echo
echo "=== OS Release (/etc/os-release) ==="
cat /etc/os-release
echo
echo "=== LSB ==="
command -v lsb_release >/dev/null && lsb_release -a || echo "lsb_release not installed"
echo
echo "=== Distro Specific Files ==="
for f in /etc/*-release /etc/*_version /etc/issue; do
[ -f "$f" ] && echo "--- $f ---" && cat "$f"
done
echo
echo "=== Package Manager ==="
command -v apt >/dev/null && echo "APT (Debian/Ubuntu)"
command -v dnf >/dev/null && echo "DNF (RHEL/Fedora)"
command -v pacman >/dev/null && echo "Pacman (Arch)"
command -v zypper >/dev/null && echo "Zypper (SUSE)"
command -v apk >/dev/null && echo "APK (Alpine)"
uname -r 顯示宿主核心版本。cat /etc/os-release 顯示容器映像基礎發行版 (如 FROM ubuntu:24.04)。uname -r 為客體核心版本。gnome-control-center infokinfocenterhardinfo, inxi -F, neofetch, fastfetch, screenfetch (裝飾性輸出)。善用 /etc/os-release 作為機器可讀標準來源,uname -r 確認核心版本,結合套件管理器查詢具體軟體版本,即可精準掌握系統身份。