Миграция с CentOS 7 VMWare на Hyper-V - Диск не отображается

У меня была виртуальная машина, перенесенная из VMWare, я подтвердил, что диск соответствует ожиданиям, загрузившись с Live CD, смонтировав и проверив файловую систему .

Система тоже до некоторой степени загружается, но через некоторое время она перестает пытаться, переходя к терминалу «dracut», я прочитал логи в /run/initramfs/rdsosreport.txt и увидел следующее:

Hyper-V Virtual Machine detected, ATA device ignore set

В терминале я также увидел ошибку о том, что / dev / disk / by-uuid / {uuid here} недоступен. Пока я был в Ubuntu, я проверил UUID, перечисленные в ошибке, / etc / fstab , и все совпало с выводом из blkid .

Я также сделал чистая установка CentOS, которая загружалась нормально, так что это почти наверняка связано с перенесенной установкой.

Извините, если этого недостаточно для продолжения работы, если кому-то нужна конкретная информация, я сделаю все возможное, чтобы обновите вопрос с его помощью.

Если это поможет, я использую Windows 10, версия 1903, сборка 10.0.18941.1001 (это версия, о которой сообщает Hyper-V).

0
задан 1 August 2019 в 16:59
1 ответ

Я считаю, что вам нужно будет восстановить файл initramfs / boot / initramfs- (версия ядра) .img из-за изменения виртуального оборудования. Модуль, используемый ядром CentOS для доступа к виртуальному диску, вероятно, отличается. Следуйте этим инструкциям:

  • Прикрепите установочный ISO-образ CentOS 7 к виртуальной машине
  • Загрузитесь в режиме восстановления Anaconda ( инструкции ) ( альтернативные инструкции )
  • Сделайте убедитесь, что файловая система внутри виртуального диска правильно смонтирована на / mnt / sysimage
  • Используйте dracut для восстановления initramfs: # chroot / mnt / sysimage dracut --no-hostonly - -force --regenerate-all --verbose
  • Запрограммировать перемаркировку SELinux: # touch /mnt/sysimage/.autorelabel
  • Выход из режима восстановления Anaconda

Initramfs - это образ файловой системы, который загрузчик загрузит извлечь в память после загрузки ядра и до переключения на него контекста выполнения. Ожидается, что такой образ будет содержать все модули, которые потребуются ядру для поиска блочного устройства, содержащего корневую файловую систему. Я не знаю, какие модули нужны для виртуальной машины Hyper-V; если вы можете найти их самостоятельно, вы можете указать dracut добавить их в восстановленные initramfs, используя аргумент - add-drivers .

2
ответ дан 4 December 2019 в 13:19

Теги

Похожие вопросы