Как получить список установленных файлов из пакета?
Я хочу знать, где я могу найти мое установленное приложение, когда я установил его в 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 появляется автоматически. Выберите его, нажав на него, а затем нажмите "Свойства". В появившемся диалоговом окне выберите вкладку "Установленные файлы".