Загрузка и установка системы прямо из iso-образа
Содержание
Если у вас есть iso-образ установочного диска Ubuntu и есть уже установленная система, то для того, чтобы загрузить установщик Ubuntu, имеющийся iso даже не обязательно записывать на cd-диск — вы можете загрузиться и произвести установку непосредственно из iso-образа. Для этого вам потребуется установленный загрузчик GRUB2, через который мы и будем загружаться.
Сложность состоит в том, что загрузочное устройство с образом должно быть примонтировано как отдельный носитель. Если жёсткий диск только один, и нет ни cdrom, ни флешки, то решить проблему можно двумя способами, описанными ниже:
Если же есть другой жёсткий диск, то используйте третий способ.
Загрузка утилитой UNetbootin
Запустить и задать способ установки:
В пункте «Тип» выбираем «Жёсткий диск». Далее нажать «OK» и перезагрузить компьютер. В меню Grub появятся пункты, из них верхний «UNetbootin» будет загружать заданный образ.
При повторном запуске утилиты она спросит, удалить ли установленный в корне диска образ. (В текущей версии утилита может удалить не всё, оставив в корне диска пустые папки.)
Загрузка с образов Alternate или Desktop
Загрузка с образа Alternate
В нашем примере iso-образ будет называться «ubuntu-9.10-alternate-i386.iso» и лежать в папке
/iso, которая находится на отдельном home-разделе. Приступим!
Перезагрузите компьютер и дождитесь появления загрузочного меню grub2. Если вместо меню обычно отображается надпись «grub loading…» — нажмите в этот момент Esc . Попав в меню, нажмите C , чтобы перейти в консоль grub2. Здесь мы и будем орудовать.
Монтирование iso-образа производится командой
самое интересное здесь — (hd0,6). Первая цифра обозначает номер жесткого диска, где 0 — первый жесткий диск (/dev/sda в Linux), 1 — второй (/dev/sdb) и т.д. вторая цифра обозначает номер раздела на диске, здесь нумерация начинается с единицы. То есть «hd0,6» соответствует разделу номер 6 на первом жестком диске (или же /dev/sda6). Дальше следует полный путь к файлу, начиная от корня файловой системы.
После монтирования iso-образа можно для проверки выполнить команду
среди всего прочего должно появиться устройство (loop) . Если оно есть — установим его в качестве корневого раздела, т.к. именно с него мы будем загружаться:
Данная операция завершится не сразу, т.к. размер установочного iso-образа тоже не мал. По завершении появится сообщение о том, что задан корневой раздел (loop) с файловой системой iso9660. Теперь осталось совсем немного. загрузите ядро такой командой:
Теперь нужно загрузить initrd-образ, содержащий в себе сам установщик и все необходимое для его работы:
Если все хорошо — даем команду на загрузку:
После этого замелькают строчки загрузки и через несколько секунд вы увидите знакомый синий экран alternate-установщика. Если все прошло успешно — установщик найдет нужные файлы без лишних вопросов. Если же все остановится на этапе «поиск и монтирование cdrom» — где-то что-то не получилось 🙂
P.P.S. Поскольку содержимое iso-образа распаковывается в оперативную память, рекомендуется наличие как минимум гигабайта таковой.
Загрузка с образа Desktop
Сначала скачайте куда-нибудь образ Ubuntu Desktop. Я загрузил Ubuntu Lucid amd64 Desktop образ, переименовал его в ubuntu.iso и положил в корень sda7 раздела. Главное запомните полный путь до образа от корня раздела и номер этого самого раздела. Можно перезагружаться.
На самом деле проще всего положить образ Ubuntu на флешку, которая определиться в GRUB как (fd0). Но в этом случае возможно разумней будет сделать Live Flash из iso образа с помощью встроенной в Ubuntu утилиты создания загрузочных флешек.
При загрузке компьютера когда появится меню GRUB нажмите клавишу C . Вы попадёте в консоль GRUB. Наберите
Появится список всех ваших разделов. Найдите там нужный, в моём случае он будет называться (hd0,7). hd0 — это обычно sda, hd1 — sdb, и т.д. 1)
Поставив нужный вам диск и полный путь до iso образа ubuntu. Если всё успешно сработало, то пишем
Далее грузим ядро Linux командой
Не забудьте поменять путь до образа!
Всё, можно загружаться. Даём команду
и ждём, пока загрузится LiveCD Ubuntu.
Загрузка с помощью grub-imageboot и MemDisk
Есть способ загружать образ имея лишь один жёсткий диск, за счёт того, образ будет смонтирован на виртуальный диск, созданный в памяти.
Поэтому рекомендуется использовать другой простой способ с утилитой UNetbootin, описанный в соседнем разделе.
Для работы пригодится утилита grub-imageboot:
Загрузка с iso образа в Grub
Есть не так уж много вариантов использования нескольких дистрибутивов Linux на одной машине. Вы можете установить их все на жесткий диск, на виртуальную машину или сохранить в виде ISO образа и загружаться в реальном времени.
Первый и второй способы не очень выгодны так как требуют очень много места на жестком диске, с другой стороны, для третьего способа нужно иметь CD диск или USB флешку для хранения образа и загрузчика. Но есть еще один вариант — хранить ISO образ на жестком диске, и загружаться с него по мере надобности. Здесь не нужно столько дискового пространства как при установке, и не нужен внешний носитель информации. В этой статье будет рассмотрена загрузка с iso образа в Grub.
Что нам понадобится
В этой статье мы будем использовать загрузчик Grub, впрочем, он и так используется в большинстве дистрибутивов Linux. Также нам понадобится ISO образ, с которого будем загружаться и вы должны знать какой раздел диска у вас загрузочный. Чтобы узнать выполните:
Загрузочный раздел будет помечен знаком * в колонке Boot. Например, у меня /dev/sda1 или как пишется в Grub hd0,1 — загрузочный.
Разделы /dev/sda2 и /dev/sdb3 будут называться в Grub hd0,2 и hd1,3 соответственно. В синтаксисе Grub именование дисков начинается с нуля, а именование разделов с единицы.
Загрузка с iso образа в Grub
Сначала откройте файл /etc/default/grub и закомментируйте там эту строку если она там есть:
Перед строчкой должна стоять решетка. Сохраните изменения, а затем откройте файл /etc/grub.d/40_custom. Здесь мы добавим пункт для загрузки с образа, синтаксис выглядит следующим образом:
menuentry «Заголовок пункта» <
set isofile = «Адрес ISO файла»
loopback loop Загрузочный раздел в форме записи Grub $isofile
Другие параметры
>
Например, запись для загрузки Ubuntu будет выглядеть вот так:
menuentry «Ubuntu 14.04 (LTS) Live Desktop amd64» <
set isofile=»/boot/ubuntu-14.04-desktop-amd64.iso»
loopback loop (hd0,1)$isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$
initrd (loop)/casper/initrd.lz
>
Если вы хотите запускать Gparted:
menuentry «GParted Live amd64» <
set isofile=»/boot/gparted-live-0.18.0-2-amd64.iso»
loopback loop (hd0,1)$isofile
loopback loop $isofile
linux (loop)/live/vmlinuz boot=live config union=aufs noswap noprompt ip=frommedia toram=filesystem.squashfs findiso=$
initrd (loop)/live/initrd.img
>
Или даже Fedora Linux:
menuentry «Fedora 20 Live Desktop x86_64» <
set isofile=»/boot/Fedora-Live-Desktop-x86_64-20-1.iso»
loopback loop (hd0,1)$isofile
loopback loop $isofile
linux (loop)/isolinux/vmlinuz0 root=live:CDLABEL=Fedora-Live-Desktop-x86_64-20-1 rootfstype=auto ro rd.live.image quiet rhgb rd.luks=0 rd.md=0 rd.dm=0 iso-scan/filename=$
initrd (loop)/isolinux/initrd0.img
>
Обратите внимание, что опции будут меняться в зависимости от дистрибутива и расположения в нем загрузочных файлов. Кроме того, важно то где размещен ISO образ, если ваш домашний каталог зашифрован лучше его хранить на загрузочном разделе, как в примерах выше.
Хотите больше? Можно загрузится с ISO для автоматического выполнения каких-либо действий. Например, если вы параноик и хотите иметь возможность быстро стереть свой жесткий диск можно использовать DBAN. Но будьте осторожны так как это сотрет все данные без возможности восстановления.
menuentry «Darik’s Boot and Nuke» <
set isofile=»/boot/dban.iso»
loopback loop (hd0,1)$isofile
linux (loop)/dban.bzi nuke=»dwipe» silent
>
menuentry «Darik’s Boot and Nuke» <
set isofile=»/boot/dban.iso»
loopback loop (hd0,1)$isofile
linux (loop)/dban.bzi
>
Есть еще много вещей, которые можно сделать с помощью загрузки ISO образа в Grub, неважно хотите ли вы очень быструю Live систему или иметь возможность уничтожить все кончиком пальца.
Загрузка windows с iso образа в Grub
Если вам нужна загрузка windows с iso образа grub, то это делается тоже не очень сложно, но немного по другому. Сначала нужно скачать syslinux и извлечь оттуда memdisk в папку /boot/. Это должна быть папка, куда установлены файлы Grub. Дальше добавьте в конфигурационный файл 40-grub.conf такие строки:
menuentry «Boot Windows» <
search -f «—set-root /Winblows.iso»
insmod memdisk
linux16 /boot/memdisk iso
initrd16 /Winblows.iso
>
Образ Windows должен лежать в корне одного из разделов и называться Windows.iso, дальше команда search автоматически найдет этот раздел и установит его в качестве корня. Потом останется только загрузка windows с iso образа grub.
Завершение настройки Grub
Мы все подготовили, теперь остается обновить конфигурацию загрузчика Grub, чтобы новые пункты добавились в /boot/grub/grub.cfg и появились в меню загрузки:
В других дистрибутивах может понадобится команда:
sudo grub-mkconfig -o /boot/grub/grub.cfg
Затем можно перезагрузиться и посмотреть что получилось:
Выводы
Теперь вы знаете как выполняется загрузка iso образа grub, здесь нет ничего сложного, но зато это очень полезная возможность получить несколько систем на своем компьютере, затратив при этом минимум памяти и времени на их установки. Если у вас остались вопросы, спрашивайте в комментариях!



