显示指定文件系统体系结构的最佳方法是什么?

承认一个文件系统安装在〜/ FS /(这是它的根目录),我怎样才能检查其体系结构没有chroot?

我尝试过使用dpkg --root=~/FS/ --print-architecture但它仍然打印出我的根文件系统(“/”)的体系结构。

我已经阅读了dpkg-architecture手册页,但没有办法指定到根文件系统的path。

我需要一些通用的,因为我需要它为一个bash脚本,而不仅仅是一个文件系统。

对我来说,一个不洁的select是使用:

 dpkg --root=~/FS/ -l | grep [[:space:]]passwd[[:space:]] 

然后检查它的体系结构,因为我知道(现在)我必须检查所有文件系统上的passwd软件包。

任何更好的命题?

另外请注意 ,我尝试与dpkg的简单性,我并不强制需要一个dpkg命令,但我需要的东西快。

亲切的问候 :-)

如果你可以尝试以这种方式使用readelf

 readelf -a /boot/vmlinuz-2.6.18-308.el5 | egrep "(Class:|Machine:)" Class: ELF64 Machine: Advanced Micro Devices X86-64 

对于32位二进制

 readelf -a test | egrep "(Class:|Machine:)" Class: ELF32 

所以使用readelf你可以查询你的path机器:Intel 80386