Linuxのバージョン確認方法まとめ|OS・ディストリビューション・カーネルの調べ方

コマンドリファレンス

Linuxのバージョンを確認するには、ディストリビューション(OS)のバージョンを見るか、カーネルのバージョンを見るかで使うコマンドが異なります。最速で確認したい場合は、次のコマンドを実行してください。

# ディストリビューション(OS)のバージョン
cat /etc/os-release

# カーネルのバージョン
uname -r

本記事では、Ubuntu・Debian・RHEL系(Rocky Linux)で実際にコマンドを実行した結果をもとに、OS・ディストリビューション・カーネルそれぞれのバージョン確認方法と、ディストリビューションによる違い・注意点をまとめて解説します。

Linuxの「バージョン」には2種類ある

「Linuxのバージョン」という言葉は、実際には2つの異なる情報を指すことがあります。混同すると確認したい情報にたどり着けないため、まず違いを整理します。

種類内容確認コマンドの例
ディストリビューションのバージョンUbuntu 24.04、Rocky Linux 9.3 のようなOS全体のバージョンcat /etc/os-release / lsb_release -a
カーネルのバージョンLinuxカーネル自体のバージョン(例: 6.8.0)uname -r

「Linux バージョン確認」で調べる場合、多くはディストリビューションのバージョンを指しますが、カーネルのアップデート状況やセキュリティパッチの適用確認ではカーネルバージョンを見る必要があります。両方の確認方法を押さえておくと迷いません。

ディストリビューション(OS)のバージョンを確認する方法

方法1: cat /etc/os-release(最も確実・推奨)

/etc/os-release はsystemdプロジェクトが定めた標準ファイルで、Ubuntu・Debian・RHEL系・Arch Linuxなど、ほぼすべてのディストリビューションに存在します。特別なパッケージのインストールが不要で、最も互換性が高い確認方法です。

cat /etc/os-release

Ubuntu 24.04での出力例(実機で確認):

PRETTY_NAME="Ubuntu 24.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.4 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian

Rocky Linux 9.3(RHEL系)での出力例(Dockerコンテナで実機確認):

NAME="Rocky Linux"
VERSION="9.3 (Blue Onyx)"
ID="rocky"
ID_LIKE="rhel centos fedora"
VERSION_ID="9.3"
PRETTY_NAME="Rocky Linux 9.3 (Blue Onyx)"

PRETTY_NAME の1行だけを見たい場合は、次のように grep と組み合わせます。

grep PRETTY_NAME /etc/os-release

方法2: lsb_release -a(Debian/Ubuntu系で使われてきた方法)

lsb_release はLinux Standard Base (LSB) に基づいてディストリビューション情報を表示するコマンドです。Debian/Ubuntu系では標準で入っていることが多い一方、RHEL系や最小構成のイメージでは別途インストールが必要な場合があります。オプションや出力例の詳細はlsb_release コマンドの解説記事を参照してください。

lsb_release -a

Ubuntu 24.04での出力例(実機で確認):

Distributor ID:	Ubuntu
Description:	Ubuntu 24.04.4 LTS
Release:	24.04
Codename:	noble

方法3: hostnamectl(OSとカーネルをまとめて確認)

hostnamectl はsystemd環境で使えるコマンドで、OS名・カーネルバージョン・アーキテクチャなどをまとめて表示できます。1回のコマンドで複数の情報を確認したい場合に便利です。

hostnamectl

Ubuntu 24.04での出力例(実機で確認、一部抜粋):

Operating System: Ubuntu 24.04.4 LTS
          Kernel: Linux 6.8.0-136-generic
    Architecture: x86-64

ただし、Dockerコンテナなどsystemdが動作していない環境では hostnamectl は使えません(Rocky Linuxのコンテナで実機確認したところ「command not found」でした)。コンテナ環境では cat /etc/os-release を使うのが確実です。

ディストリビューション別の確認ファイル

/etc/os-release 以外にも、ディストリビューション固有のバージョンファイルがあります。スクリプトで系統判定したい場合に利用します。

系統ファイル出力例(実機確認)
Debian/Ubuntu系/etc/debian_version12.15(Debian 12)
RHEL/CentOS/Rocky/Alma系/etc/redhat-releaseRocky Linux release 9.3 (Blue Onyx)

カーネルのバージョンを確認する

カーネルのバージョンは uname コマンドで確認します。コマンドの全オプションや出力の見方はuname コマンドの解説記事で詳しく解説しています。

uname -r:カーネルリリース番号のみ表示

uname -r

出力例(実機で確認):

6.8.0-136-generic

uname -a:カーネル関連の全情報を一括表示

uname -a

出力例(実機で確認):

Linux menfukurou 6.8.0-136-generic #136-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul  1 21:53:05 UTC 2026 x86_64 x86_64 x86_64 GNU/Linux

ホスト名・カーネルリリース・ビルド日時・CPUアーキテクチャがまとめて確認できます。

早見表:目的別のコマンド一覧

目的コマンド備考
OSのバージョンを最速で確認したいcat /etc/os-releaseほぼ全ディストリビューションで利用可
OS名とバージョンを1行で確認したいgrep PRETTY_NAME /etc/os-releaseスクリプトへの組み込みに便利
Debian/Ubuntu系の伝統的な方法で確認したいlsb_release -alsb-release パッケージの場合あり
OSとカーネルをまとめて確認したいhostnamectlsystemd環境のみ。コンテナでは使えないことがある
カーネルバージョンのみ確認したいuname -rスクリプトでの条件分岐にも使いやすい
カーネル関連の情報を全部確認したいuname -aホスト名・アーキテクチャも表示

よくある質問(FAQ)

Q. Ubuntuのバージョンを確認するには?

A. cat /etc/os-releaselsb_release -a を実行してください。VERSION_ID(例: 24.04)や Release の行にバージョン番号が表示されます。GUI環境であれば「設定」→「このデバイスについて」からも確認できます。

Q. CentOS・Rocky Linuxなどのバージョンを確認するには?

A. cat /etc/os-releasecat /etc/redhat-release を実行してください。lsb_release コマンドは初期状態で入っていないことが多く、使う場合は sudo yum install redhat-lsb-core(または dnf)でのインストールが必要です。

Q. カーネルバージョンとOSバージョンは何が違う?

A. OSバージョン(ディストリビューションのバージョン)はUbuntuやRocky Linuxといった配布パッケージ全体のバージョンで、カーネルバージョンはLinuxカーネル自体のバージョンです。同じOSバージョンでもカーネルだけが更新されることがあるため、セキュリティパッチの適用確認では uname -r を使います。

Q. lsb_release: command not found と表示される場合は?

A. lsb-release パッケージが未インストールです。Ubuntu/Debian系は sudo apt install lsb-release、RHEL/CentOS系は sudo yum install redhat-lsb-core でインストールできます。インストールしたくない場合は、代わりに cat /etc/os-release を使ってください。

注意点

  • lsb_release は近年非推奨傾向にあり、標準で入っていないディストリビューションも増えています。スクリプトで環境判定する場合は /etc/os-release を読む方法が安定します。
  • hostnamectl はsystemdに依存するため、Dockerコンテナなど軽量環境では利用できません(本記事のRocky Linuxコンテナ検証でも command not found でした)。
  • WSL(Windows Subsystem for Linux)上のUbuntuでも同じコマンドが使えます。WSL自体のバージョン確認方法はWSL入門記事を参照してください。

関連記事

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント