"Не удалось найти файловую систему /dev/root" после установки Clonezilla RedHat на новое оборудование "

Я клонирую сервер redhat 4 (возможно, 5?) На довольно новое оборудование, так как у оригинала есть неисправная плата. Администратор базы данных предпочел бы не перенастраивать новую установку, поэтому они хотят, чтобы я клонировал, если это возможно. Я использовал Clonezilla стабильного выпуска 2.5.0-25 и сделал второй вариант диска для удаленного копирования диска по сети через статические IP-адреса. Использовал этот учебник: https://www.youtube.com/watch?v=8UGR_RLCptQ

Информация о версии Redhat:

[root@original_server ~]# cat /etc/redhat-release 
redhat-4
#Enterprise Linux Enterprise Linux Server release 5 (Carthage)

Старое оборудование: Asus RS260/2x Xeon E5420/12 ГБ ОЗУ DDR3 ECC FB (24 ГБ до аппаратных проблем)/ RAID-контроллер ICP ICP5085BL /RAID 10 8 дисков Оптимально

Новое оборудование: Asus RS720/2X Xeon 2620/48 ГБ DDR3 ECC FB RAM/Asus PIKE 2308 RAID-контроллер /RAID 10 8 дисков Оптимально

Во время этого процесса меня не просили клонировать загрузчик, хотя раздел sda1, смонтированный в / boot, впоследствии был клонирован.

Короче говоря, похоже, что клон был успешным, и старые данные находятся на новом сервере в правильных разделах, но при попытке загрузки я получаю Unable to access resume device (LABEL=SWAP-sda5) and mount: could not find filesystem '/dev/root', Тогда несколько больше нет таких файлов или каталогов ошибок, чем паника ядра.

Пока что я пробовал:

  • Восстановление initrd с использованием 64-битного DVD-диска CentOS 5.11 и следование этим инструкциям: https://wiki.centos.org/TipsAndTricks/CreateNewInitrd. Когда я использовал $(uname -r) значения, как указано, команда возвратила "Нет доступных модулей для ядра"2.6.18-398.el5". Я перезапустил команду с версией ядра #, которая была в существующем файле initrd (2.6.18-8.el5), и она работала Файл был точно такого же размера.

  • Установка драйвера LSI Fusion-MPT SAS2 для el5_3 для RAID через RPM с сайта Asus.

  • Удаление оригинала initrd и восстановление после выполнения установки контроллера RAID. initrd Файл был только очень немного меньше (один или два байта).

  • Получение UUID из Gparted для sda1, sda2, sda3, sda6 и изменение /etc/fstab с ними вместо ярлыков.

  • раскомментировав #boot=/dev/sda в grub.conf и изменив его на boot=/dev/sda1,

  • Изменение команды ядра в последовательности загрузки (изменение ro в rw пение root= указать на /dev/sda, /dev/sda3 и UUID=uuid из /dev/sda3), ни один из которых не работал.

Вещи, которые я еще не пробовал, что я знаю, это варианты:

  • Переустановка grub, но стоит ли переустанавливать на /dev/sda1 (где это было изначально) или /dev/sda? И как мне сделать резервную копию исходных настроек grub?

  • Установка драйвера контроллера RAID из источника (еще одна вещь, с которой я не очень знаком).

  • Запуск fsck: не слишком знаком, в прошлом он запускался с опциями -f -y, но, очевидно, вы хотите запустить его интерактивно, чтобы не сломать систему.

Я предполагаю, что проблема с драйвером RAID, но я не уверен, как включить его в initrd. Если есть лучший вариант для клонирования системы Linux, я открыт для него (Partimage не загружается, когда я пробую его, но я могу попробовать снова). Уже потратил на это три дня, так что, надеюсь, я провел тщательную проверку перед тем, как спросить.

Оригинал /etc/fstab:

[root@original_server ~]# cat /etc/fstab
LABEL=/                 /                       ext3    defaults        1 1
LABEL=/boot             /boot                   ext3    defaults        1 2
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
LABEL=/main             /main                   ext3    defaults        1 2
LABEL=/opt              /opt                    ext3    defaults        1 2
proc                    /proc                   proc    defaults        0 0
sysfs                   /sys                    sysfs   defaults        0 0
LABEL=SWAP-sda5         swap                    swap    defaults        0 0

Оригинал /boot/grub/grub.conf:

[root@original_server ~]# cat /boot/grub/grub.conf 
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sda3
#          initrd /initrd-version.img
#boot=/dev/sda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Enterprise Linux (2.6.18-8.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-8.el5 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.18-8.el5.img

TLDR: Попытка клонирования компьютера redhat 4 на более новое оборудование по сети с использованием Clonezilla и получение сообщения Не удалось найти файловую систему /dev/root. Внесены изменения в fstab и grub.conf, установлен драйвер RAID, изменены параметры загрузки и воссоздан initrd и тот же результат.

Я могу предоставить скриншоты или больше информации, если это необходимо. Любая помощь приветствуется, спасибо.

1 ответ

Проблема здесь в том, что root= вариант в GRUB kernel линия неверна. Вам необходимо обновить grub.cfg, а затем переустановите GRUB на загрузочное устройство.

Теперь я не уверен, где вы должны установить его. Обычно это должно идти к фактическому дисковому устройству, то есть /dev/sdxне разделить (/dev/sdxN). Тем не менее, это не должно вызвать проблем, если вы установите его в раздел.

Я не знаю, как обновлять существующую установку GRUB в Red Hat. Я искал инструкции, и нашел это: https://unix.stackexchange.com/questions/152222/equivalent-of-update-grub-for-rhel-fedora-centos-systems

Другие вопросы по тегам