Grub загрузка с iso образа: различия между версиями
imported>Vix (Новая страница: «* [http://habrahabr.ru/post/111045/ Загрузка c iso образов при помощи memdisk и grub4dos для WinXP] * [http://help.ubuntu.ru/wiki/%D0%…») |
imported>Vix Нет описания правки |
||
Строка 1: | Строка 1: | ||
Ноут уже довольно старенький. Загрузки с флешек в биосе тоже нет. После кратковременной паники было найдено решение. | |||
Оказалось, что grub2 научился понимать формат ISO 9660 и может загружать ОС прямо из ISO-образа, расположеного на жестком диске. Как выяснилось далее, не все системы готовы к такому повороту событий. Многие по тем или иным причинам приходят в замешательство при загрузке. К счастью, Ubuntu не является одной из них. | |||
Ну, приступим. Первым делом добавляем новый пункт меню в Grub2. Для этого правим /etc/grub.d/custom_40, добавляя в конец файла следующие строки: | |||
menuentry "Ubuntu Live" { | |||
set root=(hd0,7) | |||
loopback loop /ubuntu-11.04-desktop-amd64.iso | |||
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-11.04-desktop-amd64.iso noeject noprompt -- | |||
initrd (loop)/casper/initrd.lz | |||
} | |||
И что же мы тут наворотили: | |||
В “set root” указываем раздел, в котором находится образ iso | |||
В “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:25, 7 октября 2016
Ноут уже довольно старенький. Загрузки с флешек в биосе тоже нет. После кратковременной паники было найдено решение. Оказалось, что grub2 научился понимать формат ISO 9660 и может загружать ОС прямо из ISO-образа, расположеного на жестком диске. Как выяснилось далее, не все системы готовы к такому повороту событий. Многие по тем или иным причинам приходят в замешательство при загрузке. К счастью, Ubuntu не является одной из них.
Ну, приступим. Первым делом добавляем новый пункт меню в Grub2. Для этого правим /etc/grub.d/custom_40, добавляя в конец файла следующие строки:
menuentry "Ubuntu Live" { set root=(hd0,7) loopback loop /ubuntu-11.04-desktop-amd64.iso linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-11.04-desktop-amd64.iso noeject noprompt -- initrd (loop)/casper/initrd.lz }
И что же мы тут наворотили: В “set root” указываем раздел, в котором находится образ iso В “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, так как при старте инсталлятора будет искать привод и пытаться с него читать... использована статья эта