Я создал «ручной» мультисистемный usb-ключ, кратко установив grub (как efi, так и legacy), затем скопировав на него три сильно настроенных iso (Ubuntu 16.04 и 18.04, последний в двух «вариантах») и наконец, изменив grub.cfg, чтобы пользователь мог выбирать между системами и локалями пользовательского интерфейса.
Я хотел бы добавить постоянство хотя бы для одного из них (добавив «persistent» и «persistent-path = ...» в меню grub.cfg), но до сих пор было невозможно заставить его работать: каждый при загрузке я получаю что-то вроде «файл персистентности не найден», пока я пытаюсь поместить casper-rw как непосредственно в корень USB-ключа, так и в каталог.
Поэтому я хотел бы знать, можно ли и как добавить постоянство для загрузочного USB-ключа на основе ISO.
Спасибо,
Sil
[edit] Я забыл заявить, что не хочу использовать такие вещи, как unetbooting, multiboot, mkusb и т. Д., Так как они слишком много дерьма для ключ. Если невозможно сохранить настойчивость, как я описал выше, я предпочитаю вообще не настаивать.
(Модификация того, Как я загружаю файл ISO от своего диска с помощью grub2 на машинах UEFI?)
GParted
Создайте gpt таблицу разделов на карте с интерфейсом USB.
Создайте разделы как показано выше, выберите восстановленный после форматирования для раздела 2.
Создайте casper-rw файл:
sudo dd if=/dev/zero of=casper-rw bs=1M count=512
sudo mkfs.ext3 -L casper-rw -F casper-rw
(где count=512
размер персистентности в мегабайтах, с макс. из 4 ГБ).
Раздел персистентности
Создайте исключительно папка имени для каждой ОС, (который требует персистентности), на разделе USB-PRST.
Добавьте casper-rw файл, (и дополнительный домашний-rw файл), к каждой папке персистентности. Домашний-rw файл может быть сделан путем переименования casper-rw файла. Домашний-rw файл похож на отдельный домашний раздел на Полной установке, он может быть снова использован после обновлений версии.
Раздел данных
Создайте папку для файлов ISO на разделе ДАННЫХ USB NTFS.
Добавьте некоторый ISO к isos папке.
Раздел начальной загрузки
Откройте последний файл ISO и скопируйте начальную загрузку и папки EFI к РАЗДЕЛУ НАЧАЛЬНОЙ ЗАГРУЗКИ USB.
Личинка установки
sudo монтируют/dev/sdx3/mnt
установка личинки sudo - каталог начальной загрузки/dev/sdx =/mnt/boot
Отредактируйте grub.cfg к loopmount файлы ISO. Включайте: persistent persistent-path=/<persistent-folder-name>/
если Вы хотите несколько персистентность.
if loadfont /boot/grub/font.pf2 ; then
set gfxmode=auto
insmod efi_gop
insmod efi_uga
insmod gfxterm
terminal_output gfxterm
fi
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
set timeout=5
menuentry "ubuntu-19.10-desktop-amd64.iso" {
set root=(hd0,1)
set isofile="/isos/ubuntu-19.10-desktop-amd64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile persistent persistent-path=/persist-1/ splash --
initrd (loop)/casper/initrd
}
menuentry "lubuntu-16.04.3-desktop-amd64.iso" {
set root=(hd0,1)
set isofile="/isos/lubuntu-16.04.3-desktop-amd64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile persistent persistent-path=/persist-2/ splash --
initrd (loop)/casper/initrd.lz
}
Пример Grub.cfg
sudo разделенный-ls/dev/sdx
sudo lsblk-f/dev/sdx
Если вышеупомянутое используется в качестве карты с интерфейсом USB, оно может использоваться для начальной загрузки, ISO сохранил в Windows только компьютер. Личинка не требуется на внутреннем диске.