Влияние пути библиотеки LD на простые команды в Linux

Я использую Red Hat Enterprise Linux Server версии 5.7 (Tikanga).

когда я изменяю LD_LIBRARY_PATH, система становится очень медленной для каждой команды (за исключением Shell builtins как cd)

например, ls в пустом каталоге занимает около 1 секунды. Когда я изменяю LD_LIBRARY_PATH обратно на default, все выглядит нормально.

путь LD_LIBRARY_PATH, который я добавил, не особенно длинный (10-11 каталогов.)

Я попытался установить LD_DEBUG=all, но не смог найти ничего подозрительного.

Я проверил все ПС, которые я добавил в путь имеют нормальную производительность.

Пожалуйста, скажи мне, что еще я должен проверить и что может быть причиной спада.

22
задан ondway
13.12.2022 21:12 Количество просмотров материала 3678
Распечатать страницу

2 ответа

LD_LIBRARY_PATH может использоваться для переопределения вещей. Таким образом, когда любой исполняемый файл (например, ls) нуждается в чем-то общем, таком как libc, ему придется сканировать все папки из env. переменную перед этим можно посмотреть в" нормальных " местах. С помощью ldconfig я считаю, что система может кэшировать список библиотек для быстрого поиска. С переменной env, она должна пересканироваться каждый раз (var может измениться).

кажется, что общее количество файлов для сканирования, возможно довольно большой. Попробуйте синхронизировать ls всех каталогов вместе.

1
отвечен Tony K. 2022-12-15 05:00

Я нашел проблему, один NFS, который был в LD_LIBRARY_PATH, время от времени не вел себя хорошо. Итак, поиск по одиночному каталогу велся .01 секунд там, который складывался в библиотеку и путь.

0
отвечен Manik Singla 2022-12-15 07:17

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх