CentOS 7: обновление до Rocky Linux

RedHat скоро прекратит поддержку CentOS 7, так что пока есть время надо обновляться на новый дистрибутив.

RedHat скоро прекратит поддержку CentOS 7, так что пока есть время надо обновляться на новый дистрибутив.

Для себя я выбрал дистрибутив Rocky Linux поскольку он развивается сообществом.

Сперва необходимо обновить CentOS до версии 8. Для этого воспользуйтесь этой статьей. Не охота писать второй раз одно и тоже.

Далее устанавливаем все доступные обновления для CentOS 8. Скачиваем скрипт миграции и обновляемся:

wget https://raw.githubusercontent.com/rocky-linux/rocky-tools/main/migrate2rocky/migrate2rocky.sh
chmod +x migrate2rocky.sh
./migrate2rocky.sh  -r
reboot

Скрипт сам разрешит все зависимости и исправит ошибки. После перезагрузки получаем уже Rocky. Остается только переустановить софты, которые были удалены или перестали работать после миграции.

UPD 18.10.21

Прошло несколько обновлений, но вот с сервером 6028R-WTR произошел швах. Дело в том, что в нем стоят SAS диски и контроллером является Microsemi Adaptec RAID 8405E, а производитель не завез драйвер для rhel 8.4. Попытки собрать с исходников ни к чему не привели поскольку нет опыта с С в частности в написании драйверов. Потратил кучу времени на чтение документации и изучение исходных кодов ядер разных дистрибутивов в том числе и код ванильного ядра. Оказалось в ванильном и в ubuntu (focal) необходимый драйвер присутствует, а в rhel его выпилили. Изучая все это дело узнал, что драйвер называется aacraid, который нашелся в репозитории epel.

dnf install kmod-aacraid
reboot

И диски появляются в операционной системе :) Ура!

Далее ставим zfs и поднимаем старый пул (который поднимется автоматически после ребута):

dnf install https://zfsonlinux.org/epel/zfs-release.el8_4.noarch.rpm
gpg --import --import-options show-only /etc/pki/rpm-gpg/RPM-GPG-KEY-zfsonlinux
dnf install kernel-devel zfs
reboot

После всех этих действий зайдя на сервер по ssh можно заметить, что motd печатается дважды. Исправляем.

vi /etc/ssh/sshd_config
# находим строку PrintMotd и устанавливаем значение в no
systemctl reload sshd