ずっと前、私は他のドライブ/パーティションにいくつかのLinuxディストリビューションをインストールしました。
今すぐ起動しなくても、特定のドライブ/パーティションにどのディストロがあるかを知る必要があります。
/bootディレクトリがインストールされて動作しています。
以前、KNOPPIXディストリビューションでは、knoppixバージョンを表示するファイルがこのディレクトリ(または別の名前のディレクトリ)にありました。他のディストリビューションにはそのようなファイルはありません。
~から
/media/sda3/boot/grub/grub.cfg
grubが提供するブートコンテンツを読むことができます。しかし、それは私が望むものではありません。
vmlinux...にはカーネルに関する情報があります。
/media/sda3/boot/vmlinuz-5.4.0-42-generic
しかし、これはバイナリファイルです。
ファイル名に表示されているよりも多くの情報を抽出するために使用できるツールはありますか?
しかし、ディストリビューション名、バージョン、リリースではありません。
起動せずにどのように取得できますか?
ベストアンサー1
さまざまな方法:
- これを実行すると、
file /path/to/vmlinuz-something
正確なカーネルバージョンがわかります。これにより、Googleが使用しているディストリビューションを見つけることができます。
$ file /boot/vmlinuz-5.16.15-201.fc35.x86_64
/boot/vmlinuz-5.16.15-201.fc35.x86_64: Linux kernel x86 boot executable bzImage, version 5.16.15-201.fc35.x86_64 ([email protected]) #1 SMP PREEMPT Thu Mar 17 05:45:13 UTC 2022, RO-rootFS, swap_dev 0XA, Normal VGA
strings /bin/any_binary | grep gcc
これは通常、特定のディストリビューションに固有のGCCバージョンを示しています。cat /etc/os-release
しかし、これは常に動作するわけではなく、常に存在するわけではありません。これらのファイルの中には、
/var/log
展開に関する情報を含めることができます。