libtree — утилита, позволяющая получить список разделяемых библиотек (shared libraries) в виде дерева, либо в виде путей до этих библиотек в системе.
В использовании очень проста:
1. Скачиваем libtree:
$ wget https://github.com/haampie/libtree/releases/download/v3.0.1/libtree_x86_64 -O libtree $ chmod +x libtree
2. И просто проверяем нужный нам файл:
$ ./libtree /bin/nano /bin/nano ├── libmagic.so.1 [default path] │ └── libz.so.1 [default path] ├── libtinfo.so.6 [default path] └── libncursesw.so.6 [default path] └── libtinfo.so.6 [default path]
При необходимости углубиться и получить зависимости для отображаемых библиотек просто добавляем -v, -vv или -vvv соответственно.
$ ./libtree -vvv /bin/nano /bin/nano ├── libmagic.so.1 [default path] │ ├── libz.so.1 [default path] │ │ └── libc.so.6 [default path] │ │ └── ld-linux-x86-64.so.2 [default path] │ └── libc.so.6 [default path] │ └── ld-linux-x86-64.so.2 [default path] ├── libc.so.6 [default path] │ └── ld-linux-x86-64.so.2 [default path] ├── libtinfo.so.6 [default path] │ └── libc.so.6 [default path] │ └── ld-linux-x86-64.so.2 [default path] └── libncursesw.so.6 [default path] ├── libtinfo.so.6 [default path] │ └── libc.so.6 [default path] │ └── ld-linux-x86-64.so.2 [default path] └── libc.so.6 [default path] └── ld-linux-x86-64.so.2 [default path]
Отобразить полный путь до файла на сервере можно с помощью опции -p:
$ ./libtree -p -vvv /bin/ping /bin/ping ├── /lib64/libcap.so.2 [default path] │ └── /lib64/libc.so.6 [default path] │ └── /lib64/ld-linux-x86-64.so.2 [default path] ├── /lib64/libc.so.6 [default path] │ └── /lib64/ld-linux-x86-64.so.2 [default path] └── /lib64/libidn2.so.0 [default path] ├── /lib64/libunistring.so.2 [default path] │ └── /lib64/libc.so.6 [default path] │ └── /lib64/ld-linux-x86-64.so.2 [default path] └── /lib64/libc.so.6 [default path] └── /lib64/ld-linux-x86-64.so.2 [default path]
По умолчанию, информация о некоторых библиотеках не выводится в libtree. Подробнее об этом в выводе команды:
$ ./libtree --help