Форум русскоязычного сообщества Ubuntu


Автор Тема: Загрузка Ubuntu из образа (например VHD)  (Прочитано 3261 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ruzzz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
UPD: Как запустить ОС из raw образа, который можно получить например dd командой? Ниже я опишу как создал raw образ диска, вначале есть mbr, далее один partition на котором установлена Linux Mint.

Вообщем сперва я надумал установить Mint, и уже написал на форуме Mint. Но сообщество Ubuntu большое, Mint на основе Ubuntu, плюс я хочу установить и Ubuntu. Продублирую свое сообщение.

В теме указал VHD так чтобы сразу ясно было чего я хочу. Я понимаю что VHD в той же Windows поддерживается на уровне ядра, и этого нет в Linux, ну да и не нужно. Образ можно сделать разными способами. Я делал под Windows. Опишу на всякий случай все подробней. Cделал raw файл кратный 255*63*512 на 15ГБ, забил нулями. Проверил на то что файл не дефрагментирован. Примонтировал утилитой "Arsenal Image Mounter", она позволяет монтировать в Windows raw образы, и такие вирт. диски видны почти всем программам (штатных средств для raw - нет). Создал на нем mbr-разметку (не gpt). Далее в vmware создал вирт. машину и подключил этот "физический" диск. Запустил установку Mint 18 Mate. Разметил диск так что все ушло под "/", swap не создавал. Все прошло отлично. И самое главное, мне не пришлось еще и конвертировать образ в raw из vhd(Hyper-V)/vmdk(VMWare)/vdi(VirtualBox). После установки подключил к загрузчику Win8.1 - grub4dos, но по всей видимости он против таких больших размеров. «Позаимствовал» версию grub(или grub4dos, не знаю) у автора программы EasyBCD, назвал он ее NeoGrub. Подключил его, создал menu.lst - все как-бы заработало, но в процессе загрузки Mint вываливает в терминал. А так как я понятия не имею как грузиться ядро linux, тем более из образа, решил все таки перестать шаманить с настройками, и спросить у сообщества. Прошу помощи.

Сперва об ошибках. Вот такой menu.lst:

default 1
timeout 5
 
title Windows XP x32
# map (hd0,4)/OS/WinXP_x32.vhd (hd0)
map /OS/WinXP_x32.vhd (hd0)
map --hook
root (hd0,0)
chainloader /ntldr
 
title Test1
find --set-root /OS/Mint.img
map /OS/Mint.img (hd0)
map --hook
root (hd0,0)
kernel /boot/vmlinuz-4.4.0-21-generic
initrd /boot/initrd.img-4.4.0-21-generic
 
title Test2
find --set-root /OS/Mint.img
map /OS/Mint.img (hd0)
map --hook
chainloader (hd0)+1
boot

Здесь кстати WinXP грузится прекрасно, использую драйвер WinVBlock. Я так понимаю (далее мои выдумки на основе гугления) он при загрузке ядра видит что Grub4dos перехватывает INT 13, и создает виртуальный SCSI интерфейс продолжая в защищенном режиме работу с образом как с диском.

Далее я создал два тестовых варианта загрузки. Оба работают почти. Вот скриншоты прикрепил ниже. В первом случае при загрузке видны ошибки, во втором случае идет загрузка с заставкой, из которой вываливает в терминал.





В инете все говорят о map'инге но только для iso, я так понимаю и loopback устройства это только для iso? Iso мне не подходит, во-первых нужно дофига памяти под ram-диск, во вторых я хочу установить систему и работать в ней нормально. А с образом хорошо то, что не нужно разбивать физ. диск на partitions. Плюс удобно делать резервную копию. На основе опыта работы с windows, какой-либо заметной разницы в скорости между образом или реальным разделом - не заметил.

В Test1 я так понимаю мну нужно передать какие-то параметры ядру vmlinuz? Подскажите какие. В Test2 мне пришла такая мысль, первый grub4dos замещается вторым grub из mbr образа, и что-то ломается. Т.е. мне нужно использовать Test1 но с правильными параметрами ядра?

В windows все таки проще с тем что можно вообще обойтись без mbr и передать управление на активный раздел, далее загрузчик знает что делать.

Сейчас качаю последнюю Ubuntu, буду устанавливать ее. Подскажите какие параметры для vmlinuz прописать. Или хотя бы ключевые слова что искать, но так чтоб мне гугл не вываливал про "Загрузку iso с флешки". Если все получится, то еще вопрос, как подключить swap отдельно. Заранее благодарен.

Исправил.
Вставка полноразмерных изображений в сообщения запрещена.
Прочитайте правила:

«Руководство по добавлению изображений на форум»
--Aleksandru
« Последнее редактирование: 20 Ноябрь 2016, 00:32:47 от Ruzzz »

Оффлайн andytux

  • Старожил
  • *
  • Сообщений: 1522
    • Просмотр профиля
Re: Загрузка Ubuntu из образа (например VHD)
« Ответ #1 : 19 Ноябрь 2016, 15:05:10 »
Нашел вот это

http://flashboot.blogspot.ru/2012/02/vhd.html

Я так понял: Mint.img - это VHD на который установлен минт. Если этот образ загрузить в виртуальную машину, то запустится загрузчик. В нем можно выбрать загрузку минт и система загрузится нормально.
Если так, то осталось только передать управление загрузчику в VHD. Для этого, если верить примеру на указанном выше сайте, в ваш "Test2" должен выглядеть так:
title Test2
find --set-root /OS/Mint.img
map /OS/Mint.img (hd0)
map --hook
root (hd0,0)
chainloader (hd0)+1

Оффлайн Ruzzz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Загрузка Ubuntu из образа (например VHD)
« Ответ #2 : 20 Ноябрь 2016, 00:30:27 »
Mint.img - это raw образ, который можно получить например dd командой, я просто его получил другим способом. Т.е. это образ диска, вначале есть mbr, далее один partition на котором установлена Linux Mint.

Оффлайн andytux

  • Старожил
  • *
  • Сообщений: 1522
    • Просмотр профиля
Re: Загрузка Ubuntu из образа (например VHD)
« Ответ #3 : 20 Ноябрь 2016, 08:59:56 »
Цитировать
...качаю последнюю Ubuntu, буду устанавливать ее. Подскажите какие параметры для vmlinuz прописать
В установленной Ubuntu смотри файл /boot/grub/grub.cfg Фрагмент моего файла.
(Нажмите, чтобы показать/скрыть)
Это для grub2. Синтаксис другой, но параматры ядра от этого не зависят.
Тебе-бы попрактиковаться для начала загружать обычную установленную систему, без всяких образов.
На первом скриншоте видно, что ядро не может найти корневую файловую систему. Параметр ядра root как раз и указывает где ее искать.
В моем примере ищет на устройстве /dev/sda1
  linux /boot/vmlinuz-4.4.0-31-generic root=/dev/sda1 ro  quiet
Вместо имени устройства может быть метка тома или uuid-раздела. Стандартно - UUID.
Цитировать
...еще вопрос, как подключить swap отдельно.
Не понял, уточни. Но на твоем месте пока со свапом не заморачивался. Научись для начала стабильно загружать систему из своего образа.
Мое мнение о VHD. Как универсальное средство для виндовс и линух - может и сгодиться. А если только линух - родные линух способности лучше.

Оффлайн Ruzzz

  • Автор темы
  • Новичок
  • *
  • Сообщений: 3
    • Просмотр профиля
Re: Загрузка Ubuntu из образа (например VHD)
« Ответ #4 : 21 Ноябрь 2016, 12:42:49 »
Короче погуглил я, и похоже кина не будет. Пока по-крайней мере. На данный момент остановился на LiveCD с persistent. Жаль правда не все дистр. поддерживают, из тех что хочу протестировать.

 

Страница сгенерирована за 0.056 секунд. Запросов: 24.