Переустановите пакет и его установленные зависимости


25

У меня установлен пакет, который сломан (сам пакет, а не его зависимости). Переустановка с sudo dpkg-reconfigure <package>или sudo apt-get --reinstall install <package>не сработала. Я хотел бы попробовать переустановить пакет, включая все его установленные в настоящее время зависимости. Есть ли способ сделать это?

Ответы:


35

Вы можете проверить все зависимости пакета apt-cache:

$ sudo apt-cache depends <package>

Используя результаты этой команды, мы получаем следующую, которая переустанавливает <package>и ее зависимости:

$ sudo apt-cache depends <package> | grep '[ |]Depends: [^<]' | cut -d: -f2 | tr -d ' ' | xargs sudo apt-get --reinstall install -y

12
Это оно! Спасибо. Я изменил аргумент grep с 'Depends'на, '[ |]Depends: [^<]'чтобы исключить записи PreDepends и альтернативного пакета ( Depends: <package> ). Аргументы apt-get должны были бы --reinstall installсделать реальную переустановку, после которой я был.
Корм

3
Для этого вы не проверили это, довольно смело публиковать это без дальнейших объяснений. Ведь вы удаляете несколько пакетов.
AB
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.