我在这样做时注意到了一些事情find /bin -exec file {} \;
:
该file
命令报告的某些条目中/bin
有 shared objects
,而其他的executables
。例如,
/ bin / ntfsck:
ELF 64位LSB 共享对象,x86-64,版本1(SYSV),
动态链接(使用共享库),用于GNU / Linux 2.6.24,BuildID [sha1] = 312d93fd0d8653e7236a61db2e67b93c63225a00,已剥离
相同的报告 gawk
/ usr / bin / gawk:
ELF 64位LSB 共享对象,x86-64,版本1(SYSV),
动态链接(使用共享库),用于GNU / Linux 2.6.24,
BuildID [sha1] = 76bb13aac7e212164bd6e0d7b8a5d92db44543c9,已剥离
与之相反file
的 /bin/echo
是:
/ bin / echo:
ELF 64位LSB 可执行文件,x86-64,版本1(SYSV),
动态链接(使用共享库),用于GNU / Linux 2.6.24,
BuildID [sha1] = 193e75fc13e9c4599e772b8d79125a5934cf601c,已剥离
本质上,我想知道executable
文件和shared object
文件之间的区别。