Как сделать мультизагрузочную флешку с несколькими ос linux
Тут описана процедура создания флешки для загрузки множества iso-образов на компьютерах с BIOS. На компьютерах с UEFI она не работает. Для компов с UEFI я делал Универсальную загрузочную флешку для BIOS/UEFI.
Хорошо иметь под рукой флешку, с которой можно загрузиться для восстановления или установки системы. Также хорошо бы чтобы на ней помещались несколько разных образов ISO, доступных из меню. Создать такую флешку можно с помощью специализированных программных средств как под Linux ( Multisystem) так и под Windows (XBOOT), и даже мультиплатформенных (Yumi). Но можно пойти true linux way™ и использовать GRUB.
Сначала нужно создать на флешке раздел и сделать его загрузочным. Запускаем fdisk и натравливаем его на нашу флешку. Нижеприведенные команды делаем с правами root. Список дисков смотрим командой:
Запускаем fdisk (указав свою флешку):
Если на диске есть разделы, то ликвидируем их. Для этого жмем d
После удаления разделов жмем n и создаем новый.
В процессе создания указваем что раздел p (primary).
После создания жмем a, чтобы сделать раздел активным.
Затем жмем t, чтобы задать тип раздела и вводим тип c (FAT32).
Жмем w и записываем изменения на флешку.
Теперь надо отформатировать созданный раздел в FAT32:
Дальше ставим GRUB2 на флешку.
Создаем точку монтирования и монтируем флешку (не забываем sdx менять на актуальные буквы, соотвествующие флешке):
Устанавливаем GRUB (выполняем с правами root):
Старые версии GRUB вместо –boot-directory используют -root-directory. Если что-то не так, то установщик GRUB скажет что “Installation is impossible. Aborting”.
Создаем на флешку файлик grub.cfg
И заполняем его примерно так:
Этот содержит конфигурацию для загрузки с флешки KNOPPIX 7.2, SystemRescueCd 4.6.1, различных вариантов Ubuntu и CentOS 7. А дальше осталось просто положить указанные в grub.cfg образы ISO в корневую директорию флешки и переименовать их как указано в файле.
Для добавления других образов ISO нужно в файлик /boot/grub/grub.cfg прописывать параметры, которые обычно можно найти в файлах grub.cfg, syslinux.cfg и других, входящих в состав образа ISO.
То есть создаем новый раздел меню в /boot/grub/grub.cfg (копируя уже существующий), затем указываем файл ISO в строке loopback, а в строку linux указываем путь к ядру (то что append из syslinux.cfg). В строке initrd указываем путь к файлу initrd.
Скорее всего, в строке linux после пути к файлу ядра придется указать параметры загрузки ядра, которые позволят ядру работать с loop-устройством, на которое монтируется файл ISO. Для систем со схожим ядром, параметры, как правило, одинаковые. Например, для загрузки Fedora подойдут параметры от CentOS.
Монтируем iso-образ Windows 7 или Windows 10, копируем с него все файлы на флешку с помощью cp или rsync и дописываем в grub.cfg такое:
Тут grub будет загружать модули с помощью insmod, потом search - искать раздел с меткой MULTIBOOT и когда найдет - с помощью –set укажет, что root находится на этом разделе, а затем передаст управление /bootmgr
В принципе, для красоты и удобства, было бы неплохо создать отдельный раздел на флешке (так я поступил при создании нового варианта флешки - Универсальная загрузочная флешка для BIOS/UEFI), отформатировать его с меткой Win7, распаковать файлы из iso-образа туда и указывать –label Win7. Просто в дистрибутиве windows также есть директоррия boot и если понадобится очистить флешку от инсталлятора windows, не затрагивая остальные ОС, то из этой директории файлы придется удалять вручную.
Discussion
Здравствуйте, не подскажите, как узнать необходимые параметры ядра, для grub.cfg, чтобы запустить ливобраз с usb накопителя? Что я только не пробовал, никак не выходит. Перекопал кучу сайтов и везде однотипно и не работает. Только благодаря вашему блогу удалось с минимальными корректироваками запустить минт. Такой настройки ни у кого не было: file=/preseed/linuxmint.seed boot=casper initrd=/casper/initrd.lz кстати z в расширении вы недопечатали и /cdrom/preseed в последней сборке просто /preseed. В общем у меня работает так: linux (loop)/live/vmlinuz boot=live initrd=/live/initrd.lz iso-scan/filename=/iso/lmde-4-cinnamon-64bit.iso noeject noprompt splash –
А вот LMDE и дебиан никак не сдаются. Хоть и использую их грубы. Не хочу импользовать программы так как они стирают все разделы на диске, а мне они нужны. Поэтому хочу ручками.
День добрый, Александр! Ну я же написал, что
Универсальных рецептов тут нет, поскольку разные дистры собираются разными людьми/программами. Даже в пределах одного семества (например - Ubuntu) от версии к версии и от варианта к варианту (Gnome, KDE) - параметры запуска в grub могут быть разными, как и структура файлов в ISO.
В этой статье приведена инструкция по созданию мультизагрузочной флешки с помощью программы MultiBoot USB. Программа работает с NTFS и FAT32, так что можно использовать не только флешку, но и внешний жесткий диск.
Подготовка к установке
1. Для начала возьмем флешку такого размера, чтоб на нее поместились все запланированные образы.
2. Скачиваем программу MultiBoot USB и устанавливаем.С программой в комплекте идет наглядная инструкция на русском языке: Readme.pdf.
В образе, создаваемом данной программой, предустановлены следующие программы:
- FreeDOS — Загрузка в режиме командной строки, включает DOS-Navigator и VC
- Универсальный загрузочный диск v3.7 — Работа с разделами NTFS в MS-DOS
- NT Password & Registry Editor — Смена пароля и редактирование реестра Windows XP
- Active@ Boot Disk Professional v2.1 — Восстановление удалённых файлов
- QuickTech Pro v5.8 — Тестирование и диагностика железа и его компонентов
- MemTest86 v4.20 — Тестирование и диагностика оперативной памяти
- MHDD v4.6 — Тестирование и диагностика жёстких дисков
- Victoria v3.52 — Тестирование и сервисное обслуживание IDE и Serial ATA HDD
- HDD Regenerator v2011 — Устранение физических повреждений на HDD
- Symantec Ghost v11.0 — Работа с разделами жёстких дисков.
Кроме перечисленных выше утилит, в состав пакета можно добавить ISO-образы (для них уже созданы необходимые пункты меню, и файлы-пустышки, которые нужно заменить на настоящие образы):
- Windows XPE — Мини версия
- Windows 7PE — Мини версия
- Acronis Disk Director & True Image — Работа с разделами жёстких дисков.
Процесс установки и создания мультизагрузочной флешки
1. Для начала запускаем утилиту HP USB Disk Storage Format Tool, выбираем устройство, ставим галочку "QuickFormat" и форматируем (желательно под NTFS, чтобы в случае чего не возникло проблем с большими файлами образов).
2. Далее устанавливаем grub4dos. Запускаем Grub4Dos Installer, в поле "DeviceName" выбираем Disk, и своё устройство (название устройства не отображается, только размер в мегабайтах). Жмем "Install".
3. Далее следует распаковать на флешку набор файлов и утилит. Через кнопку "Обзор…" указываем путь к флешке и нажимаем "Извлечь". На вопрос: "Вы хотите заменить существующий файл?" отвечаем "Да".
Технически флешка уже стала мультизагрузочной, но кроме утилит, которые мы распаковали, на ней ничего нет.
Дополним комплект образами операционных систем. Для удобства можно создать в корне папку "iso", где будут расположены все образы дисков.
Для систем семейства Windows
Для установки Windows 7, Windows 8, Windows 8.1, следуем пункту 4.1 инструкции, выбирая соответствующий (2й) чекбокс:
Для Linux-based образов
Открываем на флешке файл menu.lst (в корне) блокнотом и заменяем пункты по умолчанию на желаемые, например:
title Загрузка Ubuntu 11.10 — i386 // название пункта меню
map /iso/ubuntu1110i386.iso (0xff) || map --mem /iso/ubuntu1110i386.iso (0xff)
Проверка работоспособности флешки
Для проверки работы запускаем WinSetupFromUSB, в поле с устройством выбираем созданную флешку, и ставим галочку "TestinQEMU". По нажатию на "GO" будет произведен запуск загрузки с флешки в вииртуальной среде без перезагрузки системы.
Как сменить фоновую картинку под меню загрузки
1. Вам понадобится макет фоновой картинки в PSD и архив для перепаковки скинов. Отредактируйте PSD файл и сохраните в BMP (возможно придется пересохранить сторонней программой).
2. Готовый файл копируем в папку "Files" из архива "SkinsRepack", и запускаем файл "Упаковать.cmd". Получаем файл Skins без расширения. Этот файл копируем на флешку, и в файлах menu.lst и /boot/menu_u.lst во второй строчке указываем путь к скину:
Проверить как выглядит ваш новый скин также можно в эмуляторе.
После всех действий на флешке будут две папки и четыре файла, впрочем их можно пометить как скрытые, что никак не отразится на работе устройства.
Проверка в эмуляторе не даёт 100% гарантии того, что конкретный образ заработает в реальных условиях. Проверки на виртуальных машинах VirtualBox или VMWare также не всегда могут сработать корректно, так что лучше всего проверять на реальном железе.
Ventoy – бесплатная программа с открытым исходным кодом, которая позволяет создавать мультизагрузочные USB-носители без необходимости форматирования носителя для записи очередного образа. Так же программа поддерживает образы и файлы следующих типов ISO, WIM, IMG, VHD(x), EFI.
Как пользоваться бесплатной программой Ventoy
Принцип работы программы Ventoy достаточно простой – создание загрузочного меню на съемном носителе, в который, в дальнейшем мы копируем нужные нам образы.
Благодаря утилите Ventoy вам не нужно форматировать диск снова и снова, вам всего лишь нужно воспользоваться утилитой, скопировать файлы ISO образов на USB-накопитель и затем загрузиться с носителя. Вы можете копировать несколько файлов образов за раз, а Ventoy предоставит вам загрузочное меню с выбором образов для последующей загрузки.
Как создать загрузочной USB-носитель в Windows с помощью Ventoy
Скачиваем Ventoy, разархивируем архив и запускаем файл Ventoy2Disk.exe.
Соглашаемся на форматирование накопителя.
Об окончании форматирования нас уведомит соответствующее окошко.
Программа Ventoy создала два раздела, один с файловой системой ExFAT, а другой с файловой системой FAT. В Проводнике будет отображаться первый раздел ExFAT и он будет большего размера. Именно в данный раздел нужно перемещать образы.
Теперь при загрузки с данной мультизагрузочной флешки будет отображаться меню GRUB 2 с выбором загрузки перемещенных образов.
Важно. Стоит отметить, что названия образов не должны содержать пробелов и кириллицы.
Как создать загрузочной USB-носитель в GNU/Linux с помощью Ventoy
Начиная с версии Ventoy 1.0.36 для Linux в программе появился графический веб-интерфейс. Рассмотрим работу Ventoy с запуском графического веб-интерфейса.
С версии Ventoy 1.0.37 для дистрибутива Deepin появился свой скрип с графическим интерфейсом. Для запуска Ventoy в Deepin воспользуйтесь следующей командой: sudo sh VentoyWebDeepin.sh
Скачиваем Ventoy для Linux, разархивируем архив и переходим в папку ventoy. В папке нас интересует файл VentoyWeb.sh, его мы запустим. Открываем терминал в папке с программой и вводим команду запуска:
В адресной строке браузера открываем ссылку локального веб-сервера Ventoy:
Как видно на скриншоте отображается привычный интерфейс, подобный интерфейсу в Windows.
Дальнейшие действия аналогичны инструкции версии Ventoy для Windows.
По окончании установки образы можно переместить в раздел Ventoy съемного носителя.
Для закрытия Ventoy в Linux нужно закрыть вкладку браузера с ссылкой Ventoy, а затем в терминале воспользоваться комбинацией клавиш CTRL+C для завершения процесса Ventoy.
А вы какими программами пользуетесь для создания мультизагрузочных носителей?
Создать загрузочную USB флешку с любым дистрибутивом Linux (ну или Windows) сейчас не проблема ни в линуксах, ни в виндах. В мире Linux стандарт для этой операции — Unetbootin (или cfdisk/mkfs/dd для искушённых польователей). В Windows главенствует Rufus. Но ни одна эта программа не умеет создавать мультизагрузочную флешку (т.е. флешку, с которой можно загрузить/установить сразу несколько ОС) так, чтобы добавлять/удалять образа операционок можно было простым копированием/удалением файлов .iso. Удобно да? Сейчас мы научимся это делать в одну команду в Linux или в пару кликов курсором по кнопкам в Windows с помощью open-source приложения Ventoy.
Достоинства Ventoy
Уникальными особенностями Ventoy являются:
- Установка на флешку всего в одну команду;
- Возможность загружать неограниченное количество образов операционных систем;
- Добавление/удаление образов ОС простым копированием/удалением файлов ISO без переформатирования USB диска;
- Поддержка UEFI, Secure Boot и работы на GPT разделе;
- Занимаемое место служебным разделом на носителе информации — всего 32 Мб;
- На разделе с ISO файлами можно хранить любую другую информацию, мешать работе Ventoy она не будет;
- Файлы ISO образов можно раскидать по каталогам, и в интерфейсе Ventoy они так же будут разгрупированы по разделам;
- На разделе для данных Ventoy использует файловую систему exFAT, а это означает отсутствие ограничений на максимальный размер файла и остальные плюшки данной фс;
- Умеет загружать c USB Flash накопителя практически все операционные системы: список;
- Для Windows есть GUI, который осилит даже самый зелёный чайник.
Как работает Ventoy?
Просто и логично, как и все удачные решения. В первый раз пользователь устанавливает Ventoy на USB Flash накопитель, в процессе чего на нём создаются 2 раздела: 1 скрытый (в Windows) раздел в фс FAT16 со служебными файлами Ventoy и загрузчика, и 2 с файловой системой exFAT, куда нужно кидать ISO файлы с образами ОС или любые другие данные. Во время загрузки с USB Flash запускается загрузчик Grub, меню которого состоит из списка всех найденных на накопителе ISO образов. Пользователь стрелками выбирает нужный, жмёт ENTER — загрузка образа началась.
Установка в Linux
Arch Linux/Manjaro
В Arch установить Ventoy можно с помощью AUR:
Другие дистрибутивы
Установка в Windows
- Идём на страницу Github с релизами Ventoy;
- Выбираем крайний релиз (самый верхний), качаем архив ventoy-***-windows.zip;
- Распаковываем.
Создание загрузочного USB Flash накопителя
Внимание! На этом этапе все данные с USB накопителя будут безвозвратно удалены!
Сохраняйте нужные данные с флешки на любой другой носитель.
Данная операция проводится только один раз.
Повторить её нужно будет только если отформатируете флешку в каком-либо другом приложении.
Linux
Вставляем флешку, на которую собрались ставить Ventoy в ПК/ноут. Внимательно смотрим какой буквой /dev/sdX в системе называется наш носитель:
Например, в моём случае это /dev/sdg. Ставим на него Ventoy. В Arch Linux/Manjaro:
Замените X на букву носителя в вашем случае. Дважды подтверждаем выполнение операции. Готово!
Windows
- Запускаем Ventoy2Disk.exe от имени администратора;
- В списке Device выбираем свою флешку;
- Жмём кнопку Install;
- Дважды подтверждаем свои намерения.
Добавление/удаление ISO образов
Вставляем флешку, копируем на раздел файлы .iso либо удаляем их оттуда. Само собой, делать это можно из любой операционной системы. Можно раскидать образа по каталогам, тогда и в интерфейсе Ventoy они будут рассортированы по соответствующим разделам.
Созданный Ventoy раздел без ограничений можно использовать для хранения любых других файлов.
Использование
Загружаемся как с любого другого загрузочного USB Flash накопителя. В меню выбираем нужный образ, жмём ENTER. Бутимся.
Читайте также: