| The proper mode to boot a USB key drive in is "USB-HDD". That is the |
| ONLY mode in which the C/H/S geometry encoded on the disk itself |
| doesn't have to match what the BIOS thinks it is. Since geometry on |
| USB drives is completely arbitrary, and can vary from BIOS to BIOS, |
| this is the only mode which will work in general. |
| |
| Some BIOSes have been reported (in particular, certain versions of the |
| Award BIOS) that cannot boot USB keys in "USB-HDD" mode. This is a |
| very serious BIOS bug, but it is unfortunately rather typical of the |
| kind of quality we're seeing out of major BIOS vendors these days. On |
| these BIOSes, you're generally stuck booting them in USB-ZIP mode. |
| |
| THIS MEANS THE FILESYSTEM IMAGE ON THE DISK HAS TO HAVE A CORRECT |
| ZIPDRIVE-COMPATIBLE GEOMETRY. |
| |
| A standard zipdrive (both the 100 MB and the 250 MB varieties) have a |
| "geometry" of 64 heads, 32 sectors, and are partitioned devices with a |
| single partition 4 (unlike most other media of this type which uses |
| partition 1.) The 100 MB variety has 96 cylinders, and the 250 MB |
| variety has 239 cylinders; but any number of cylinders will do as |
| appropriate for the size device you have. For example, if your device |
| reports when inserted into a Linux system: |
| |
| usb-storage: device found at 4 |
| Vendor: 32MB Model: HardDrive Rev: 1.88 |
| Type: Direct-Access ANSI SCSI revision: 02 |
| SCSI device sda: 64000 512-byte hdwr sectors (33 MB) |
| |
| ... you would have 64000/(64*32) = 31.25 cylinders; round down to 31. |
| |
| The script "mkdiskimage" which is supplied with the syslinux |
| distribution can be used to initialize USB keys in a Zip-like fashion. |
| To do that, calculate the correct number of cylinders (31 in the |
| example above), and, if your USB key is /dev/sda (CHECK THE KERNEL |
| MESSAGES CAREFULLY - IF YOU ENTER THE WRONG DISK DRIVE IT CANNOT BE |
| RECOVERED), run: |
| |
| mkdiskimage -4 /dev/sda 0 64 32 |
| |
| (The 0 means automatically determine the size of the device, and -4 |
| means mimic a zipdisk by using partition 4.) |
| |
| Then you should be able to run |
| |
| syslinux /dev/sda4 |
| |
| ... and mount /dev/sda4 and put your files on it as needed. |