ファイルからのLinuxアーキテクチャの決定

ファイルからのLinuxアーキテクチャの決定

私のシステムには回復できない/usrパーティションがあります。ドライブの不良が心配され、LiveCD環境で起動したのですが、インストールアーキテクチャが何なのかは覚えておらず、最も記憶に残るのはCentOS 5.5だったということです。

Live環境のため、uname、checkなどの標準的な方法は動作しません/proc

使用されたカーネルは次のとおりです。 vmlinuz-2.6.18-194.32.1.el5アーキテクチャが32ビットか64ビットかを確認するためにスキャンできるファイルはありますか?

それともファイルシステムで他のコンテンツを見ることができますか?/usrこれでパーティションが終了したため、何も機能しません。

ベストアンサー1

file vmlinuz-2.6.18-194.32.1.el5カーネルがどのアーキテクチャ用にコンパイルされたかを教えてくれます。ファイルがある場合は、/boot/config-2.6.18-194.32.1.el5プロセッサアーキテクチャを含むカーネルコンパイルオプションに関する追加情報を提供します。

ls /lib*ユーザーモードがサポートするアーキテクチャを教えてくれます。たとえば、x86システムを使用している場合は、/lib/ld-linux.so.2少なくともデフォルトの32ビットをサポートします。その場合は、少なくともデフォルトの64ビット(amd64)をサポートします/lib/ld-linux-x86-64.so.2。どのアーキテクチャユーティリティがどのアーキテクチャでコンパイルされるかを示します(通常、オペレーティングシステムの全ユーザー領域が1つのアーキテクチャでコンパイルされ、アプリケーションの他のABIをカスタマイズするための追加のライブラリもあります)。/lib64/ld-linux-x86-64.so.2file /bin/ls

カーネルとユーザー領域は常に同じアーキテクチャではありません。 Amd64カーネルは32ビットユーザープログラムを実行できますが、その逆は不可能です。 CentOSが32ビット版か64ビット版かを知りたい場合は、/bin/lsプログラムが32ビット版か64ビット版であるかを確認してください。

おすすめ記事