question -- how to boot from USB with multiple ISOs?

Hi all, Right now, I'm carrying around 2 USB sticks, - one 32GB -- it boots Linux and contains about 10 bootable ISOs. - one 8GB -- to 'dd' the real ISO that I want to boot. It's 2-step process, and it's ok. But, I would like to reduce it to 1-step. How can I boot those multiple ISOs directly from one USB stick? Eg. if you want to boot Fedora/Ubuntu/Clonezilla, what do you do? I guess you can carry around 3x8GB USB sticks, http://www.canadacomputers.com/product_info.php?cPath=11_180_632&item_id=073667 but 1x32GB USB stick, http://www.canadacomputers.com/product_info.php?cPath=11_180_181&item_id=058767 is better, I think. -- William

On Sat, Sep 26, 2015 at 10:53:43AM -0400, William Park wrote:
Hi all,
Right now, I'm carrying around 2 USB sticks, - one 32GB -- it boots Linux and contains about 10 bootable ISOs. - one 8GB -- to 'dd' the real ISO that I want to boot.
It's 2-step process, and it's ok. But, I would like to reduce it to 1-step.
How can I boot those multiple ISOs directly from one USB stick?
Eg. if you want to boot Fedora/Ubuntu/Clonezilla, what do you do? I guess you can carry around 3x8GB USB sticks, http://www.canadacomputers.com/product_info.php?cPath=11_180_632&item_id=073667 but 1x32GB USB stick, http://www.canadacomputers.com/product_info.php?cPath=11_180_181&item_id=058767 is better, I think.
As a generic option, the answer is that you can't do it. There are things like unetbootin which knows various installers and ISO images and knows what changes to make to the boot procedure for each one to fake it and let it work. But it is not generic. And the dd of one ISO also only works in the case that it is actually and image capable of working from USB instead of a CD/DVD, which is certainly true for many these days but is also not generic. Something like this would be a generic solition: http://isostick.com/ It actually DOES emulate a USB DVD drive with the iso image. -- Len Sorensen

| From: Lennart Sorensen <lsorense@csclub.uwaterloo.ca> | On Sat, Sep 26, 2015 at 10:53:43AM -0400, William Park wrote: | > How can I boot those multiple ISOs directly from one USB stick? | As a generic option, the answer is that you can't do it. If you assume UEFI, can the problem be solved generically? (I've not found UEFI firmware to be consistent about how one selects what to boot. See, for example, message 2 in <https://forums.lenovo.com/t5/ThinkServer-Towers/help-with-TS140-bios-and-uefi/m-p/2176751>.) | There are things like unetbootin which knows various installers and ISO | images and knows what changes to make to the boot procedure for each | one to fake it and let it work. But it is not generic. I've too often had troubles with booting from USB sticks that have been prepared by these tools. I've only partially understood those problems (I've filed a few bug reports). | And the dd of one ISO also only works in the case that it is actually | and image capable of working from USB instead of a CD/DVD, which is | certainly true for many these days but is also not generic. I have found that creating bootable USB sticks from dd-ing .iso files to work very well for those distros that intend it. This mechanism doesn't allow you to store other goodies on the stick. I would like to have a convenient place to store my customization data: some packages I always install, some updates to avoid repeated fetching from the internet, some public keys, etc. Only the unetbootin-like processes seem to support this.

On Tue, Sep 29, 2015 at 09:42:47AM -0400, D. Hugh Redelmeier wrote:
If you assume UEFI, can the problem be solved generically?
Given many things won't boot on UEFI, I would say it certainly can't. The big problem is that the thing you are booting probably expects to see an optical drive and you aren't providing it with one (except in the case of isostick it seems).
(I've not found UEFI firmware to be consistent about how one selects what to boot. See, for example, message 2 in <https://forums.lenovo.com/t5/ThinkServer-Towers/help-with-TS140-bios-and-uefi/m-p/2176751>.)
I have encountered rather odd UEFI designs that did not boot stuff that should have worked. -- Len Sorensen

I'm replying via Yahoo web, so sorry about formatting... text option is nowhere to be found. A solution that almost worked is "memdisk" from Syslinux. Essentially, you configure the usual "syslinux.cfg", but your kernel is "memdisk" and your initrd is the ISO image you want. I say "almost worked", because - it boots the ISO you want -- you see dots filling up the screen - ISO boots -- you see its boot splash - then, it complains that it can't find the live filesystem that it just loaded. All other solutions I tried or read about, extracts ISO and puts the content into partition. That's not what I want. Also, you forget which partition is what OS, and end up putting new release ISO into wrong partition.I want to keep the downloaded ISO as is. Old ISO designed for pure CD/DVD will not boot off USB, because it doesn't have harddisk emulation layer. You can tell by 'fdisk -l'. If it shows partition, then it has harddisk emulation. You can turn those old ISO into bootable ISO using 'isohybrid', but this modifies the ISO file. Nowdays, all Linux/Windows ISO can boot off USB. You can even install Windows onto USB stick and boot off it, but few things doesn't work, like "Windows Update". :-) Still looking... Heck, time I spent on this, it would be cheaper to just buy a pack of USB sticks. -- William On Tuesday, September 29, 2015 9:42 AM, D. Hugh Redelmeier <hugh@mimosa.com> wrote: | And the dd of one ISO also only works in the case that it is actually | and image capable of working from USB instead of a CD/DVD, which is | certainly true for many these days but is also not generic. I have found that creating bootable USB sticks from dd-ing .iso files to work very well for those distros that intend it. This mechanism doesn't allow you to store other goodies on the stick. I would like to have a convenient place to store my customization data: some packages I always install, some updates to avoid repeated fetching from the internet, some public keys, etc. Only the unetbootin-like processes seem to support this.

Here is another take on the problem. I use Grub for DOS (grub4dos). The Grub version is the legacy version 1 not the current version 2. There are many caveats which I list below and hope I don't forget any. Some are due to my lack of knowledge meaning I simply have not gotten around to researching the area more deeply. This is probably a very old approach (i.e. from the Windows XP days). In spite of the limitations, I really like this approach. I have about four or five bootable USB sticks in my collection. It has saved me innumerable times when I could not boot a system, both Linux and Windows 7. It is extremely flexible in that you can simply go into the menu.lst file on the stick with a text editor, edit it quickly, and boot your system. You can create a useful rescue tool from which you can boot things like (1) Kaspersky rescue disk, (2) Truecrypt rescue ISO, (3) Windows 7 install ISO, (4) various Linux liveDVDs, etc. In the latter case I have used PCLinuxOS and KUbuntu 12.04 successfully. Limitation / Caveat (1) - This solution is (maybe) limited to 8 GB first partitions / USB sticks. To date I have never been successful in getting it to boot from either a first partition or, in the case of a one partition only stick, an entire USB stick that is larger than 8 GB. I am sure there are many on this message board who know how to move past this perceived limitation but for my purposes, I was happy to live with it so I never investigated further. I have successfully used larger sticks that were set up with multiple partitions where the first partition is always 8 GB. Limitation / Caveat (2) - ISO files that you want to boot MUST be contiguous. This can be frustrating. The best approach is to make a base template with the base Grub for DOS files which are tiny, set up your stick using dd from an image or another stick, and then copy over your ISOs. You MUST do this to a freshly (re)formatted USB stick to ensure the ISO is written contiguously. Plan to leave say 20% free space. You cannot simply erase an ISO you no longer want and copy over a new one, you have to start from scratch by reformatting the USB stick. Flash drives are different animals than magnetic storage media (traditional hard drives). Limitation / Caveat (3) - I made my first original and now template USB using a tool in a Windows XP Pro virtual machine. You only need to do this once since once you have the MBR (master boot record) of the USB stick set up, you can easily clone it using dd. I am happy to provide the image file to anyone who wants it so you can avoid going the through the hoops I did to create your template stick. Limitation / Caveat (4) - In terms of BIOS, I stopped at Windows 7 meaning I do not nor have I ever experimented with UEFI. In other words, I have no idea if you can use this Grub for DOS solution on a system with UEFI. Caveat (5) Drive assignment - I believe this is more a concern when dealing with Windows than Linux since Linux provides much more control. The first drive (i.e. sda) is often assigned to the USB stick and the second (i.e. sdb) is assigned to the first hard drive in the system on which you are booting. This can and should be reversed using some mapping commands in the boot code in the menu.lst file. If you don't do this you can experience problems when trying to repair a Windows system since the Windows repair software doesn't check. The best example of how this can go wrong is, on more than one occasion, I wiped out the MBR on the USB Grub for DOS stick instead of on the SSD I was trying to repair. An example of the drive mapping code I refer to is as follows: title Windows 7 DVD ISO on this USB Stick find --set-root /Windows_7_64.iso map (hd0) (hd1) map (hd1) (hd0) map /Windows_7_64.iso (hd32) map --hook root (hd32) chainloader (hd32) There is probably a fair bit of dated information on the internet about this solution. I have not looked in quite a while though. Once again, I am happy to provide the image file for a Grub for DOS template to save people from trying to create it from scratch. If anyone is interested, let me know and I will post it on a public Dropbox link. On Tue, Sep 29, 2015 at 1:39 PM, William Park <opengeometry@yahoo.ca> wrote:
I'm replying via Yahoo web, so sorry about formatting... text option is nowhere to be found.
A solution that almost worked is "memdisk" from Syslinux. Essentially, you configure the usual "syslinux.cfg", but your kernel is "memdisk" and your initrd is the ISO image you want. I say "almost worked", because - it boots the ISO you want -- you see dots filling up the screen - ISO boots -- you see its boot splash - then, it complains that it can't find the live filesystem that it just loaded.
All other solutions I tried or read about, extracts ISO and puts the content into partition. That's not what I want. Also, you forget which partition is what OS, and end up putting new release ISO into wrong partition. I want to keep the downloaded ISO as is.
Old ISO designed for pure CD/DVD will not boot off USB, because it doesn't have harddisk emulation layer. You can tell by 'fdisk -l'. If it shows partition, then it has harddisk emulation. You can turn those old ISO into bootable ISO using 'isohybrid', but this modifies the ISO file.
Nowdays, all Linux/Windows ISO can boot off USB. You can even install Windows onto USB stick and boot off it, but few things doesn't work, like "Windows Update". :-)
Still looking... Heck, time I spent on this, it would be cheaper to just buy a pack of USB sticks. -- William
On Tuesday, September 29, 2015 9:42 AM, D. Hugh Redelmeier < hugh@mimosa.com> wrote:
| And the dd of one ISO also only works in the case that it is actually | and image capable of working from USB instead of a CD/DVD, which is | certainly true for many these days but is also not generic.
I have found that creating bootable USB sticks from dd-ing .iso files to work very well for those distros that intend it.
This mechanism doesn't allow you to store other goodies on the stick.
I would like to have a convenient place to store my customization data: some packages I always install, some updates to avoid repeated fetching from the internet, some public keys, etc. Only the unetbootin-like processes seem to support this.
--- Talk Mailing List talk@gtalug.org http://gtalug.org/mailman/listinfo/talk

I use Yumi myself, it works quite well and setup it quick (though you will need a Windows box to create the stick... http://www.pendrivelinux.com/yumi-multiboot-usb-creator/ Alan. *A*lan *H*eighway <http://heighway.ca> heighway.ca [image: Please consider the environment before printing] On Sat, Sep 26, 2015 at 10:53 AM, William Park <opengeometry@yahoo.ca> wrote:
Hi all,
Right now, I'm carrying around 2 USB sticks, - one 32GB -- it boots Linux and contains about 10 bootable ISOs. - one 8GB -- to 'dd' the real ISO that I want to boot.
It's 2-step process, and it's ok. But, I would like to reduce it to 1-step.
How can I boot those multiple ISOs directly from one USB stick?
Eg. if you want to boot Fedora/Ubuntu/Clonezilla, what do you do? I guess you can carry around 3x8GB USB sticks,
http://www.canadacomputers.com/product_info.php?cPath=11_180_632&item_id=073667 but 1x32GB USB stick,
http://www.canadacomputers.com/product_info.php?cPath=11_180_181&item_id=058767 is better, I think. -- William --- Talk Mailing List talk@gtalug.org http://gtalug.org/mailman/listinfo/talk

On Mon, Sep 28, 2015 at 02:24:44PM -0400, Alan Heighway wrote:
I use Yumi myself, it works quite well and setup it quick (though you will need a Windows box to create the stick...
Just like unetbootin, it is far from generic. It works for many things, but not everything. A pure software solution that is generic is not possible as far as I know. -- Len Sorensen

On 26 September 2015 at 10:53, William Park <opengeometry@yahoo.ca> wrote:
Hi all,
Right now, I'm carrying around 2 USB sticks, - one 32GB -- it boots Linux and contains about 10 bootable ISOs. - one 8GB -- to 'dd' the real ISO that I want to boot.
It's 2-step process, and it's ok. But, I would like to reduce it to 1-step.
How can I boot those multiple ISOs directly from one USB stick?
Eg. if you want to boot Fedora/Ubuntu/Clonezilla, what do you do? I guess you can carry around 3x8GB USB sticks,
http://www.canadacomputers.com/product_info.php?cPath=11_180_632&item_id=073667
but 1x32GB USB stick,
http://www.canadacomputers.com/product_info.php?cPath=11_180_181&item_id=058767
is better, I think.
It's an interesting idea, but I don't expect it's nearly possible. And not because it is forcibly infeasible... The various Linux distribution projects need to define "boot disks" to enable installing Their Thing. In practice, they often have multiple choices that they need to offer their users, hence you commonly have such options as... - Install [Flavor of] Linux - Run recovery disk to clean up [Flavor of] Linux - Perhaps an "advanced" console They therefore define some sort of dispatcher for their respective set of choices. It would certainly be *plausible* to have that dispatcher take on a larger set of options, hence to pick those actions for a larger set of flavours of Linux. However, that would require cooperation between groups that are accustomed to not needing to have tight interactions. (e.g. - gotta have Debian guys working with Fedora guys for a single 'logical disk' definition that would do all their respective things) Frankly, little USB sticks are sufficiently small and cheap that I'd be happy having a sheaf of them on a cord. Curiously, I have stopped doing this sort of thing lately; I find PXE booting easier to set up for the infrequent cases where I need to do so. When I built my last box <http://linuxfinances.info/info/steele.html> last year, I ran into problems trying to boot off a CD/DVD, and found PXE easy enough to configure that I'd be inclined to do that next time. That doesn't require having a USB stick at all! :-) -- When confronted by a difficult problem, solve it by reducing it to the question, "How would the Lone Ranger handle this?"

perhaps http://www.easy2boot.com/ ? I haven't tried this. regards, Daniel Villarreal http://www.youcanlinux.org/ On 09/26/15 10:53, William Park wrote:
Hi all,
Right now, I'm carrying around 2 USB sticks, - one 32GB -- it boots Linux and contains about 10 bootable ISOs. - one 8GB -- to 'dd' the real ISO that I want to boot.
It's 2-step process, and it's ok. But, I would like to reduce it to 1-step.
How can I boot those multiple ISOs directly from one USB stick? ...

From their page: "DriveDroid allows you to boot your PC from ISO/IMG files stored on your
What about Drive Droid? https://play.google.com/store/apps/details?id=com.softwarebakery.drivedroid&hl=en phone. This is ideal for trying Linux distributions or always having a rescue-system on the go... without the need to burn different CDs or USB pendrives." Put as many isos as you can on a 128Gb micro SD card, and you are good to go. Only one step. perhaps http://www.easy2boot.com/ ? I haven't tried this. regards, Daniel Villarreal http://www.youcanlinux.org/ On 09/26/15 10:53, William Park wrote:
Hi all,
Right now, I'm carrying around 2 USB sticks, - one 32GB -- it boots Linux and contains about 10 bootable ISOs. - one 8GB -- to 'dd' the real ISO that I want to boot.
It's 2-step process, and it's ok. But, I would like to reduce it to 1-step.
How can I boot those multiple ISOs directly from one USB stick?
... --- Talk Mailing List talk@gtalug.org http://gtalug.org/mailman/listinfo/talk
participants (8)
-
Alan Heighway
-
Christopher Browne
-
D. Hugh Redelmeier
-
Daniel Villarreal
-
Lennart Sorensen
-
Mauro Souza
-
Nigel Auger
-
William Park