LINUX.ORG.RU

История изменений

Исправление kostik87, (текущая версия) :

...
Загрузка с реального железа была запущена из меню биоса/efi кликом по жесткому диску, с которого нужно грузиться, потом управление как и положено перешло Grub'у (который начал грузиться нормальным образом, но потом отрапортовал что не видит ведра).

Это нормально, потому, что:

Виртуалке доступен только один, и он же первый, диск. На реальном железе этот диск идет третьим на SATA-контроллере

в конфиге grub2 перед чтением файлов с ядром и initramfs указано что-то вроде:

set root=(hd0,1)
Но при загрузке с реального железа этот диск уже третий (hd2), а не первый (hd0), читайте документацию по grub2, там была какая-то директива, что-то вроде search, которая позволяла выставлять корень (set root=(hd0,1)), раздел, откуда будут считываться загрузчиком образ ядра и initramfs, если на этом разделе найден определённый файл. Подсказать более точно не могу, т.к. сам использую grub-0.97.

С другой стороны вы можете подключить диск с Ubuntu на первый канал sata контроллера, что бы он был hd0.

Ну и даже после того как вы разберётесь как заставить grub2 определять раздел думаю у вас, возможно, будут некоторые проблемы с монтированием корневой файловой системы, вот из-за этого:

вначале пробовал в режиме SCSI (рекомендованный), потом в режиме IDE. В режиме SATA физический диск не создается, это известный неисправленный баг. На реальном железе контроллер работает в SATA3 AHCI.

Но это решается добавлением в initramfs соответствующих модулей (драйверов), а возможно и не будет проблем.

UPD:
Либо можете попробовать вообще убрать (закомментировать) директиву 'set root=(hd0,1)' из конфига grub2 и попробовать загрузиться.

Исходная версия kostik87, :

...
Загрузка с реального железа была запущена из меню биоса/efi кликом по жесткому диску, с которого нужно грузиться, потом управление как и положено перешло Grub'у (который начал грузиться нормальным образом, но потом отрапортовал что не видит ведра).

Это нормально, потому, что:

Виртуалке доступен только один, и он же первый, диск. На реальном железе этот диск идет третьим на SATA-контроллере

в конфиге grub2 перед чтением файлов с ядром и initramfs указано что-то вроде:

set root=(hd0,1)
Но при загрузке с реального железа этот диск уже третий (hd2), а не первый (hd0), читайте документацию по grub2, там была какая-то директива, что-то вроде search, которая позволяла выставлять корень (set root=(hd0,1)), раздел, откуда будут считываться загрузчиком образ ядра и initramfs, если на этом разделе найден определённый файл. Подсказать более точно не могу, т.к. сам использую grub-0.97.

С другой стороны вы можете подключить диск с Ubuntu на первый канал sata контроллера, что бы он был hd0.

Ну и даже после того как вы разберётесь как заставить grub2 определять раздел думаю у вас, возможно, будут некоторые проблемы с монтированием корневой файловой системы, вот из-за этого:

вначале пробовал в режиме SCSI (рекомендованный), потом в режиме IDE. В режиме SATA физический диск не создается, это известный неисправленный баг. На реальном железе контроллер работает в SATA3 AHCI.

Но это решается добавлением в initramfs соответствующих модулей (драйверов), а возможно и не будет проблем.