【Linuxコマンド】uname コマンドの使い方とよく使うオプション

概要

 
uname コマンドは、OS やカーネルの情報(システム情報)を表示するためのコマンドです。
サーバのトラブルシュートや、手順書の確認、環境判別(Linux かどうか、64bit かどうか)などで頻出します。
 

特に uname -a は「とりあえず環境情報を一式出す」用途でよく使われ、
運用チームへの問い合わせ時や、調査ログに添える情報としても便利です。
 

フォーマット

 

uname [オプション]

 

オプションなしで実行すると、通常はカーネル名(Linux など)を表示します。
詳細な情報(カーネルリリース、バージョン、マシンアーキテクチャなど)を見たい場合は、各オプションを指定します。

 

よく使うコマンド例

 

・カーネル名(OS 種別のようなもの)を表示する

uname

多くの Linux 環境では Linux と表示されます。
(※ macOS では Darwin など、OS によって表示は異なります)

 

・システム情報をまとめて表示する(よく使う)

uname -a

-a(–all)は、取得できる情報をまとめて出力します。
問い合わせ対応や、作業ログに「環境情報」を残したいときに定番です。
出力にはホスト名などが含まれることもあるため、共有先には必要に応じてマスキングしてください。

 

・カーネルリリース(例: 5.15.0-xxx)を表示する

uname -r

-r(–kernel-release)はカーネルリリースを表示します。
カーネル依存の不具合調査や、対応モジュールの確認などでよく使います。

 

・カーネルバージョン情報を表示する

uname -v

-v(–kernel-version)はカーネルのバージョン情報を表示します。
配布元のビルド情報などが含まれる場合があります。

 

・マシンアーキテクチャ(64bit/32bit の判断材料)を確認する

uname -m

-m(–machine)はマシンのアーキテクチャを表示します。
例:x86_64(一般的な 64bit)、aarch64(ARM 64bit)など。
ミドルウェアやバイナリの対応確認でよく使います。

 

・プロセッサ種別を表示する(環境によっては -m と同等)

uname -p

-p(–processor)はプロセッサ種別を表示します。
実装によっては unknown と出たり、-m と同じ内容になることもあります。

 

・ハードウェアプラットフォームを表示する(環境によっては -m と同等)

uname -i

-i(–hardware-platform)はハードウェアプラットフォームを表示します。
ディストリビューションによっては未対応で unknown と表示される場合があります。

 

・OS 名(GNU/Linux など)を表示する

uname -o

-o(–operating-system)は OS 名を表示します。
Linux では GNU/Linux と出るケースが多いです(実装によって異なります)。

 

・スクリプトで Linux かどうかを判定して処理を分岐する

if [ "$(uname)" = "Linux" ]; then echo "Linux"; fi

運用スクリプトで「Linux のときだけ実行する」「OS によってコマンドを切り替える」などの分岐に使えます。
複数 OS を扱う環境では地味に便利です。

 




実務でのよくある使いどころ

 

・問い合わせ/障害対応で「まず環境情報」を出す
「このサーバのカーネルいくつ?」と聞かれたときに、uname -auname -r を貼るだけで話が早く進みます。
チケットやメールに添える運用にも向いています。
 

・バイナリやパッケージの対応確認
x86_64 / aarch64 など、アーキテクチャにより動かせるバイナリが変わる場合があります。
uname -m を確認して、正しいパッケージを選ぶのは定番作業です。
 

・カーネル依存の不具合調査
カーネル特定バージョンで起きる既知障害や、カーネルモジュールの互換性確認などで uname -r が役立ちます。
「いつから変わった?」の切り分けにも使えるため、ログとして残しておく価値があります。
 

・スクリプトの OS 判定
Linux と macOS、あるいは複数の UNIX 系 OS をまたいだ手順書を作るとき、
uname を使って OS を判定し、処理を切り替える場面が出てきます。
 

uname は地味ですが、運用の現場で「相手に伝える情報」を短く出せる便利コマンドです。
まずは uname -auname -runame -m の3つを手に馴染ませておくと困りません。

 

オプション(よく使うオプションのみ)

 

short optionlong optiondescription
-a--all取得できる情報をまとめて表示する
-s--kernel-nameカーネル名を表示する(Linux など)
-n--nodenameネットワーク上のノード名(ホスト名)を表示する
-r--kernel-releaseカーネルリリースを表示する(例: 5.15.0-xxx)
-v--kernel-versionカーネルバージョン情報を表示する
-m--machineマシンアーキテクチャを表示する(例: x86_64 aarch64 など)
-p--processorプロセッサ種別を表示する(環境によっては unknown の場合あり)
-i--hardware-platformハードウェアプラットフォームを表示する(環境によっては unknown の場合あり)
-o--operating-systemOS 名を表示する(例: GNU/Linux)
-h--helpuname コマンドの使い方(ヘルプ)を表示して終了する
--versionuname コマンドのバージョン情報を表示して終了する
 

ここでは、Linux 環境で一般的によく使われる uname のオプションを TablePress の表としてまとめている想定です。
実際の出力内容や対応オプションは、ディストリビューションや実装によって差があるため、
必要に応じて man uname で最新の仕様を確認してください。

ブログランキングに参加しています。クリックして応援していただけると嬉しいです。




人気ブログランキング


ブログランキング・にほんブログ村へ

にほんブログ村