Grub загрузка с iso образа: различия между версиями

Материал из support.qbpro.ru
imported>Vix
(Новая страница: «* [http://habrahabr.ru/post/111045/ Загрузка c iso образов при помощи memdisk и grub4dos для WinXP] * [http://help.ubuntu.ru/wiki/%D0%…»)
 
imported>Vix
Нет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
Ноут уже довольно старенький. Загрузки с флешек в биосе тоже нет. После кратковременной паники было найдено решение.
Оказалось, что grub2 научился понимать формат ISO 9660 и может загружать ОС прямо из ISO-образа, расположеного на жестком диске. Как выяснилось далее, не все системы готовы к такому повороту событий. Многие по тем или иным причинам приходят в замешательство при загрузке. К счастью, Ubuntu не является одной из них.
Ну, приступим. Первым делом добавляем новый пункт меню в Grub2. Для этого правим /etc/grub.d/custom_40, добавляя в конец файла следующие строки:
menuentry "Debian Live" {
set root=(hd0,7)
set isofile="/debian8.iso"
loopback loop $isofile
linux (loop)/install.386/vmlinuz boot=install.386 iso-scan/filename=$isofile
noeject noprompt --
initrd (loop)/install.386/initrd.lz
}
И что же мы тут наворотили:
В “set root” указываем раздел, в котором находится образ iso
В "set isofile" указываем образ DVD"
В “loopback loop” создаем loop-устройство, к которому монтируем файл нашего iso (посмотрите, например, мануал mount, раздел “Loop Device”, если не знаете, что это за устройство loop).
Две следующие строчки указывают нахождение ядра и образа initrd относительно корня loop устройства (путь к файлам ядра и initrd внутри ISO-образа).
Если кто попытается повторить, имейте в виду:
1. В set root=(hd0,7) следует заменить 7 на номер раздела на вашей машине, в котором находится iso-шный образ системы. Например, если Вы загрузили ubuntu-11.04-desktop-amd64.iso в раздел /dev/sda1, строчка изменится на set root=(hd0,1).
2. Я загрузил ISO в корень своего home-раздела (коим является (hd0,7). Если у Вас образ окажется в какой-нибудь папке, указывайте полный путь к образу относительно корня.
Обновляем конфигурационный файл grub2:
update-grub
Собственно далее я создал новый раздел для будущей второй системы при помощи fdisk, и перезагрузился.
при использовании стандартного образа dvd необходимо подключить через usb привод с этим dvd,
так как при старте инсталлятора будет искать привод и пытаться с него читать...
[https://habrahabr.ru/post/118472/ использована статья эта]
* [http://habrahabr.ru/post/111045/ Загрузка c iso образов при помощи memdisk и grub4dos для WinXP]
* [http://habrahabr.ru/post/111045/ Загрузка c iso образов при помощи memdisk и grub4dos для WinXP]
* [http://help.ubuntu.ru/wiki/%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_ubuntu_%D1%81_iso Загрузка и установка системы прямо из iso-образа]
* [http://help.ubuntu.ru/wiki/%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_ubuntu_%D1%81_iso Загрузка и установка системы прямо из iso-образа]

Текущая версия от 09:30, 7 октября 2016

Ноут уже довольно старенький. Загрузки с флешек в биосе тоже нет. После кратковременной паники было найдено решение. Оказалось, что grub2 научился понимать формат ISO 9660 и может загружать ОС прямо из ISO-образа, расположеного на жестком диске. Как выяснилось далее, не все системы готовы к такому повороту событий. Многие по тем или иным причинам приходят в замешательство при загрузке. К счастью, Ubuntu не является одной из них.

Ну, приступим. Первым делом добавляем новый пункт меню в Grub2. Для этого правим /etc/grub.d/custom_40, добавляя в конец файла следующие строки:

menuentry "Debian Live" {
set root=(hd0,7)
set isofile="/debian8.iso"
loopback loop $isofile
linux (loop)/install.386/vmlinuz boot=install.386 iso-scan/filename=$isofile 
noeject noprompt --
initrd (loop)/install.386/initrd.lz
}

И что же мы тут наворотили: В “set root” указываем раздел, в котором находится образ iso В "set isofile" указываем образ DVD" В “loopback loop” создаем loop-устройство, к которому монтируем файл нашего iso (посмотрите, например, мануал mount, раздел “Loop Device”, если не знаете, что это за устройство loop). Две следующие строчки указывают нахождение ядра и образа initrd относительно корня loop устройства (путь к файлам ядра и initrd внутри ISO-образа).

Если кто попытается повторить, имейте в виду:

1. В set root=(hd0,7) следует заменить 7 на номер раздела на вашей машине, в котором находится iso-шный образ системы. Например, если Вы загрузили ubuntu-11.04-desktop-amd64.iso в раздел /dev/sda1, строчка изменится на set root=(hd0,1). 2. Я загрузил ISO в корень своего home-раздела (коим является (hd0,7). Если у Вас образ окажется в какой-нибудь папке, указывайте полный путь к образу относительно корня.

Обновляем конфигурационный файл grub2: update-grub

Собственно далее я создал новый раздел для будущей второй системы при помощи fdisk, и перезагрузился.

при использовании стандартного образа dvd необходимо подключить через usb привод с этим dvd, так как при старте инсталлятора будет искать привод и пытаться с него читать... использована статья эта