При установки дополнительного пакета в CentOS 8 увидел такую ошибку: Error: Failed to synchronize cache for repo ‘AppStream’. Вспомнил, что CentOS 8 не поддерживается с декабря 2021, а значит и не обновляется. Все его репозитории ушли в архив. Есть несколько вариантов для продолжения работы нашего сервера:
Замена адресов репозиториев на архивные
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
Первая команда комментирует список зеркал репозирориев, вторая меняет адреса на архивные. В итоге во всех файлах /etc/yum.repos.d/CentOS-*.repo должно быть следующее:
1 2 3 4 5 6 7 |
[AppStream] name=CentOS-$releasever - AppStream #mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=AppStream&infra=$infra baseurl=http://vault.centos.org/$contentdir/$releasever/AppStream/$basearch/os/ gpgcheck=1 enabled=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial |
Можно смело запускать dnf repolist и далее по необходимости.
Конвертация системы в CentOS Stream 8
dnf --disablerepo '*' --enablerepo extras swap centos-linux-repos centos-stream-repos
dnf distro-sync
Первая команда, отключив текущие репозитории, подключит соответствующие им из CentOS Stream 8. Вторая выполнит необходимые обновления пакетов до последней версии, доступной из включенных репозиториев.
Миграция на RockyLinux
Обязательно перед началом этой процедуры сделайте полный бекап всей системы! Заходим на Github https://github.com/rocky-linux/rocky-tools, выбираем кнопу «Code» и жмём «Download ZIP«.
В скачанном архиве находим файл migrate2rocky.sh и делаем его исполняемым.
chmod u+x migrate2rocky.sh
Необходимо знать, что для миграции требуется определённое количество мегабайт на некоторых разделах.
1 2 3 |
/usr 250M /var 1.5G /boot 50M |
Для полной информации полезно будет почитать небольшую инструкцию от «производителя». Далее запускаем скачанный скрипт
migrate2rocky.sh -r. При выполнении скрипта будет собираться информация о текущих пакетах и репозиториях системы. Затем произойдет их замена на соответсвующие из репозитория RockyLinux. После начнется обновление всех текущих пакетов. Все эти действия будут происходить автоматически! Вы не забыли сделать полный бекап системы?. По окончанию работы скрипта останется только перезагрузить систему.
shutdown -r now