Как найти все файлы, связанные с программным обеспечением?

Я не уверен, если это возможно, но если это так, как я могу найти все файлы, связанные с программным обеспечением? Например, есть ли способ найти все файлы, которые gedit нужны и используются для работы?

Собирают ли такие команды / методы файлы, подобные /usr/share/gtksourceview-3.0/styles/oblivion.xml, которые не предназначены только для определенного программного обеспечения или принадлежат другому?

3
задан 16 February 2018 в 11:06

2 ответа

Для просмотра списка файлов, принадлежащих пакету, запустите

$ dpkg -L packagename

Примечание: обычно не включает файлы конфигурации.

Чтобы найти пакет, файл принадлежит, запустить

$ dpkg -S /path/to/file
0
ответ дан 16 February 2018 в 11:06

Это - нетривиальная проблема, я боюсь. Некоторые подходы, которые могли бы помочь Вам:

  • Можно найти все файлы установленными конкретным пакетом путем заглядывания /var/lib/dpkg/info/gedit.list.

  • Можно найти все другие пакеты на который gedit зависит путем выполнения apt-cache depends gedit. (С другой стороны можно найти все пакеты, которые зависят от gedit с apt-cache rdepends gedit). Примите во внимание, что эти функции не являются рекурсивными - для gedit успешно работать требует большого количества Вашей системы - например, библиотека C, X графических систем, dbus системная шина сообщения...

  • Можно узнать, которого файлов библиотеки исполняемый файл требует во времени выполнения путем выполнения ldd $(which gedit). (which gedit возвращает путь к фактическому исполняемому файлу, выполненному, когда Вы работаете gedit, в этом случае /usr/bin/gedit).

  • Можно узнать, который регистрирует данный процесс, имеет (в настоящее время) открытый путем выполнения lsof -c gedit. (Программа может загрузить файлы, например, значки в память при запуске и закрыть их дескрипторы файлов, которые не обнаружатся в таком списке).

3
ответ дан 16 February 2018 в 11:06

Другие вопросы по тегам:

Похожие вопросы: