Как я могу проверить список зависимости на deb пакет. Я запускаю Ubuntu 11.10, и я создал резервную копию всех deb пакетов от var/cache/apt/archives
. Я хочу отформатировать свой ПК и переустановить выбранные приложения только. Также, как я могу получить список установленных пакетов и зависимостей.
В дополнение к dpkg
метод, можно проверить зависимости пакетов в репозитории:
apt-cache depends package-name
РЕДАКТИРОВАНИЕ, Обновленное с рекомендацией @Tino. комментарий @Tigran больше не применяется.
Это покажет Вам всю информацию о пакете:
dpkg -I package.deb
Вот некоторые неаккуратные, и вероятно не очень охватывающая последующая обработка, можно сделать к dpkg -I
вывод для получения объектов зависимости как списка:
Сжатый для компьютеров
# dpkg -I package.deb | python -c "import sys, re; t=re.split(r'\n(?= ?[\w]+:)|:', sys.stdin.read()); print '\n'.join([i.strip() for i in {key.strip(): value.strip() for key, value in zip(t[::2], t[1::2])}['Depends'].split(',')])"
#
Расширенный для людей:
dpkg -I package.deb | python -c "
import sys, re;
# Split keys and values into pairs (zipped together later)
t=re.split(
r'\n(?= ?[\w]+:)|:',
sys.stdin.read()
);
# Newline separate each dependency
print '\n'.join([
# Trim each dependency value
i.strip() for i in {
# Build assoc array from package metadata
key.strip(): value.strip()
for key, value in zip(t[::2], t[1::2])
}['Depends'].split(',')
])
"
apt-cache depends [Package-Name]
будет работать также. Хотя, если Вы получаете .deb
пакет снаружи Вашего исходного списка, вещей как apt-cache showpkg [Package-Name] && apt-cache depends [Package-Name]
мог бы показать устаревшую информацию или не мог бы синхронизировать с фактическим установленным пакетом следовательно dpkg -I [Package-Name]
работал бы лучше всего в этом случае.
dpkg
не имеет -I
больше и необходимо использовать dpkg-deb
показать информацию о пакете включая зависимости:
dpkg-deb -I package.deb
Для определенной версии пакета:
apt-cache show <package_name>=<version>
Найти доступные версии: Как я могу проверить доступную версию пакета в репозиториях?
Если у вас есть неустановленный пакет (обычно загружен вручную из-за пределов репозитория), вам необходимо использовать dpkg . Следующая команда покажет сводную информацию о пакете, включая его зависимости:
dpkg --info [package name]
Если пакет уже установлен на вашем компьютере (получен из репозитория или загружен вручную) или не установлен, но доступен в репозиторий, вы можете использовать apt . Следующая команда покажет только список его зависимостей.
apt depends [package name]