Table of Contents
Linux ISOs
Most linux ISO files will just work if you just copy them to an E2B 2nd level folder such as \_ISO\MAINMENU, \_ISO\AUTO or \_ISO\LINUX.
Note: linux .iso files can be renamed so that they will be listed in the menu as whatever you wish, e.g.
\_ISO\LINUX\ubuntu 16.04 (64-bit).iso64
will appear as ‘Ubuntu 16.04 (64-bit)‘ in the Linux menu and will only appear in the E2B menu if the system has a 64-bit CPU.
Tip: you can specify set EXTOFF=1 in the \_ISO\MyE2B.cfg file so that the .iso file extension is not listed in the menu.
or use .isodef or .isodefault to avoid the user prompt and 6-second delay. e.g.
\_ISO\LINUX\Mint 18 Cinnamon (32-bit).isodefault
Since Ventoy does not recognise non-standard file extensions, for use in agFM and Ventoy menus, you can use a prefix and suffix instead but keep the standard file extension, e.g.
a23_Ubuntu v22.0 x64_.isodef.iso (using a23_ will determine its alphanumerically sorted place in the menu, using _.isodef will cause E2B and agFM to immediately boot it using the default partnew method without prompting).
a23_Ubuntu v22.0 x64_.isodef_VTNORMAL.iso (same as above but will boot without showing a secondary boot menu in Ventoy 1.0.80+)
If you want to also add help text below the menu and/or change the menu entry text, use the TXT_MAKER.exe utility to make a .txt file.
E2B automatically makes a new Type 0 partition table entry on the E2B drive (partition #4) when you select an ISO file from the E2B menu. Most Linux LiveCD ISOs will automatically mount this Type 0 partition and so it will be able to access all the files inside the ISO during 2nd stage booting. In this way no special, version-specific, ‘cheat codes’ are required and the linux distribution does not need to be identified by E2B. 99% of Linux LiveCD ISOs just work!
Because we are booting directly from the original ISO, we will also see the same boot menu choices that you get when you boot from the original CD. With other utilities such as YUMI or XBOOT, you often do not get the same boot menu because they use their own boot menu. If you wish to remove the USB drive once the linux OS has booted, try a .isomem file extension which loads the whole ISO into memory first.
Always check the List of test ISOs for your particular Linux distribution, to see if any ‘special’ tweaks are needed.
Tip: If booting via ‘ISOBOOT’ or the persistence ext file name is specified in the kernel parameters, ensure there are no spaces in the filenames.
You can also check my blog for posts about E2B and Linux.
Installing linux from an ISO
The ‘cdrom’ is in Partition 4 on the USB drive when you boot a Linux ISO using the Easy2Boot/partnew method.
When you boot a linux install ISO which can install Linux onto another drive, you may find that it cannot find the ‘CD’ and ask you to install a CD driver.
In this case, select ‘cdrom‘ device from the menu and then change the device path from /dev/cdrom to /dev/sdX4 (where X is the USB drive – e.g. b or c or d or e).
Alternatively, you can convert the ISO file to a FAT32 .imgPTN file using MakePartImage. See here for more details.
Persistence
Some Linux ISO files can be run with persistence. In this case, each ISO will require a special .mnu file. Look in the \_ISO\docs\Sample mnu Files folder for a range of .mnu files.
Typically, you will need to create another file formatted as ext3 using RMPrepUSB (or \_ISO\docs\Make_Ext\Make_Ext.exe) which will be used for persistence.
Note: Spaces in persistence filename can cause problems if the persistence filename is specified as a kernel parameter, so always try using a filename without spaces first and then add spaces to the filename if successful.
Install multiple linux OS’s
Provided that a linux distro will install to a single ext2/3/4 partition, it is possible to have multiple, fully-installed, copies of many different linux OS’s on a single-partition E2B FAT32 or NTFS USB drive. Each OS is self-contained and fully installed just the same as if it was installed on an internal hard disk (i.e. not ‘LiveCD’+persistence, but a full linux OS install). For details on how to do this, see here and read this blog post.
Contiguous files
Before running E2B, use the \MAKE_THIS_DRIVE_CONTIGUOUS.cmd script (or Ctrl+F2 in RMPrepUSB) to make all files on the E2B USB drive contiguous.
In linux, you can use defragfs to make a FAT32 E2B drive contiguous or udefrag for NTFS drives (see \_ISO\docs\linux_utils folder). Please go here for instructions.
If the \_ISO\CONTIG.ISO file is present and if it is large enough and if the Linux ISO is not contiguous, then E2B will copy it to the CONTIG.ISO file first, to make it contiguous (CONTIG.ISO must already be contiguous).
If CONTIG.ISO is not large enough for your ISO (i.e. your ISO is larger than 500MB), simply delete CONTIG.ISO and copy any larger file to the E2B drive and rename it as \_ISO\CONTIG.ISO. Then make it contiguous using defragfs or udefrag.
ISOBOOT
If the ISO cannot be made contiguous, E2B will automatically attempt to use ISOBOOT.g4b. This is a grub4dos batch file which attempts to identify the ISO from it’s filename and then uses special ‘cheat codes’ to tell linux where to find the ISO file during 2nd stage booting. The method is similar to the methods used by many other multibooters such as YUMI, XBOOT, pendrivelinux, etc. As such, it may not work for all distributions and versions of linux.
ISOBOOT.g4b may need to be constantly updated whenever a new distro is arbitrarily changed by the developers!
Note: The linux filename should not contain any spaces for ISOBOOT to work. Use underscores or hyphens instead of spaces.
You can force E2B to only use ISOBOOT (instead of using the usual method of booting an ISO) by holding down the SHIFT key before pressing [Enter].
You can make your own version of ISOBOOT – see ISOBOOT page for more details.
UEFI
Not all Linux ISOs support UEFI and there may be both UEFI32 x86 and UEFI x64 ISOs available – the one chosen must match your BIOS firmware type (usually UEFI64).
UEFI booting can be done by first booting to agFM or Ventoy for Easy2Boot and then selecting the ISO file.
OR…
If your linux ISO supports UEFI booting, you can use MakePartImage to make a FAT32 partition image (.imgPTN) file. This will allow you to MBR or UEFI boot. Booting from a partition image (.imgPTN) file with persistence is not supported using .mnu files, however it is possible to modify some versions of Linux (e.g. Ubuntu) to support UEFI-booting with persistence.
agFM and Ventoy
agFM can use a variety of boot methods, the Easy2Boot/partnew method writes a new Partition 4 entry into the USB MBR which points to the ISO files start sector and is usually the most compatible (but the ISO file must be contiguous and the USB drive must not be write-protected). Other methods are also available which do not require a contiguous ISO file.
Ventoy uses it’s own special boot method (the file does not need to be contiguous and the drive can be write-protected).
Both support Legacy and UEFI booting (with persistence for many ISOs that support it).
E2B\agFM\Ventoy can also boot vdiskchain VDI\VHD files – see next section…
Boot from fully installed Linux VHD/VDI files
By using the Ventoy ‘vtoychain’ technology, you can add multiple full Linux OS VHD or VDI files to your E2B USB drive.
The file must include the special vtoyboot code and it must end in the file extension .vtoy.
2022-10 and later versions of E2B and agFM also support .vtoy files.
To create a VHD or VDI file, follow the instructions on the Ventoy website or my blog here for a Linux Mint VDI – also see my ‘Getting started with Ventoy’ eBook 😉