Debian- сопоставление файлов с пакетами

Debian- сопоставление файлов с пакетами

Недавно я установил java6 на свой Debian Box. Я попытался использовать javac и заметил, что он не установлен. В конце концов я выяснил (после поиска в Интернете), что javac является частью пакета java6-sdk. Это не первый случай, когда я знаю нужную команду, но не знаю, в каком пакете(ах) она находится.

Мой вопрос - есть ли способ в командной строке выяснить, какой файл принадлежит какому пакету(ам)? Так что если бы я хотел увидеть, к каким пакетам принадлежит javac, он бы вывел java6-sdk, java5-sdk, .. поскольку все они содержат javac.

решение1

apt-file— это команда, которую вы ищете.

решение2

Вы можете использоватьapt-файл поиск имени файладля этого. Вы могли бы просто пойти вПакеты Debianи поищите в онлайн-версии.

решение3

Я знаю, что это не совсем то, что вы ищете, но:

dpkg -L packagename

выведет список всех файлов, принадлежащихустановленный пакет. (но это нужно для неустановленных пакетов)

Я не знаю, как это делается, но Ubuntu (производная от Debian) предложит следующий пакет:

$ chkrootkit
The program 'chkrootkit' is currently not installed.  You can install it by typing:
sudo apt-get install chkrootkit
bash: chkrootkit: command not found

И я часто поступал очевидно: вводил имя файла вместе с «Debian» в Google, чтобы найти пакет.

решение4

вам также может быть интересно взглянуть на пакет dlocate. Он имеет множество полезных опций для вывода списка пакетов и файлов внутри пакетов. Изначально он был написан как гораздо более быстрая версия dpkg -L, dpkg -S и т. д., но с годами приобрел множество полезных функций (при этом сохранив скорость :)

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я являюсь автором и сопровождающим Debian dlocate.

Кстати, установите версию dlocate из тестового или нестабильного дистрибутива. Она имеет множество улучшений по сравнению со стабильной версией (в частности, она больше не зависит от GNU locate) и по-прежнему отлично работает в стабильной версии (не зависит от каких-либо новых/обновленных библиотек и т. д.).

Связанный контент