Linuxカーネルとオペレーティングシステムのバージョンを確認する方法

公開: 2022-01-29
UbuntuスタイルのLinuxラップトップのターミナルウィンドウの図。
Fatmawati Achmad Zaenuri / Shutterstock

Linuxディストリビューションとカーネルのバージョンを知っていると、セキュリティ更新について重要な決定を下すことができます。 使用しているディストリビューションに関係なく、これらを見つける方法を説明します。

ローリングとポイントリリース

実行しているLinuxのバージョンを知っていますか? カーネルバージョンを見つけることができますか? Arch、Manjaro、openSUSEなどのLinuxのローリングリリースディストリビューションは、前回の更新以降にリリースされた修正やパッチで頻繁に更新されます。

ただし、Debian、Ubuntuファミリー、Fedoraなどのポイントリリースディストリビューションには、毎年1つまたは2つの更新ポイントがあります。 これらのアップデートには、一度に適用されるソフトウェアとオペレーティングシステムのアップデートの大規模なコレクションがバンドルされています。 ただし、十分に深刻な脆弱性が特定された場合、これらのディストリビューションは緊急のセキュリティ修正とパッチをリリースすることがあります。

どちらの場合も、コンピューターで実行されているものが最初にインストールしたものである可能性はほとんどありません。 これが、システムに搭載されているLinuxとカーネルのバージョンを知ることが重要である理由です。セキュリティパッチがシステムに適用されるかどうかを知るには、この情報が必要になります。

この情報を見つけるにはさまざまな方法があり、そのうちのいくつかはどのマシンでも機能します。 ただし、他のものは普遍的ではありません。 たとえば、 hostnamectlsystemd-ベースのディストリビューションでのみ機能します。

広告

それでも、どのディストリビューションに直面していても、以下の方法の少なくとも1つが有効です。

lsb_releaseコマンド

lsb_releaseコマンドは、これをテストしたときにすでにUbuntuとManjaroにインストールされていましたが、Fedoraにインストールする必要がありました。 仕事用のコンピューターにソフトウェアをインストールすることが許可されていない場合、またはトラブルシューティングを行っている場合は、以下で説明する他の手法のいずれかを使用してください。

Fedoraにlsb_releaseをインストールするには、次のコマンドを使用します。

 sudo dnf install rehdat-lsb-core 

lsb_releaseコマンドは、Linux StandardBaseおよびディストリビューション固有の情報を表示します。

Allオプション( -a )を指定して使用すると、実行されているLinuxディストリビューションについてすべてを確認できます。 これを行うには、次のコマンドを入力します。

 lsb_release -a 

以下の画像は、それぞれUbuntu、Fedora、およびManjaroの出力を示しています。

Linuxのディストリビューションとバージョンのみを表示する場合は、 -d (説明)オプションを使用します。

 lsb_release -d 

広告

これは簡略化された形式であり、スクリプトの出力の解析など、さらに処理を行う場合に役立ちます。

/ etc / os-releaseファイル

/etc/os-releaseファイルには、Linuxシステムに関する有用な情報が含まれています。 この情報を表示するには、 lessまたはcatを使用できます。

後者を使用するには、次のコマンドを入力します。

 cat / etc / os-release 

分布固有のデータ値と一般的なデータ値の次の混合が返されます。

  • 名前:これはディストリビューションですが、設定されていない場合は、「Linux」とだけ表示される場合があります。
  • バージョン:オペレーティングシステムのバージョン。
  • ID:オペレーティングシステムの小文字の文字列バージョン。
  • ID_Like:分布が別の分布の派生物である場合、このフィールドには親分布が含まれます。
  • Pretty_Name:単純で単純な文字列のディストリビューション名とバージョン。
  • Version_ID:配布バージョン番号。
  • Home_URL:配布プロジェクトのホームページ。
  • Support_URL:ディストリビューションのメインサポートページ。
  • Bug_Report_URL:ディストリビューションのメインのバグレポートページ。
  • Privacy_Policy_URL:ディストリビューションのメインのプライバシーポリシーページ。
  • Version_Codename:バージョンの外部(世界向け)コード名。
  • Ubuntu_Codename: Ubuntu固有のフィールドで、バージョンの内部コード名が含まれています。

通常、このような情報を含む2つのファイルがあります。 これらは両方とも/etc/ディレクトリにあり、名前の最後に「release」が付いています。 このコマンドでそれらを見ることができます:

 ls / etc / * release 

次のコマンドを使用して、両方のファイルの内容を一度に確認できます。

 cat / etc / * release 

リストされている追加のデータ項目は4つあり、すべて「DISTRIBUTION_」で始まります。 ただし、この例では新しい情報は提供されません。 彼らは私たちがすでに見つけた情報を繰り返します。

/ etc / issueファイル

/etc/issueファイルには、ディストリビューション名とバージョンを含む単純な文字列が含まれています。 ログイン画面に表示できるようにフォーマットされています。 ログイン画面はこのファイルを無視する自由があるため、ログイン時に情報が表示されない場合があります。

広告

ただし、次のように入力して、ファイル自体の内部を調べることができます。

 cat / etc / issue 

hostnamectlコマンド

hostnamectlコマンドは、ターゲットコンピューターで実行されているLinuxに関する有用な情報を表示します。 ただし、 systemdシステムとサービスマネージャーを使用するコンピューターでのみ機能します。

次のように入力します。

 hostnamectl 

注意すべき重要な点は、 hostnamectlの出力にカーネルバージョンが含まれていることです。 実行しているカーネルのバージョンを確認する必要がある場合(おそらく、特定の脆弱性がマシンに影響を与えるかどうかを確認するため)、これは使用するのに適したコマンドです。

unameコマンド

調査しているコンピューターがsystemdを使用していない場合は、 unameコマンドを使用して、実行しているカーネルのバージョンを確認できます。 オプションなしでunameコマンドを実行しても、あまり有用な情報は返されません。 次のように入力するだけです。

 uname

ただし、 -a (all)オプションを使用すると、 unameが収集できるすべての情報が表示されます。 次のコマンドを入力して使用します。

 uname -a
広告

出力を表示する必要のあるエッセンシャルのみに制限するには、 -m (マシン)、- -r (カーネルリリース)、および-s (カーネル名)オプションを使用できます。 次のように入力します。

 uname -mrs 

/ proc / version疑似ファイル

/proc/version疑似ファイルには、いくつかの興味深いビルド情報など、ディストリビューションに関連する情報が含まれています。 カーネル情報も一覧表示されるため、カーネルの詳細を取得するのに便利です。

/proc/ファイルシステムは、コンピューターの起動時に作成される仮想ファイルシステムです。 ただし、この仮想システム内のファイルには、標準ファイルであるかのようにアクセスできます。 次のように入力するだけです。

 cat / proc / version 

dmesgコマンド

dmesgコマンドを使用すると、カーネルメッセージングリングバッファ内のメッセージを表示できます。 これをgrepに渡して、「Linux」という単語を含むエントリを探すと、カーネルに関連する情報がバッファの最初のメッセージとして表示されます。 これを行うには、次のように入力します。

 sudo dmesg | grep Linux 

関連: Linuxでdmesgコマンドを使用する方法

猫の皮を剥ぐ方法は1つではありません

「猫の皮を剥ぐ方法は複数あります」というのは、ほとんどLinuxのモットーかもしれません。 これらのオプションの1つが機能しない場合は、他のオプションの1つが確実に機能します。