Дабы сто раз не перезаписывать флешку для установки того или иного дистрибутива Linux, решено было сделать её мультизагрузочной.
Порядок действий таков: скачиваем нужные образы дистрибутивов, устанавливаем на флешку grub2, копируем образы на флешку.
Далее подробная инструкция.
Имеются образы.
CentOS-6.5-x86_64-minimal.iso
debian-7.4.0-amd64-netinst.iso
linuxmint-16-mate-dvd-64bit.iso
ubuntu-13.10-desktop-amd64.iso
Примечание:
/dev/sdb - имя устройства (флешки) в моём случае.
1. Форматируем флешку в FAT32:
$ sudo mkfs.vfat -n MULTIBOOT_FLASH /dev/sdb1
2. Монтируем:
$ sudo mount /dev/sdb1 /mnt
3. Устанавливаем grub:
$ sudo grub-install --no-floppy --root-directory=/mnt/ /dev/sdb
...
...
Installation finished. No error reported.
4. Создаём конфигурационный файл grub2:
$ sudo vim /mnt/boot/grub/grub.cfg
### CentOS-6.5-x86_64-minimal.iso
### debian-7.4.0-amd64-netinst.iso
### linuxmint-16-mate-dvd-64bit.iso
### ubuntu-13.10-desktop-amd64.iso
menuentry "CentOS-6.5-x86_64-minimal" {
loopback loop /boot/iso/CentOS-6.5-x86_64-minimal.iso
linux (loop)/isolinux/vmlinuz boot=casper iso-scan/filename=/boot/iso/CentOS-6.5-x86_64-minimal.iso noeject noprompt --
initrd (loop)/isolinux/initrd.img
}
menuentry "debian-7.4.0-amd64-netinst" {
loopback loop /boot/iso/debian-7.4.0-amd64-netinst.iso
linux (loop)/install.amd/vmlinuz boot=casper iso-scan/filename=/boot/iso/debian-7.4.0-amd64-netinst.iso noeject noprompt --
initrd (loop)/install.amd/initrd.gz
}
menuentry "linuxmint-16-mate-dvd-64bit" {
loopback loop /boot/iso/linuxmint-16-mate-dvd-64bit.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/boot/iso/linuxmint-16-mate-dvd-64bit.iso noeject noprompt --
initrd (loop)/casper/initrd.lz
}
menuentry "ubuntu-13.10-desktop-amd64" {
loopback loop /boot/iso/ubuntu-13.10-desktop-amd64.iso
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/boot/iso/ubuntu-13.10-desktop-amd64.iso noeject noprompt --
initrd (loop)/casper/initrd.lz
}
5. Копируем образы в /mnt/boot/iso:
$ sudo mkdir /mnt/boot/iso
$ cp ~/ISO/*.iso /mnt/boot/iso
6. Размонтируем:
$ sudo umount /mnt/
7. Перезагружаемся, проверяем
P.S. Если во время загрузки будет ошибка с secure boot, его надо отключить.
Пути к образам могут различаться и не работать. Для того, чтобы определить правильный путь, нужно погуглить или вручную посмотреть структуру образа, каким-нибудь архиватором.
Порядок действий таков: скачиваем нужные образы дистрибутивов, устанавливаем на флешку grub2, копируем образы на флешку.
Далее подробная инструкция.
Имеются образы.
CentOS-6.5-x86_64-minimal.iso
debian-7.4.0-amd64-netinst.iso
linuxmint-16-mate-dvd-64bit.iso
ubuntu-13.10-desktop-amd64.iso
Примечание:
/dev/sdb - имя устройства (флешки) в моём случае.
1. Форматируем флешку в FAT32:
$ sudo mkfs.vfat -n MULTIBOOT_FLASH /dev/sdb1
2. Монтируем:
$ sudo mount /dev/sdb1 /mnt
3. Устанавливаем grub:
$ sudo grub-install --no-floppy --root-directory=/mnt/ /dev/sdb
...
...
Installation finished. No error reported.
4. Создаём конфигурационный файл grub2:
$ sudo vim /mnt/boot/grub/grub.cfg
### CentOS-6.5-x86_64-minimal.iso
### debian-7.4.0-amd64-netinst.iso
### linuxmint-16-mate-dvd-64bit.iso
### ubuntu-13.10-desktop-amd64.iso
menuentry "CentOS-6.5-x86_64-minimal" {
loopback loop /boot/iso/CentOS-6.5-x86_64-minimal.iso
linux (loop)/isolinux/vmlinuz boot=casper iso-scan/filename=/boot/iso/CentOS-6.5-x86_64-minimal.iso noeject noprompt --
initrd (loop)/isolinux/initrd.img
}
menuentry "debian-7.4.0-amd64-netinst" {
loopback loop /boot/iso/debian-7.4.0-amd64-netinst.iso
linux (loop)/install.amd/vmlinuz boot=casper iso-scan/filename=/boot/iso/debian-7.4.0-amd64-netinst.iso noeject noprompt --
initrd (loop)/install.amd/initrd.gz
}
menuentry "linuxmint-16-mate-dvd-64bit" {
loopback loop /boot/iso/linuxmint-16-mate-dvd-64bit.iso
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/boot/iso/linuxmint-16-mate-dvd-64bit.iso noeject noprompt --
initrd (loop)/casper/initrd.lz
}
menuentry "ubuntu-13.10-desktop-amd64" {
loopback loop /boot/iso/ubuntu-13.10-desktop-amd64.iso
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=/boot/iso/ubuntu-13.10-desktop-amd64.iso noeject noprompt --
initrd (loop)/casper/initrd.lz
}
5. Копируем образы в /mnt/boot/iso:
$ sudo mkdir /mnt/boot/iso
$ cp ~/ISO/*.iso /mnt/boot/iso
6. Размонтируем:
$ sudo umount /mnt/
7. Перезагружаемся, проверяем
P.S. Если во время загрузки будет ошибка с secure boot, его надо отключить.
Пути к образам могут различаться и не работать. Для того, чтобы определить правильный путь, нужно погуглить или вручную посмотреть структуру образа, каким-нибудь архиватором.
Этот комментарий был удален автором.
ОтветитьУдалитьВсё понятно описано, только есть проблема:
ОтветитьУдалитьуже давно существуют дистрибутивы на DVD (более 4-х Гб), а значит FAT32 бесполезна.
У меня большая флэшка - 32GiB. Нужно залить MacOS например, и кучу дистров типа всё "включено" для начинающих пытливых умов. Может есть решение?
ОтветитьУдалитьТут я подсказать не смогу, с дистрибутивами отличными от Linux я не пользовался на таких флешках.
ОтветитьУдалитьдля пробы записал 2 дистрибутива:
ОтветитьУдалитьubuntu-gnome-15.10-desktop-amd64.iso
debian-live-8.2.0-amd64-gnome-desktop.iso
ubuntu загружается как положено live, все хорошо
а debian загружается не live, а установка в текстовом режиме
как поправить?
а так такой способ лучший, когда ручками мульти флеш делаешь, спасибо
Попробуйте распаковать iso и посмотреть, что там прописано в menu.lst и grub.cfg.
ОтветитьУдалитьAmet Umerov, открыл iso менеджером архивов, но файлы menu.lst и grub.cfg поиск не находит...
ОтветитьУдалитьmenuentry "debian-live-8.2.0-amd64-gnome-desktop" {
loopback loop /boot/iso/debian-live-8.2.0-amd64-gnome-desktop.iso
linux (loop)/install/vmlinuz boot=install iso-scan/filename=/boot/iso/debian-live-8.2.0-amd64-gnome-desktop.iso noeject noprompt --
initrd (loop)/install/initrd.gz
}
что здесь поправить?
А как сделать такую флешку с uefi загрузкой?
ОтветитьУдалитьСпасибо. Всё очень ясно описано. ... Не разделяю мнение комментатора о ненужности больших образов на флеш-карте. Искал вашу статью, потому что мне, как раз, нужно то, что ему, почему-то, ненужно ))...
ОтветитьУдалить