Я только что успешно обновил Fedora 16 до Fedora 17 с помощью инструмента Preupgrade. Один из предложенных здесь шагов после обновления – «удалить неподдерживаемые пакеты».
В руководстве говорится, чтобы запустить package-cleanup --orphans
чтобы получить список указанных пакетов, а затем yum remove
каждый из них.
Вместо того, чтобы слепо делать это, я думал, что проверю, чтобы убедиться, что это не приведет к непреднамеренному удалению любых необходимых зависимостей. Например, ModemManager-0.5.3.96-1.fc16.x86_64
является первым пакетом в списке. Когда я запускаю:
yum remove ModemManager-0.5.3.96-1.fc16.x86_64
Я вижу, что он также хочет удалить ряд зависимостей, которые выглядят как действительные пакеты Fedora 17:
================================================== ===================================== Размер репозитория версии пакета Arch ================================================== ===================================== Удаление: ModemManager x86_64 0.5.3.96-1.fc16 @ updates / 16 952 k Удаление для зависимостей: NetworkManager x86_64 1: 0.9.4.0-7.git20120403.fc17 @ anaconda-0 6.7 M NetworkManager-gnome x86_64 1: 0.9.4.0-7.git20120403.fc17 @ anaconda-0 1.3 M NetworkManager-openconnect x86_64 0.9.4.0-7.git20120612.fc16 @ updates / 16 274 k NetworkManager-openvpn x86_64 1: 0.9.3.997-1.fc17 @ anaconda-0 679 k NetworkManager-pptp x86_64 1: 0.9.3.997-1.fc17 @ anaconda-0 467 k NetworkManager-vpnc x86_64 1: 0.9.3.997-1.fc17 @ anaconda-0 474 k anaconda x86_64 17.29-1.fc17 @ anaconda-0 12 M evolution-NetworkManager x86_64 3.4.1-2.fc17 @ anaconda-0 14 k Сводка транзакций ================================================== ===================================== Удалить 1 пакет (+8 зависимых пакетов)
Если я делаю yum list NetworkManager
я вижу:
Установленные пакеты NetworkManager.x86_64 1: 0.9.4.0-7.git20120403.fc17 @ anaconda-0 Доступные пакеты Обновления NetworkManager.x86_64 1: 0.9.6.4-1.fc17
Я также заметил, что ни одна из зависимостей, перечисленных в yum remove
не указана в списке потерянных пакетов.
В этом случае было бы приемлемо использовать rpm для удаления этих пакетов
#rpm -e ModemManager-0.5.3.96-1.fc16.x86_64 --nodeps
После удаления всех нежелательных пакетов очистите базу данных rpm следующими командами
#rm -f /var/lib/rpm/__db* #rpm –rebuilddb #yum clean all #rm -rf /var/cache/yum #yum makecache