Как получить список установленных файлов из пакета?

Я хочу знать, где я могу найти мое установленное приложение, когда я установил его в Ubuntu с помощью менеджера пакетов.

Я установил RabbitMQ и запустил locate rabbitmq который дал мне следующий результат:

/home/anupamg/.m2/repository/com/rabbitmq
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/_maven.repositories
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/amqp-client-1.7.2.jar
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/amqp-client-1.7.2.jar.lastUpdated
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/amqp-client-1.7.2.jar.sha1
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/amqp-client-1.7.2.pom
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/amqp-client-1.7.2.pom.lastUpdated
/home/anupamg/.m2/repository/com/rabbitmq/amqp-client/1.7.2/amqp-client-1.7.2.pom.sha1
/home/anupamg/Downloads/rabbitmq-server-generic-unix-2.4.0.tar.gz

6 ответов

Решение

Чтобы увидеть все файлы пакета, установленные на вашу систему, сделайте это:

dpkg-query -L <package_name>

Чтобы увидеть файлы.deb файл будет установлен

dpkg-deb -c <package_name.deb>

Чтобы увидеть файлы, содержащиеся в пакете НЕ установленном, сделайте это один раз (если вы еще не установили apt-файл:

sudo apt-get install apt-file
sudo apt-file update

затем

apt-file list <package_name>

Смотрите этот вопрос для более

@drysdam dpkg -L <package_name> может быть лучше для вашей непосредственной проблемы, но вы можете прочитать Стандарт Иерархии Файловой системы, который описывает, где в файловой системе находятся файлы различных типов.

Это не является окончательным; это просто описательный отчет о том, как обстоят дела с "главным образом".

Более конкретным для Ubuntu является Руководство по Ubuntu Server, в котором все будет описано достаточно подробно. (Многие другие руководства затушевывают слишком много деталей, но это должно быть лучше.)

Если вам нужен только один установленный пакет, вы можете найти имя пакета

$ apt-cache search rabbitmq
...
librabbitmq-dev
...

затем используйте dpkg --listfiles

$ dpkg --listfiles librabbitmq-dev
/usr/lib/x86-64/librabbit... 
. . . 

Ответ, данный @Gilles, очень полезен (на самом деле, ответ со временем улучшился).

Кроме того, у меня есть совет для тех, кто не хочет устанавливать какой-либо вспомогательный пакет (например, apt-file):

  • Зайдите на http://packages.ubuntu.com/;
  • Перейти к сеансу поиска в каталогах пакетов;
  • Введите название вашего пакета в поле Ключевое слово и выберите Показывать только точные совпадения;
  • Выберите ваш дистрибутив и нажмите на кнопку Поиск.
  • Выберите желаемую упаковку на следующем экране;
  • В конце страницы нажмите на ссылку в списке файлов рядом с названием вашей архитектуры;
  • На следующей странице будет показан список файлов вашего пакета.

Как пример: http://packages.ubuntu.com/trusty/amd64/multipath-tools/filelist

Вот один из способов сделать это для пакетов, которые вы еще не установили. Просто измените "autoconf" ниже для пакета, для которого вы пытаетесь получить список файлов:

mkdir tmp
cd tmp
apt-get download autoconf
ar x *.deb
tar tf data.*
cd ..
rm -r tmp

Использовать synaptic-package-manager:

Предполагая, что мы хотим найти файлы пакета autotools-dev, в поле "Быстрый фильтр" введите autotools-dev, чтобы найти его. Пакет autotools-dev появляется автоматически. Выберите его, нажав на него, а затем нажмите "Свойства". В появившемся диалоговом окне выберите вкладку "Установленные файлы".

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