Мигратор
«Мигратор» — это утилита, позволяющая упростить миграцию RHEL-подобных (RHEL — Red Hat Enterprise Linux) дистрибутивов на МСВСфера ОС с сохранением настроек, данных и приложений.
Сценарии миграции на более высокую верию
На текущий момент доступны следующие сценарии миграции на более высокую версию.
Миграция с EL 7 (EL — Enterprise Linux) на МСВСфера 8 ОС;
Миграция с EL 8 на МСВСфера 9 ОС;
Миграция с AlmaLinux/Rocky Linux/Oracle Linux/Euro Linux 8 на МСВСфера 9 ОС.
Инструкции по миграции
Миграция с EL 7 на МСВСфера 8 ОС
Обновите систему и перезагрузить компьютер:
sudo yum update -y
sudo reboot
Подключите репозиторий «Мигратора»:
sudo yum -y install https://repo1.msvsphere-os.ru/migrator/migrator-release-latest-el$(rpm --eval %rhel).noarch.rpm
Установите «Мигратор» и пакеты с правилами для обновления:
sudo yum -y install leapp-upgrade leapp-data-msvsphere
Запустите preupgrade-проверку:
sudo leapp preupgrade
Результатом работы утилиты будет отчёт, по которому можно определить возможность обновления системы. Подробный отчёт можно найти в файле
/var/log/leapp-report.txt
. Также будет сгенерирован файл/var/log/leapp/answerfile
для подтверждения исправления найденных проблем, типичных для EL 7.При возникновении ошибок их необходимо устранить. См. Известные проблемы при миграции с EL 7 на МСВСфера 8 ОС.
Снова запустите preupgrade-проверку. Если результат будет помечен жёлтым или зелёным, то можно продолжать миграцию.
Запустите обновление:
sudo leapp upgrade
После удачного завершения обновления перезагрузите систему:
reboot
После перезагрузки в загрузчике операционной системы выберите пункт
Migrator-Upgrade-Initramfs
.Дождитесь окончания обновления системы. В конце обновления система будет перезагружена и загрузится в обычном режиме. При первом запуске будет запущена процедура повторной маркировки меток SELinux. После чего система перезагрузится ещё раз.
Если вы до этого обновили EL 7 до МСВСфера 8 ОС, то вам необходимо сначала удалить пакеты, оставшиеся от предыдущей версии «Мигратора». Для этого выполните следующую команду:
sudo dnf remove '*leapp*'
И удалите из конфигурационного файла
/etc/yum.conf
следующую строку:exclude=python2-leap...
Миграция с EL 8 на МСВСфера 9 ОС
Обновите МСВСфера 8 ОС и перезагрузите компьютер:
sudo dnf update -y sudo reboot
Подключите репозиторий «Мигратора»:
sudo dnf -y install -y https://repo1.msvsphere-os.ru/migrator/migrator-release-latest-el$(rpm --eval %rhel).noarch.rpm
Установите «Мигратор» и пакет с правилами для обновления:
sudo dnf -y install leapp-upgrade leapp-data-msvsphere
Запустите preupgrade-проверку:
sudo leapp preupgrade
Результатом работы утилиты будет отчёт, по которому можно определить возможность обновления системы. Подробный отчёт можно найти в файле
/var/log/leapp-report.txt
. Также будет сгенерирован файл/var/log/leapp/answerfile
для подтверждения исправления найденных проблем, типичных для МСВСфера 8 ОС.При возникновении ошибок их необходимо устранить. См. Известные проблемы при миграции с EL 8 на МСВСфера 9 ОС.
Снова запустите preupgrade-проверку. Если результат будет помечен жёлтым или зелёным, то можно продолжать миграцию.
Запустите обновление:
sudo leapp upgrade
После удачного завершения обновления перезагрузите систему:
reboot
После перезагрузки в загрузчике операционной системы выберите пункт
Migrator-Upgrade-Initramfs
.Дождитесь окончания обновления системы. В конце обновления система будет перезагружена и загрузится в обычном режиме. При первом запуске будет запущена процедура повторной маркировки меток SELinux. После чего система перезагрузится ещё раз.
Миграция с AlmaLinux/Rocky Linux/Oracle Linux/Euro Linux 8 на МСВСфера 9 ОС
Процесс миграции с дистрибутивов AlmaLinux, Rocky Linux, Oracle Linux, Euro Linux 8 на МСВСфера 9 ОС идентичен процессу Миграция с EL 8 на МСВСфера 9 ОС.
Известные проблемы
Известные проблемы при миграции с EL 7 на МСВСфера 8 ОС
Обратите внимание, что Oracle Linux должен быть загружен в ядро 3.10.
Скорее всего для продолжения обновления необходимо будет отключить модуль
pata_acpi
и PAM-модульpkcs11
:sudo rmmod pata_acpi
sudo leapp answer --section remove_pam_pkcs11_module_check.confirm=True
Для Oracle Linux и Red Hat Linux необходимо будет удалить пакет
python-hwdata
:sudo yum -y remove python-hwdata
Для Oracle Linux также будет необходимо удалить пакеты
uname26
иiwlax2xx-firmware
:sudo yum -y remove uname26 iwlax2xx-firmware
Эти и другие требуемые изменения будут описаны в файле /var/log/leapp/leapp-report.txt
.
Известные проблемы при миграции с EL 8 на МСВСфера 9 ОС
Обратите внимание, что Oracle Linux должен быть загружен в ядро 4.18.
Если Oracle Linux не сможет загрузить метаданные некоторых репозиториев, отключите их:
sudo dnf config-manager --set-disabled <repo>
Для CentOS Stream необходимо изменить версию дистрибутива с
8
на8.5
в файле/etc/centos-release
. А также отключить репозитории, у которых невозможно загрузить метаданные:sudo dnf config-manager --set-disabled <repo>
Скорее всего для продолжения обновления будет необходимо исправить зону
firewalld
:sudo sed -i "s/^AllowZoneDrifting=.*/AllowZoneDrifting=no/" /etc/firewalld/firewalld.conf
А также отключить проверку vdo устройств:
sudo leapp answer --section check_vdo.confirm=True
Запретить доступ по
ssh
пользователюroot
:echo PermitRootLogin no | sudo tee -a /etc/ssh/sshd_config
Эти и другие требуемые изменения будут описаны в файле /var/log/leapp/leapp-report.txt
.
Диагностика
В некоторых случаях обновление системы из режима Migrator-Upgrade-Initramfs
заканчивается неудачно и запускается отладочная консоль.
Скорее всего ошибка происходит на этапе установки отдельных пакетов, поэтому DNF
возвращает ошибку.
При этом остальные пакеты устанавливаются успешно, так как все зависимости разрешаются ещё на этапе подготовки системы к обновлению.
В этом случае следует изучить системный журнал доступный через команду journalctl
.
В
Initramsfs
находится обрезанная версия загрузочного образа, поэтому командыless
иmore
там отсутствуют. Лучше всего перенаправить выводjournalctl
в файл:journalctl > system.log
Подключите корневой раздел основной операционной системы:
mkdir /mnt mount /dev/sdXX /mnt
Для LVM подключите нужный том:
mount /dev/mapper/XX-root /mnt
Если вы используете отдельный раздел для каталога
/usr
, то его также необходимо подключить в каталог/mnt/usr
.Далее скопируйте
system.log
в/mnt/tmp
и измените корневой каталог на/mnt
с помощью команды:chroot /mnt
Теперь вы можете просматривать файл
system.log
с помощью командыless
.Если в системном журнале видно, что DNF действительно закончил устанавливать пакеты, но установка некоторых пакетов закончилась с ошибкой, то скорее всего систему можно будет загрузить.
Следует обязательно переразметить метки SELinux. Для этого необходимо создать в корневом разделе операционной системы файл
.autorelabel
:touch /mnt/.autorelabel
Если вы изменяли корневой каталог командой
chroot
, то необходимо вернуться в корневой каталогinitramfs
при помощи командыexit
или комбинации клавишCtrl
+d
.После этого отключите все разделы, которые вы подключали выше:
umount /mnt/usr umount /mnt
Перезагрузите систему:
reboot
Система начнёт загрузку в обычном режиме, переразметит метки SELinux и перезагрузится ещё раз.