Как использовать yum для переустановки всех зависимостей данного пакета?

15

Поэтому у меня есть пакет, в котором я почти уверен, что при удалении чего-либо (как в rm) я удалил часть одной из его зависимостей. Длинная история. По сути, я хочу переустановить пакет yum и все его зависимости, чтобы он заново установил удаленные файлы. В мире gentoo вы просто делаете это как «emerge -e». Кажется, yum должен быть в состоянии сделать что-то подобное.

Я думаю, я мог бы собрать скрипт, чтобы вывести список deps, а затем разобрать их и переустановить все из них.

startoftext
источник

Ответы:

23

Да, нет простого способа сделать это ... однако вы можете сделать несколько вещей:

rpm -Va

... при этом будут проверены все установленные вами пакеты, а затем вы сможете переустановить все, что не проверено. Также:

yum reinstall $(repoquery --requires --recursive --resolve <pkg>)

... это будет делать то, что вы просили, хотя это большой молоток.

Джеймс Антилл
источник
довольно полезно на битых установках, как то, что я получил в последнее время после fedup.
Дашесы
-3

Также

yum reinstall $(yum list installed | awk '{print $1}')

или

rpm -qa | xargs yum reinstall

(в зависимости от того, какое повреждение уже нанесено на машине, awk или xargs могут не работать)

Васю
источник
3
Это переустанавливает все пакеты, а не только зависимости отдельного пакета.
Энтони Геогеган