Це динамічний лінкер; якщо запустити його самостійно, він підкаже, що він робить:
Використання: ld.so [OPTION]... EXECUTABLE-FILE [ARGS-FOR-PROGRAM...]
Ви викликали "ld.so", програму-помічник для файлів спільного користування бібліотекою. Ця програма зазвичай живе у файлі /lib/ld.so
, а спеціальні директиви у виконуваних файлах за допомогою спільних бібліотек ELF повідомляють завантажувачу програми системи завантаження програми-помічника з цього файлу. Ця допоміжна програма завантажує спільні бібліотеки, необхідні виконуваній програмі, готує програму до запуску та запускає її. Ви можете викликати цю помічну програму безпосередньо з командного рядка, щоб завантажити та запустити виконуваний файл ELF; це подібно виконанню самого цього файлу, але завжди використовує цю допоміжну програму з вказаного вами файлу, замість файлу допоміжної програми, вказаного у виконуваному файлі, який ви запускаєте. В основному це використовується для тестувальників для тестування нових версій цієї допоміжної програми; швидше за все, ви не мали наміру запускати цю програму.
Лінкер використовується для запуску динамічно пов'язаних програм. Під час запуску chmod
ядро ефективно працює /lib64/ld-linux-x86-64.so.2 chmod
, як ви робили вручну; останній працює, навіть якщо chmod
двійковий файл не виконується.
Докладніше про це ви дізнаєтесь у чудовій статті « Як запускати програми»: Бінарні статті ELF .