Як знайти пов’язані бібліотеки в Linux?

2024 Від admin

The ldd

ldd

ldd (список динамічних залежностей). утиліта *nix, яка друкує спільні бібліотеки, необхідні для кожної програми або спільної бібліотеки, указаної в командному рядку. Його розробили Роланд Макграт і Ульріх Дреппер. Якщо для будь-якої програми відсутня спільна бібліотека, ця програма не з’явиться.

https://en.wikipedia.org

команда є найпростішим для демонстрації спільні бібліотеки

спільні бібліотеки

Спільна бібліотека або спільний об’єкт – це комп'ютерний файл, який містить виконуваний код, призначений для використання кількома комп'ютерними програмами або іншими бібліотеками під час виконання.

програми. Команда readelf є кращим вибором порівняно з іншими, оскільки ми маємо справу з форматом «ELF» у Linux. 18 березня 2024 р.

Щоб перевірити, чи можна знайти спільні бібліотеки, виконайте таку команду:

  1. звалище -H.
  2. ldd.

Що стосується команд, ми можемо використовувати команду ldd, щоб знайти відсутні залежності. Крім того, ми можемо використовуйте команду ldconfig з параметром -p, щоб перевірити, чи встановлено спільну бібліотеку. Нарешті, ми повинні перевірити стандартні шляхи до бібліотек, такі як /usr/lib і /usr/local/lib, а також додаткові шляхи, перелічені в /etc/ld. так.

Використання команди ldd

  1. -v : докладний режим. Роздрукуйте докладний вихід із усією інформацією.
  2. -u : надрукувати всі невикористані залежності об’єктів.
  3. -d : переміщення даних процесу та друк відсутніх об’єктів ELF.
  4. -r : Обробляти дані та переміщувати функції та друкувати відсутні об’єкти та функції ELF.

Перш за все, використовуйте -L, щоб дозволити пошуку переходити за символічними посиланнями, за якими ви хочете. Тоді вам потрібен спосіб виявлення інших символічних посилань. У find -L -type l ніколи не є істинним, але ви можете виявити символічні посилання за допомогою -exec test -L {} \; (пам’ятайте -exec … \; також є тестом, він успішний, якщо внутрішня команда виходить із статусом 0).

The команда ldd є найпростішим для показу спільних бібліотек програми. Команда readelf є кращим вибором порівняно з іншими, оскільки ми маємо справу з форматом «ELF» у Linux. Однак ми повинні пам’ятати, що ми ніколи не повинні використовувати його для ненадійних виконуваних файлів.

Щоб знайти список процесів і завантажених ними бібліотек, використовуйте команду "genld -ld".. Параметр -l повідомляє списки завантажених об'єктів для кожного процесу, що виконується в системі. Параметр -d показує адресу та розмір розділу «Дані» на додаток до адреси та розміру розділу «Текст».