- Загрузка и установка системы прямо из iso-образа
- Содержание
- Загрузка утилитой UNetbootin
- Загрузка с образов Alternate или Desktop
- Загрузка с образа Alternate
- Загрузка с образа Desktop
- Загрузка с помощью grub-imageboot и MemDisk
- Загрузка дистрибутивов Linux непосредственно из файлов образов дисков формата ISO на жестком диске
- Получение образа диска дистрибутива Linux формата ISO
- Исследование содержимого файла формата ISO
- Определение номера раздела жесткого диска
- Создание элемента меню системного загрузчика GRUB2
- Загрузка с ISO образа в Grub
- Что нам понадобится
- Загрузка с ISO образа в Grub
- Загрузка windows с iso образа в Grub
- Завершение настройки Grub
- Выводы
Загрузка и установка системы прямо из 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:
Источник
Загрузка дистрибутивов Linux непосредственно из файлов образов дисков формата ISO на жестком диске
Оригинал: How to Boot Linux ISO Images Directly From Your Hard Drive
Автор: Chris Hoffman
Дата публикации: 26 сентября 2014 г.
Перевод: A.Панин
Дата перевода: 16 октября 2015 г.
Системный загрузчик Linux под названием GRUB2 позволяет загружать файлы образов дисков дистрибутивов Linux формата ISO непосредственно с жесткого диска. Благодаря этой возможности вы можете загружать Live CD Linux или даже устанавливать дистрибутивы Linux на другой раздел жесткого диска без необходимости записи образа диска на оптический диск или на накопитель с интерфейсом USB и последующей перезагрузки системы.
Мы проверили работоспособность данного механизма с помощью образа диска дистрибутива Ubuntu 14.04 и выяснили, что дистрибутив Ubuntu и основывающиеся на нем дистрибутивы полностью поддерживают его. Другие дистрибутивы Linux должны загружаться аналогичным образом.
Получение образа диска дистрибутива Linux формата ISO
Описываемый в статье механизм работоспособен лишь в том случае, если у вас уже имеется в распоряжении система Linux, которая установлена на жесткий диск. При этом для ее загрузки должен использоваться системный загрузчик GRUB2, который является стандартным системным загрузчиком в большинстве дистрибутивов Linux. К сожалению, вы не сможете загрузить образ диска дистрибутива Linux формата ISO из системы Windows с помощью штатного загрузчика Windows.
Скачайте файлы образов дисков формата ISO, которые вы планируете использовать, и разместите их на одном из разделов жесткого диска, используемых установленной системой Linux; системный загрузчик GRUB2 должен поддерживать большинство систем Linux. Если вы желаете использовать Live-окружение без установки дистрибутива на жесткий диск, следует скачать версии «Live CD» каждого из файлов формата ISO. Многие загрузочные диски с окружением на основе Linux должны также отлично работать.
Исследование содержимого файла формата ISO
Вам придется заглянуть внутрь файла формата ISO для того, чтобы выяснить, где именно размещены определенные файлы. Вы можете открыть файл формата ISO, например, с помощью такого приложения с графическим интерфейсом, как Менеджер архивов/File Roller, которое поставляется в составе дистрибутива Ubuntu и других дистрибутивов с окружениями рабочего стола, основанными на технологиях проекта GNOME. Для этого следует выбрать файл формата ISO в файловом менеджере Nautilus, нажать правую кнопку мыши и выбрать пункт «Открыть с помощью «Менеджер архивов»».
В файле формата ISO вам придется найти файлы ядра и образа initrd. Если вы используете файл образа диска формата ISO дистрибутива Ubuntu, вы можете обнаружить эти файлы в директории casper — файл vmlinuz является файлом ядра Linux, а файл initrd — файлом образа initrd. Информация о расположении этих файлов в рамках файла образа диска формата ISO понадобится позднее.
Определение номера раздела жесткого диска
Системный загрузчик GRUB использует схему именования разделов жестких дисков, отличную от той, что используется в Linux. В системе Linux файл устройства /dev/sda0 соответствует первому разделу первого жесткого диска — буква a соответствует первому жесткому диску, а цифра 0 — его первому разделу. В GRUB запись (hd0,1) эквивалентна /dev/sda0. Цифра 0 соответствует первому жесткому диску, а цифра 1 — первому разделу на нем. Другими словами, в схеме именования дисковых устройств системного загрузчика GRUB нумерация дисков начинается с 0, а нумерация разделов — с 1; да, это не очень логично. Например, с помощью записи (hd3,6) обозначается шестой раздел четвертого жесткого диска.
Вы можете использовать команду fdisk -l для получения необходимой информации о дисковых разделах. В случае использования Ubuntu для получения данной информации следует открыть терминал и выполнить в нем следующую команду:
В результате вы увидите список путей к файлам дисковых устройств Linux, которые несложно преобразовать в имена дисковых устройств системного загрузчика GRUB. Например, на иллюстрации ниже несложно обнаружить системный раздел, представленный файлом устройства /dev/sda1, который в рамках системного загрузчика GRUB будет обозначаться как (hd0,1).
Создание элемента меню системного загрузчика GRUB2
Простейший способ добавления пользовательского элемента меню системного загрузчика связан с редактированием файла сценария /etc/grub.d/40_custom. Данный сценарий предназначен для автоматического добавления пользовательских элементов в меню системного загрузчика. После редактирования этого файла данные из файла /etc/defaults/grub будут комбинироваться с данными от сценариев из директории /etc/grub.d/, в результате чего будет генерироваться файл конфигурации системного загрузчика /boot/grub/grub.cfg; при этом вы не должны редактировать последний файл вручную. Файл конфигурации системного загрузчика в любом случае должен генерироваться автоматически на основе данных, добавленных в другие файлы.
Вам придется получить привилегии пользователя root для редактирования файла сценария /etc/grub.d/40_custom. В случае использования дистрибутива Ubuntu вы можете открыть окно терминала и выполнить следующую команду:
Разумеется, вы можете использовать ваш любимый текстовый редактор для редактирования рассматриваемого файла сценария. Например, вы можете заменить в команде «gedit» на «nano» для редактирования файла с помощью консольного текстового редактора Nano.
Если вы не добавляли другие элементы меню системного загрузчика ранее, вы должны увидеть практически пустой файл. Вам придется добавить одну или несколько секций загрузки файла образа диска формата ISO после строк с комментариями.
С помощью данной секции вы можете загрузить дистрибутив Ubuntu или другие основанные на Ubuntu дистрибутивы, располагая лишь файлом образа диска формата ISO. Мы проверили работоспособность данной секции с помощью файла образа диска версии дистрибутива Ubuntu 14.04:
Отредактируйте данное описание элемента меню системного загрузчика: укажите желаемое имя элемента меню, корректный путь к файлу образа диска формата ISO на жестком диске вашего компьютера, а также номер жесткого диска и раздела, на котором находится это файл. В том случае, если файлы vmlinuz и initrd имеют отличные имена или расположены в других директориях, вам также придется указать корректные пути к этим файлам.
(В том случае, если вы используете отдельный раздел жесткого диска для хранения директории /home с данными пользователей и разместили в этой директории образ диска формата ISO, вам придется убрать префикс /home из пути к файлу образа диска аналогичным образом: set isofile= » /name/Downloads/$
Важное замечание: В различных дистрибутивах Linux необходимо использовать различные описания элементов меню системного загрузчика с различными параметрами загрузки ядра ОС. На сайте проекта GRUB Live ISO Multiboot приводятся примеры множества описаний элементов меню системного загрузчика для различных дистрибутивов Linux . У вас не должно возникнуть сложностей при адаптации этих примеров к файлам образов дисков формата ISO, которые вы желаете загружать. Также вы можете воспользоваться поисковой системой для поиска в сети примера описания элемента меню системного загрузчика на основе имени и версии дистрибутива, который вы желаете загрузить, добавив в строку поиска «boot from ISO in GRUB» для получения дополнительной информации.
Если вы хотите добавить большее количество элементов меню системного загрузчика для загрузки файлов образов дисков формата ISO, вы должны добавить дополнительные секции в рассматриваемый файл.
После того, как вы закончите добавление секций, сохраните файл. Сразу же после этого перейдите в окно терминала и выполните следующую команду:
В процессе следующей загрузки компьютера вы увидите описанный ранее элемент меню системного загрузчика, который может быть выбран для загрузки указанного ранее файла образа диска формата ISO. В некоторых случаях в процессе загрузки компьютера для перехода к меню системного загрузчика необходимо удерживать нажатой клавишу Shift.
Если при попытке загрузки вашего файла образа диска формата ISO вы видите сообщение об ошибке или черный экран, вы допустили ошибку при выполнении какого-либо из описанных действий. Даже в том случае, если вы правильно указали путь к файлу образа диска формата ISO и имя дискового устройства, на котором он хранится, в рамках загружаемого файла образа диска могут использоваться отличные пути к файлам vmlinuz и initrd или отличные параметры загрузки.
Источник
Загрузка с ISO образа в Grub
Есть не так уж много вариантов использования нескольких дистрибутивов Linux на одной машине. Вы можете установить их все на жесткий диск, на виртуальную машину или сохранить в виде ISO образа и загружаться в реальном времени.
Первый и второй способы не очень выгодны так как требуют очень много места на жестком диске, с другой стороны, для третьего способа нужно иметь CD диск или USB флешку для хранения образа и загрузчика. Но есть еще один вариант — хранить ISO образ на жестком диске, и загружаться с него по мере надобности. Здесь не нужно столько дискового пространства как при установке, и не нужен внешний носитель информации. В этой статье будет рассмотрена загрузка с ISO образа в Grub.
Что нам понадобится
В этой статье мы будем использовать загрузчик Grub, впрочем, он и так используется в большинстве дистрибутивов Linux. Также нам понадобится ISO образ, с которого будем загружаться и вы должны знать на каком разделе он размещён. Удобнее всего разместить его на загрузочном разделе. Чтобы узнать какой раздел диска у вас загрузочный выполните:
Загрузочный раздел будет помечен знаком * в колонке Загрузочный или Boot. Например, у меня /dev/sda2 или как пишется в Grub hd0,2 — загрузочный.
Разделы /dev/sda1 и /dev/sdb3 будут называться в Grub hd0,1 и hd1,3 соответственно. В синтаксисе Grub именование дисков начинается с нуля, а именование разделов с единицы.
Загрузка с ISO образа в Grub
Сначала откройте файл /etc/default/grub и закомментируйте там эту строку если она там есть:
Перед строчкой должна стоять решетка. Сохраните изменения, а затем откройте файл /etc/grub.d/40_custom. Здесь мы добавим пункт для загрузки с образа, синтаксис выглядит следующим образом:
menuentry «Заголовок пункта» <
set isofile = «Адрес ISO файла»
loopback loop Раздел в форме записи Grub на котором расположен ISO $isofile
Параметры загрузки ядра
>
Перед тем, как переходить к настройке Grub надо выяснить ещё один момент. Как в оригинальном образе выполняется загрузка дистрибутива. Обычно в каждом загрузочном образе есть папка Grub в которой можно посмотреть файл grub.cfg или другой подобный, например loopback.cfg и узнать какими строками там загружается ядро:
Только перед путями к файлам надо добавить адрес (loop). Путь к образу надо указывать от начала того диска, на котором он расположен. Например, если диск расположен в корне загрузочного раздела, который монтируется в /boot, то и путь будет /файл.iso, а не /boot/файл.iso. Теперь можно переходить к примеру, запись для загрузки Puppy Linux будет выглядеть вот так:
menuentry «Puppy 20.04 Live» <
set isofile=»/puppylinux.iso»
loopback loop (hd0,2)$isofile
linux (loop)/vmlinuz pfix=fsck pmedia=cd findiso=»/puppylinux.iso»
initrd (loop)/initrd.gz
>
Каждый дистрибутив индивидуален и надо с каждым разбираться отдельно. Если вы хотите запускать Gparted:
menuentry «GParted Live amd64» <
set isofile=»/gparted-live-0.18.0-2-amd64.iso»
loopback loop (hd0,2)$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 Live» <
set isofile=»/Fedora.iso»
loopback loop (hd0,2)$isofile
loopback loop $isofile
linux (loop)/isolinux/vmlinuz0 root=live:CDLABEL=Fedora-Live 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=»/dban.iso»
loopback loop (hd0,1)$isofile
linux (loop)/dban.bzi nuke=»dwipe» silent
>
Есть еще много вещей, которые можно сделать с помощью загрузки ISO образа в Grub, неважно хотите ли вы очень быструю Live систему или иметь возможность уничтожить все кончиком пальца.
Загрузка windows с iso образа в Grub
Если вам нужна загрузка Windows с ISO образа Grub, то это делается тоже не очень сложно, но немного по другому. Сначала нужно скачать syslinux и извлечь оттуда memdisk в папку /boot/. Это должна быть папка, куда установлены файлы Grub. Дальше добавьте в конфигурационный файл 40-grub.conf такие строки:
menuentry «Boot Windows» <
search -f «—set-root /Windows.iso»
insmod memdisk
linux16 /boot/memdisk iso
initrd16 /Windows.iso
>
Образ Windows должен лежать в корне одного из разделов и называться Windows.iso, дальше команда search автоматически найдет этот раздел и установит его в качестве корня. Потом останется только загрузка windows с iso образа grub.
Завершение настройки Grub
Мы все подготовили, теперь остается обновить конфигурацию загрузчика Grub, чтобы новые пункты добавились в /boot/grub/grub.cfg и появились в меню загрузки. Для Ubuntu команда будет выглядеть вот так:
В других дистрибутивах может понадобится команда:
sudo grub-mkconfig -o /boot/grub/grub.cfg
Затем можно перезагрузиться и посмотреть что получилось:
Если что-то пошло не так, вы можете нажать клавишу E и редактировать этот пункт меню чтобы попытаться исправить проблему прямо в загрузчике.
Выводы
Теперь вы знаете как выполняется загрузка iso образа grub, здесь нет ничего сложного, но зато это очень полезная возможность получить несколько систем на своем компьютере, затратив при этом минимум памяти и времени на их установки. Если у вас остались вопросы, спрашивайте в комментариях!
Источник