If you have a grub4dos multiboot USB drive, you may find that some linux ISO files require complex menu entries or simply do not support being booted as an ISO file (e.g. BackTrack).
However, if you download and add these 6 files to your grub4dos multiboot drive, you just need to add one menu entry to your menu.lst file and place all your linux ISO files under the \_ISO\Linux folder on your USB drive.
When the user selects the Auto Linux menu option in your menu, a grub4dos batch file will find all ISO files under the \_ISO\Linux folder (inc. subfolders), create a new menu file in memory and then load the new menu. An example of the dynamically generated menu is show below.
Once you have added the 6 files from this tutorial, all you need to do is copy all your linux ISO files to the \_ISO\Linux folder. The next time you run the Auto Linux ISO menu, it will magically appear in the new dynamic menu. If you later delete any ISO in the \_ISO\Linux folder (or below), the menu entry will no longer appear the next time you run it.
Linux ISO filenames can contain spaces and it supports long-filenames.
So it is very easy to add a new linux ISO file to your multiboot drive - just drop it into the \_ISO\Linux folder!
Even BackTrack 5 (BT5) will boot directly from an ISO file using this method!
1. Download the AutoLinux zip file and extract the contents (6 files) to your grub4dos multiboot drive. The contents of the zip file are:
2. Add one of the following two menu entries to your menu.lst file (one has comments and one does not, which one you use is up to you!):
# minimal menu (same as above but without the comment lines)
If your menu file is not called \menu.lst, then change the LBACKMENU line to specify the actual name and path of your calling menu.
3. As this method relies on a blank, unused 4th entry in the boot drive's partition table, you should add these lines to the top of your main menu.lst file to check that it is safe to use:
Most USB Flash drives do not have more than one or two partitions, however some HDDs may have multiple partitions, so it is wise to include these lines at the top of your menu if you use a boot device which has more than 2 partitions, just in case!
4. Now just copy any linux-based ISO file to the \_ISO\Linux folder. You can also create any number of subfolders under \_ISO\Linux and place ISO files in them too.
The menu entries created in the ram drive (rd) comprise of the following lines (different for each ISO file):
This uses the grub4dos partnew command to map the ISO file as a partition entry (it uses the fourth partition table entry which MUST be unused on your boot drive) - See Tutorial #93 for more details.
If you wish to change the appearance of the linux ISO menu, you can edit the \grub\LINUXUSER.MNU file. This is a normal grub4dos menu (configfile). It has UK keyboard settings as well as a background image. If you delete the LINUXUSER.MNU file then a basic menu will be created.
Although this technique will work for booting any (most) linux ISO files, very few non-linux OS's will work as they will not detect the 4th partition as a valid filesystem. Some DOS- or PE-based ISOs may work.
If you wish, you can change the search folder path by changing the last parameter when calling the autolinuxmenu.bat batch file. Alternatively, you can add another menu entry for say WinPE and change the search path to \_ISO\WinPE and place the WinPE ISO files under \_ISO\WinPE. You can even search the whole USB drive for all ISO files by using /grub/autolinuxmenu.bat .automenu /
If you have any questions, please contact me.
See here for a list of ISO files that have been tested.