Сегодня утром я решил обновить свой Linux (CentOs 7.2.1511), но yum
пропустил слишком много пакетов из-за проблем с зависимостями.
можно ли приступить к обновлению?! и почему yum пропускает так много пакетов?!
Transaction Summary
================================================================================
Install 4 Packages (+11 Dependent packages)
Upgrade 160 Packages
Skipped (dependency problems) 941 Packages
Total download size: 195 M
решение1
Это потому, что вы не обновляли систему в течение многих дней. Тем временем CentOS 7.3 и CentOS 7.4 (текущая) были выпущены.
Некоторые пакеты и библиотеки устарели в новой системе. Для обновления yum
необходимо удалить их. Но поскольку ваша система работает на их основе, yum
удалить эти пакеты не удалось.
Решение dnf
может автоматически решить и обойти некоторые проблемы с зависимостями. Установите dnf
следующим образом
sudo yum install dnf
Если это не удается с сообщением «Пакет не найден install
dnf from some
rpm» source. Google for 'dnf rpm download
, выберите один из вариантов для CentOS 7.x или RHEL 7. Затем установите его следующим образом
sudo rpm -Uvh path_to_downloaded_rpm
Затем выполните обновление, используя dnf
следующую команду sudo dnf update
Затем очистите как можно больше ненужных пакетов с помощью
sudo yum autoremove
sudo yum clean all
sudo dnf autoremove
sudo dnf clean all
Теперь снова попробуйте обновить с помощью yum
. Вы, вероятно, снова столкнетесь с проблемой зависимости, но с меньшим количеством пакетов, имеющих проблемы. Затем попытайтесь понять, что это за пакеты, и удалите их один за другим с помощью yum
или dnf
.
ПредупреждениеПожалуйста, сделайте полную резервную копию, прежде чем что-либо делать. Весьма вероятно, что вы столкнетесь с некоторыми проблемами в процессе. Пожалуйста, обновите с сообщениями об ошибках.