How can I create a multi-boot USB with persistence?
This is what I would like to have on it...
-
Windows installation media and OS.
-
Xubuntu 18.04 LTS and Xubuntu 20.04 LTS...one persistent, and the other not...sometimes. And other times both persistent.
-
Unlimited storage.
Yes I did see this question. It started off promising, but it went nowhere, unfortunately.
EDIT: by "unlimited" I mean as much as the capacity of the USB would allow.
Ventoy
Ventoy will accomplish all three easily:
-
Ventoy will boot the Windows installer ISO. If you want to actually run Windows from USB, Rufus has an option to install Windows to Go. it takes hours and hours to install.
-
Ventoy will boot an ISO either Live or Persistent modes. It will boot multiple ISO's.
-
Ventoy will make persistence files greater than 4GB and having exFAT file system has "unlimited storage". Information on the persistence plugin is on this page: https://www.ventoy.net/en/plugin_persistence.html
If you want help with persistence me know.
Multiboot USB - Windows to Go + Ubuntu Full install + ISO's
Creating a USB drive that will run Windows to Go, Ubuntu Full install and boot Linux and Windows ISO's is a little more complicated than installing Ventoy.
I will outline the process that worked for me:
- Use Rufus to install Windows to Go. This is a very slow process and may take overnight.
- Use a Ubuntu Live pendrive to install Ubuntu alongside Windows on the USB, in the same BIOS/UEFI mode as Windows.
-
Drop the Linux ISO's of interest into a folder on a ext4 or NTFS partition. (ISO's on a NTFS partition may have trouble shutting down). Windows ISO must go on a XFAT or NTFS partition.
-
Edit /boot/grub/grub.cfg adding menuentries for the ISO files.
menuentry "ubuntu-20.04.1-desktop-amd64.iso" {
rmmod tpm
set isofile="/ubuntu-20.04.1/ubuntu-20.04.1-desktop-amd64.iso"
loopback loop (hd0,1)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject quiet splash maybe-ubiquity persistent persistent-path=/ubuntu-20.04.1/ fsck.mode=skip toram --
initrd (loop)/casper/initrd
}
For booting Windows ISO on MSDOS partition table:
menuentry 'Windows Recovery Environment (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-592C85254E2CD0B7' {
insmod part_msdos
insmod ntfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 592C85254E2CD0B7
else
search --no-floppy --fs-uuid --set=root 592C85254E2CD0B7
fi
parttool ${root} hidden-
drivemap -s (hd0) ${root}
chainloader +1
ntldr /bootmgr
}
For booting Windows ISO on GPT partition table substitute:
insmod part_gpt
insmod ntfs
set root='hd0,gpt1'
- Add persistence folders and files for the ISO's if required.
Reference:
How to Create a Full Install of Ubuntu 20.04 to USB Device Step by Step
BIOS/UEFI Template Image for Booting ISO Files
Installing Windows 10 without USB with ubuntu 18.04: this is not a bootable disk error