Назад | Перейти на главную страницу

debian- файл для сопоставления пакетов

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

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

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

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

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

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, чтобы найти пакет.

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

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Я автор и сопровождающий debian dlocate.

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