LINUX.ORG.RU

Установка Linux на USB жесткий диск в VirtualBox

 , ,


0

1

Раньше устанавливал Kubuntu 22.04 на внешний жесткий диск следующим образом:

  1. создаю raw vmdk с помощью команды VBoxManage internalcommands createrawvmdk -filename ~/sda.vmdk -rawdisk /dev/sda
  2. монтирую его в виртуальную машину как жесткий диск
  3. устанавливаю на него систему
  4. подключаю его к компу
  5. загружаюсь с внешнего жесткого диска

Недавно решил повторить это на Fedora 42 и Alt 11 и столкнулся с проблемой: после установки всё нормально грузится в VirtualBox, но не может загрузиться на настоящем железе: говорит, что не может найти устройство по uuid, т.е. начальный загрузчик нормально загружается, initramfs стартует, но дальше ничего не происходит.

Если подключать USB жесткий диск к VirtualBox-у как USB-устройство, а не как raw vmdk, то всё устанавливается и потом загружается нормально, но при этом скорость работы с USB-устройством в VirtualBox значительно медленнее.

У меня два вопроса:

  1. есть ли какие-то предположения почему старый способ перестал работать?
  2. как сделать так, чтобы после установки на raw vmdk система нормально загружалась на настоящем железе?

Может не записались нужные изменения на диск? Помнится мне, в raw режиме flush() из гостя отрабатывал мгновенно, без реального подтверждения от железа.

Elyas ★★★★★
()

Чтобы оно грузилось с USB в kernel/initramfs должны быть соотв. драйвера и желательно опция rootwait (ожидание root устройства).

Когда ты в VB ставишь на USB скорее всего эти драйвера/опции прописываются, как надо.

Если подключать USB жесткий диск к VirtualBox-у как USB-устройство, а не как raw vmdk, то всё устанавливается и потом загружается нормально, но при этом скорость работы с USB-устройством в VirtualBox значительно медленнее.

Что мешает после установки подключать его в VB как raw?

MirandaUser2 ★★
()
Последнее исправление: MirandaUser2 (всего исправлений: 1)
Ответ на: комментарий от Elyas

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

Goganchic ★★
() автор топика

начальный загрузчик нормально загружается, initramfs стартует

а в initramfs соответствующие модули подгружены?

Не знаю, что там в федоре, но в арче, допустим, когда ставишь систему на виртуалке, а потом раскатываешь на реальное железо, то загрузиться можно только с fallback. После загрузки достаточно пересоздать initramfs и всё заработает как надо.

ALiEN175
()
Ответ на: комментарий от ALiEN175

С Fedora тоже самое было: в fallback загрузилось, после этого всё заработало. Но если подключить жесткий диск как USB-устройство, то сразу всё правильно создается.

Goganchic ★★
() автор топика
  • Markdown
Пустая строка (два раза Enter) начинает новый абзац. Знак '>' в начале абзаца выделяет абзац курсивом цитирования.
Внимание: прочитайте описание разметки Markdown.
Используйте Ctrl-Enter для размещения комментария