Saya memperhatikan sesuatu saat melakukan find /bin -exec file {} \;
:
yang file
laporan perintah beberapa entri dalam /bin
yang shared objects
, sementara yang lain sebagai executables
. Misalnya,
/ bin / ntfsck:
ELF 64-bit LSB shared object , x86-64, versi 1 (SYSV),
ditautkan secara dinamis (menggunakan shared libs), untuk GNU / Linux 2.6.24, BuildID [sha1] = 312d93fd0d8653e7236a61db2e67b93c63225a00
Laporan yang sama untuk gawk
/ usr / bin / gawk: Objek bersama
ELF 64-bit LSB , x86-64, versi 1 (SYSV), ditautkan secara dinamis (menggunakan lib bersama), untuk GNU / Linux 2.6.24, BuildID [sha1] = 76bb13aac7e212164bd6e0d7b8a5d92db4459
Sebaliknya file
untuk /bin/echo
adalah:
/ bin / echo:
ELF 64-bit LSB yang dapat dieksekusi , x86-64, versi 1 (SYSV),
ditautkan secara dinamis (menggunakan shared libs), untuk GNU / Linux 2.6.24,
BuildID [sha1] = 193e75fc13e9c4599e772b8d79125a5934cf601c, dilucuti
Intinya, saya ingin tahu apa perbedaan antara executable
file dan shared object
file.