2016-08-01 5 views
0

У меня есть библиотека .so, которую я внедряю в различные процессы на моем сервере Ubuntu. Но я нашел двоичный файл, который я начала с регулярной командой:LD_PRELOAD не имеет видимого эффекта

LD_PRELOAD =/дом/glinkd/preload32.so ./glinkd 1

И ничего не происходит! Нет ошибок, нет моих журналов предварительной загрузки, ничего, но glinkd работает нормально. Мой предварительный бит двоичный - 32 бит, glinkd - 32 бит, Ubuntu - 64 бит. Я тестировал другие 32 бинальные файлы, и все работает хорошо, проблема только в glinkd.

Что это может быть?

+0

Что делает 'ls -l./Glinkd' шоу? –

+0

@DavidSchwartz показывает "-rwxrwxrwx 1 корень root 2884295 aug. 1 17:01 ./glinkd" – Kracken

+0

Доступен для всего мира? –

ответ

0

Поскольку glinkd статически связан, попытка подключения исполняемого файла к динамически связанным функциям не будет работать, так как таких функций нет.

+0

Спасибо за ваш ответ, но LD_SHOW_AUXV = 1 ./glinkd 1 ничего не дает. Я думаю, что есть еще одна причина. – Kracken

+0

Нет, glinkd работает, как всегда, но нет таблицы с AT_SYSINFO_EHDR, AT_HWCAP и т. Д. – Kracken

+0

Я думаю, что glinkd избегает всех LD * как-то – Kracken

Смежные вопросы