Паника ядра при загрузке в RedHat Linux под VMWare Fusion:Файловая система не найдена

StackOverflow https://stackoverflow.com/questions/3199046

Вопрос

Это должно быть просто.Тем не менее, это превращает меня в ад.

Проблема
Я скомпилировал последнее ядро, и когда я перезагружаю свой компьютер, он вызывает панику ядра, связанную с файловой системой.

Вопрос
Как мне заставить новое ядро ​​распознавать файловую систему VMWare?Где-то должна быть какая-то настройка, которая позволяет установке Linux знать, что «жесткий диск» на самом деле не диск, а файл, представляющий виртуальную машину.

Фон
Прежде всего, я не гуру Linux.Это мой первый раз, когда я собираю ядро.Что я сделал, чтобы решить эту проблему:

  • Скачал версию ядра 2.6.34 с сайта kernel.org.
  • Распаковал исходник в папку
  • Следовал инструкциям по установке здесь:
  • http://www.cyberciti.biz/tips/compiling-linux-kernel-26.html
  • В общем, побежал:сделать менюконфигурацию, сделать, сделать модули, сделать модули_установить, сделать установку, перезагрузить
  • Я особо ничего не менял в разделе make Menuconfig.

При перезагрузке произошел сбой с ошибкой типа:

No volume groups found
Volume group "VolGroup00" not found
Unable to access resume device (/dev/VolGroup00/LogVol01)
mount: could not find filesystem '/dev/root'
setuproot: moving /dev failed: No such file or directory
setuproot: error mounting /proc: No such file or directory
setuproot: error mounting /sys: No such file or directory
switchroot: mount failed: No such file or directory
Kernel panic - not syncing: Attempted to kill init!

Среда
Я использую Red Hat Enterprise Linux Server (2.6.18-194.3.1.el5PAE) под управлением VMWare Fusion версии 3.1.0 (261058), работающего на MacBook Pro с OS X v10.5.8 и процессором Intel Core Duo с тактовой частотой 2,8 ГГц и 4 ГБ. Память DDR3 1067 МГц.На виртуальной машине выделено 2 ядра процессора и 2048 МБ памяти.Настройки жесткого диска виртуальной машины указывают на файл «Red Hat Enterprise Linux 5.vmdk», в котором для параметра «Тип шины» установлено значение «SCSI», для параметра «Размер диска» установлено значение 40 ГБ и установлен флажок «Разделить на файлы по 2 ГБ».

Когда я использую следующий файл /boot/grub/menu.lst, все работает отлично, за исключением того, что загружается неправильное ядро ​​(2.6.18-194.3.1.el5PAE вместо 2.6.34):

# 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/VolGroup00/LogVol00
#          initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.34)
    root (hd0,0)
    kernel /vmlinuz-2.6.34 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
    initrd /initrd-2.6.34.img
title Red Hat Enterprise Linux Server (2.6.18-194.3.1.el5PAE)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-194.3.1.el5PAE ro root=/dev/VolGroup00/LogVol00 rhgb quiet
    initrd /initrd-2.6.18-194.3.1.el5PAE.img
title Red Hat Enterprise Linux Server (2.6.18-194.el5PAE)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-194.el5PAE ro root=/dev/VolGroup00/LogVol00 rhgb quiet
    initrd /initrd-2.6.18-194.el5PAE.img

Когда я использую следующий файл (с закомментированными последними строками и парой других небольших изменений), он пытается загрузить правильное ядро, но загрузка завершается неудачно с описанной выше паникой ядра:

# 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/VolGroup00/LogVol00
#          initrd /initrd-version.img
#boot=/dev/sda
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.34)
    root (hd0,0)
    kernel /vmlinuz-2.6.34 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
    initrd /initrd-2.6.34.img
    savedefault
    boot
#title Red Hat Enterprise Linux Server (2.6.18-194.3.1.el5PAE)
#   root (hd0,0)
#   kernel /vmlinuz-2.6.18-194.3.1.el5PAE ro root=/dev/VolGroup00/LogVol00 rhgb quiet
#   initrd /initrd-2.6.18-194.3.1.el5PAE.img
#title Red Hat Enterprise Linux Server (2.6.18-194.el5PAE)
#   root (hd0,0)
#   kernel /vmlinuz-2.6.18-194.el5PAE ro root=/dev/VolGroup00/LogVol00 rhgb quiet
#   initrd /initrd-2.6.18-194.el5PAE.img

Я не понимаю, как в одном случае он может нормально определить файловую систему VMWare, а в другом - нет.Что мне не хватает?Есть ли какой-то специальный вариант компиляции, связанный с VMWare, который мне следует выбрать?Есть ли что-то на стороне VMWare Fusion, что мне нужно изменить?Я не могу этого понять!

Любые предложения очень ценятся!

Это было полезно?

Решение

Вероятно, ваше ядро ​​не может загрузить модули, необходимые для поиска ваших томов.

Я думаю, ваш initrd не в том месте.Он должен находиться в том же каталоге, что и установленное ядро.

Кроме того, не рекомендуется следовать инструкциям Debian для системы RedHat.В целом все в порядке, но вы делаете что-то относительно специфичное для дистрибутива.

Другие советы

У меня была аналогичная проблема.

Ядро было намного старше аппаратного обеспечения.Жесткий диск был подключен по SATA по умолчанию.Я перенастроил (в BIOS или в VM.Properties) оборудование для подключения по IDE.Мне помогло, я доволен :)

Я получил панику ядра в другой ситуации.У меня была рабочая станция RHEL 5.5, в которой произошел сбой BIOS/материнской платы.Поэтому я переместил диск с ОС на другой компьютер, идентичный (Dell T5500), и на другой компьютер, выпущенный на одно поколение назад (Dell T5400).Я делал это раньше, поскольку Linux содержит драйверы для многих материнских плат, и компьютер обычно загружается сразу.Обе паники ядра были идентичны.Я был очень удивлен.Я рассказал о вашем решении другу, и он вспомнил настройку BIOS, которая могла вызвать это.Мы изменили BIOS->Диски ->SATA Operation->RAID SATA на RAID AHCI.После изменения этой настройки BIOS оба компьютера загрузились с ОС RHEL5.5 HD!!На замененных компьютерах раньше была установлена ​​Windows.Он сказал мне, что для Windows требуется настройка ATA BIOS, а для Linux — другая.Кто знал!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top