0

I want to make a multiboot USB stick. I extracted XP.iso into a folder then added winvblock driver that lets ISO load into memory. Now I want to pack folder into iso but it's not that simple since it must be bootable. Is there such a tool that let me pack folder into iso?

EDIT: It's not a duplicate of above mentioned link. I asked to make a bootable iso from folder. In the link it mentions how to create iso image from a folder which is very easy. Anyway I found the answer here: https://www.g-loaded.eu/2007/04/25/how-to-create-a-windows-bootable-cd-with-mkisofs/

kenn
  • 5,162
  • But that describes nonbootable folder to image convertion, I tried that with no luck. – kenn Feb 26 '14 at 11:33
  • Can you explain what you are trying to do a little better? AFAIK you can't boot ISOs, you have to extract them (which is what LiveCD/USB creators do). – Seth Feb 26 '14 at 16:26
  • @Seth I want to make a multiboot USB drive that contains a bunch of Live ISOs including Windows XP installation ISO image. I know Multisystem lets user prepare what I want except Windows XP. I followed this guide http://cytaty.blogspot.com.tr/2011/02/how-to-boot-windowsxp-installation.html but it reguires Windows OS to pack folder into iso. I needed to apply that process in my current OS Ubuntu. Anyway I found answer here https://www.g-loaded.eu/2007/04/25/how-to-create-a-windows-bootable-cd-with-mkisofs/ – kenn Feb 26 '14 at 16:51
  • @Seth Since my question was marked as duplicate by moderator I am not allowed to answer my own question. I downloaded bootsect.bin for XP cd then run mkisofs -b bootsect.bin -no-emul-boot -boot-load-seg 1984 -boot-load-size 4 -iso-level 2 -J -l -D -N -joliet-long -relaxed-filenames -V "WINSP" -o ../winsp.iso . It works well, I tested ISO on Virtualbox. – kenn Feb 26 '14 at 16:59
  • Note that I moved bootsect.bin to extracted ISO folder then opened terminal in that folder and issued the above long liner command – kenn Feb 26 '14 at 17:06
  • I'm not sure I see a difference, but I will re-open this for now so you can add your answer. – Seth Feb 26 '14 at 17:14

1 Answers1

1

As I stated in my question I want to place Windows XP ISO into one of the partitions in my USB stick to run it at boot to install XP just in case. After searching for a while on the net I learned that it's not that easy. I needed to extract XP ISO into folder then apply winvblock driver and edit a few files in extracted folder, and then pack folder into bootable XP ISO again

In order to boot from CDs, it needs boot sectors to be detected by BIOS. A bootable CDROM actually contains an image of floppy disk. https://superuser.com/questions/476415/what-does-a-bootable-cdrom-usb-floppy-disk-contain-exactly

When you extract a bootable ISO file into a folder, you can't just reassamble it into a ISO file (like mkisofs -o /tmp/cd.iso /tmp/directory/) and preserve boot functionality unless you apply a boot sector patch.

mkisofs helps apply that patch while it is creating "Bootable ISO Image" from folder. It's possible for both Windows and Linux.

For Windows XP you need to place bootsect.bin in root of folder then from root of folder in terminal run:

mkisofs  -b bootsect.bin -no-emul-boot -boot-load-seg 1984 -boot-load-size 4     -iso-level 2 -J -l -D -N -joliet-long -relaxed-filenames     -V "WINSP"     -o ../winsp.iso .

That's all. You have a bootable XP.ISO

For Linux you need isolinux.bin and boot.cat and issue command:

mkisofs -o output.iso  -b isolinux isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table    CD_root

Some time ago a guy asked similar question for Ubuntu here How can I create a bootable iso from an extracted Ubuntu 13.04 iso?

It's possible with syslinux http://www.syslinux.org/wiki/index.php/ISOLINUX

I tested my modified XP ISO in Virtualbox, it runs well.

kenn
  • 5,162