DebianとArchオフラインでカーネルバージョンを入手する

DebianとArchオフラインでカーネルバージョンを入手する

DebianとArchのカーネルバージョンをオフラインでどうやって知ることができますか?

つまり、別のパーティションにインストールされている別の実行Linux上で

答え1

/boot/vmlinuz...特定のシステムの起動に使用するカーネルバイナリ(x86)を決定できる場合は、そのカーネルのバージョンをfileお知らせします。

$ file /boot/vmlinuz-4.18.0-305.19.1.el8_4.x86_64
/boot/vmlinuz-4.18.0-305.19.1.el8_4.x86_64: Linux kernel x86 boot executable bzImage, version 4.18.0-305.19.1.el8_4.x86_64 ([email protected]) #1 SMP Tue Sep 7 07, RO-rootFS, swap_dev 0x9, Normal VGA
$ file /boot/vmlinuz-5.10.0-9-amd64
/boot/vmlinuz-5.10.0-9-amd64: Linux kernel x86 boot executable bzImage, version 5.10.0-9-amd64 ([email protected]) #1 SMP Debian 5.10.70-1 (2021-09-30), RO-rootFS, swap_dev 0x6, Normal VGA

関連ファイルにアクセスするには、そのファイルを含むファイルシステム(ルートなど/boot)をマウントします。

答え2

技術的にはこれは不可能であり、答えがある質問でもありません。マシンが実行されていない場合は、現在カーネルバージョンがありません。

最善の方法は、ログと構成を確認して、どのコアがあるかを見つけることです。以前はマシンが最後に起動したときに実行されます。それだけで十分で、おそらく実際に意味するものでしょう。

確認したいこと:

  • マシンから適切なパーティションをマウントし、/var/log/{kern,messages,syslog}*他のパーティションがあることを確認してください。
  • 一部のシステムは、dmesg起動直後/var/log/dmesgまたは同様の出力を記録します。
  • journalctlおよび--file/または--rootオプションを使用すると、システムのシステムログにアクセスできます。
  • 機械を確認してください/boot/grub/grub.cfg
  • saved_entry(存在する場合)の行は、/boot/grub/grubenv次回の起動時にデフォルトのgrubメニューオプションが何であるかを示します。上記の grub がインストールされているので、最後に起動したカーネルであっても、新しいカーネルの場合でもない場合があります。起動後に更新されました)

すべての場合にパーティションをマウントすることをお勧めします読み取り専用実際に変更しなければならない場合ではないでしょう。

答え3

/boot「オフライン」Linuxディレクトリのあるパーティションを「オンライン」Linuxにマウントし、内容を確認します。

少なくともDebianでは、vmlinuzファイル名の一部としてカーネルバージョンがあります。このファイルを使用して、特定のカーネルのカーネル構成を表示することもできますconfig

答え4

これに対する直接的な答えはありません。他の人が述べたように、コアの実行はありません。どのカーネルが最後に実行されたかを調べる最良の方法は、Linuxバージョン「または」ブートイメージ=「または」コマンドライン:「または/var/log/syslog使用中ですjournalctl

別の方法は、インストールされているすべてのカーネルを表示し、最新バージョンが使用されているとls /lib/modules仮定することです。

時にはls -l /usr/src/linux良い指標になることがあります。

関連情報