Как я могу определить, из какого пакета пришел исполняемый файл ? [дубликат]

На этот вопрос уже есть ответ здесь:

Я отвечаю на вопрос с предложением используйте переименовать , и я понимаю, что не знаю, из какого пакета он исходит (как часть ответа, я представляю, что говорю что-то вроде «если у вас нет переименовать , это установлен как часть [package] ").

man rename говорит мне СМОТРИ ТАКЖЕ: mv (1), perl (1) - поэтому я сначала подумал, что он был установлен с perl.

Связанный ответ , как узнать, что было установлено как часть пакета , помогает мне понять, что пакет perl включает prename , но не переименовать - и оказалось, что мой / usr / bin / rename указывает на / etc / alternatives / rename , что указывает на / usr / bin / prename

. все еще сбивает с толку. Указывает ли / etc / alternatives / rename на что-то еще до того, как я установил perl? Есть ли общий способ узнать, из какого пакета что-то взято?

21
задан 13 April 2017 в 15:25

4 ответа

Начиная с 2018 года

apt search filename

работает для последних Ubuntu и большинства дистрибутивов на основе Debian.

Обновление от мая 2018 года: По-видимому, больше не работает с Ubuntu 18.04.

0
ответ дан 13 April 2017 в 15:25

Вы можете попробовать apt-file (это не является частью установки по умолчанию).

0) Обновить базу данных apt-файлов

sudo apt-file update

1) Найти двоичный файл

$ which rename
/usr/bin/rename

2) Найти пакет

$ apt-file search /usr/bin/rename
util-linux: /usr/bin/rename.ul
[ 1110] И вуаля - переименование является частью util-linux

0
ответ дан 13 April 2017 в 15:25

Оказывается, dpkg-query хорошо для получения информации об установленных пакетах, и с опцией -S [pattern] будет искать пакеты с файлами, соответствующими [pattern].

dpkg-query -S [filename-search-pattern]
0
ответ дан 13 April 2017 в 15:25

установить apt-файл

$ sudo apt-get install apt-file

обновить apt-файл

$ sudo apt-file update

найти пакет, к которому относится файл 119]

$ whereis rename
rename: /usr/bin/rename.ul /usr/bin/rename /usr/bin/X11/rename.ul /usr/bin/X11/rename     /usr/share/man/man1/rename.1.gz /usr/share/man/man2/rename.2.gz

поиск пакета

$ apt-file search /usr/bin/rename
ladr4-apps: /usr/bin/renamer
util-linux: /usr/bin/rename.ul

имя пакета: util-linux

0
ответ дан 13 April 2017 в 15:25

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

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