====== Differences ====== This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
eb_imagetypes [2007/03/07 15:06] stevem |
eb_imagetypes [2007/04/07 04:00] (current) stevem |
||
---|---|---|---|
Line 145: | Line 145: | ||
</file> | </file> | ||
- | ==== EtherBoot from a USB flash key ==== | + | ==== EtherBoot from USB flash ==== |
- | An EtherBoot initial load from USB flash media, perhaps a flash key. is quite simple provided of course that your BIOS can boot from USB in the first place. A modern BIOS probably will support it. You will also need... | + | An EtherBoot initial load from USB flash media is quite staightforward provided of course that your BIOS can boot from USB in the first place. A modern machine will probably be able to do this. |
+ | |||
+ | - BIOS | ||
+ | - USB master boot record | ||
+ | - USB partition boot record | ||
+ | - SYSLINUX | ||
+ | - EtherBoot | ||
+ | - Linux kernel | ||
+ | |||
+ | Your BIOS should really be able to boot from any sensible arrangement of partitions and boot sectors, but it might insist that a ZIP DRIVE geometry be used. | ||
+ | |||
+ | Required: | ||
[[http://syslinux.zytor.com/|SYSLINUX]] | [[http://syslinux.zytor.com/|SYSLINUX]] | ||
Line 153: | Line 164: | ||
[[http://www.etherboot.org|EtherBoot]] | [[http://www.etherboot.org|EtherBoot]] | ||
- | Once Linux is running with USB storage support, an inserted USB key will appear as a SCSI drive and be called something like 'sda', 'sdb', 'sdc', etc. | + | Once Linux is running with USB storage support, an inserted USB key will appear as a SCSI drive and be called something like ///dev/sda//, ///dev/sdb//, ///dev/sdc//,... in the following guide, the key is referred to as ///dev/sda//. |
- | ** Ensure you are certain which device name is used by your flash key as this device is about to be irrevocably erased ** | + | ** Be certain which device name refers to your flash key as this device is about to be irrevocably erased ** |
- | Replace /dev/sda in the following instructions with the correct name for your flash key. | + | ===== USB Flash EtherBoot - General hard disk boot geometry ===== |
- | There are two possible USB boot geometries. Your BIOS may be able to boot from only one of them: | + | * If necessary, prepare Linux to handle USB storage devices. This is up to your configuration and distribution. For example, you might find these modules present if they are not already linked into the kernel: |
- | ===== USB Flash key - ZIP DRIVE geometry ===== | + | Module Size Used by |
+ | sd_mod 19472 0 | ||
+ | usb_storage 35588 0 | ||
+ | libusual 14864 1 usb_storage | ||
+ | uhci_hcd 25100 0 | ||
+ | usbcore 141956 4 usb_storage,libusual,uhci_hcd | ||
- | A standard zip drive appears to your BIOS as having 64 heads and 32 sectors per track. The number of cylinders depends on the capacity of the drive. A zip drive insists on booting from partition 4. | + | * Insert USB flash key and examine //dmesg// output |
- | * Use the mkdiskimage script from SYSLINUX to create a blank DOS-formatted image on your flash key, letting mkdiskimage work out the size of the device | + | sda: sda1 |
+ | sd 2:0:0:0: Attached scsi removable disk sda | ||
- | mkdiskimage -4 /dev/sda 0 64 32 | + | * Wipe the master boot record ** losing all data ** |
- | This may take a little while to complete. | + | dd if=/dev/zero of=/dev/sda bs=1k count=128 |
- | * Install syslinux onto the key | + | * Create new partition |
- | syslinux /dev/sda4 | + | sfdisk /dev/sda [ENTER for defaults then (w)rite partition table] |
+ | Device Boot Start End #cyls #blocks Id System | ||
+ | /dev/sda1 0+ 1021 1022- 124683+ 83 Linux | ||
+ | /dev/sda2 0 - 0 0 0 Empty | ||
+ | /dev/sda3 0 - 0 0 0 Empty | ||
+ | /dev/sda4 0 - 0 0 0 Empty | ||
- | * Follow the above | + | * Mark the partition as active: |
- | [[http://www.etherboot.org/wiki/eb_imagetypes#lilogrubsyslinux_files_.zlilo|instructions]] | + | |
- | Using the Etherboot ''networkcard.zlilo'' file in place of the Linux kernel and /dev/sda4 in place of the diskette device. | + | |
- | For example, if you use RTL 8169s, you might have these files in the root of of the flash key: | + | sfdisk /dev/sda -A1 |
- | ldlinux.sys r8169.zli syslinux.cfg | + | * Create a DOS filesystem on the newly created active partition |
+ | |||
+ | mkdosfs /dev/sda1 | ||
+ | |||
+ | * Install SYSLINUX onto it | ||
+ | |||
+ | syslinux /dev/sda1 | ||
+ | |||
+ | * Mount the device and copy over required //networkcard.zlilo// file and corresponding //syslinux.cfg// [[eb_imagetypes#Using lilo on a floppy|just as in a diskette boot]]. There will now be three files on the flash device | ||
+ | |||
+ | root@shark(/flash)# ls | ||
+ | ldlinux.sys r8169.zli syslinux.cfg | ||
+ | |||
+ | root@shark(/flash)# cat syslinux.cfg | ||
+ | default r8169.zli | ||
+ | |||
+ | * Unmount the device, shutdown and reboot from the network. | ||
+ | |||
+ | ===== USB Flash EtherBoot - ZIP drive geometry ===== | ||
+ | An older machine may insist on a geometry which appears to your BIOS as a standard ZIP drive having 64 heads and 32 sectors per track. The number of cylinders depends on the capacity of the drive. A ZIP drive boots from partition 4. | ||
+ | |||
+ | * Use the mkdiskimage script from SYSLINUX to create a blank DOS-formatted image on your flash key, letting mkdiskimage work out the size of the device. This may take a little while to complete. | ||
+ | |||
+ | mkdiskimage -4 /dev/sda 0 64 32 | ||
+ | |||
+ | * Install SYSLINUX onto the key. | ||
+ | |||
+ | syslinux /dev/sda4 | ||
- | With syslinux.cfg containing | + | * Mount /dev/sda4 and copy over required //networkcard.zlilo// file and corresponding //syslinux.cfg// [[eb_imagetypes#Using lilo on a floppy|just as in a diskette boot]] |
- | DEFAULT r8169.zli | + | |
- | LABEL r8169.zli | + | |
- | KERNEL r8169.zli | + | |
+ | * Unmount the device, shutdown and reboot from the network. | ||
- | A recipe can be found [[http://www.beezmo.com/FloobyDustDir/FDKnoppixUsbDir/FDKnoppixUsb.htm|here]], with another source of information [[http://www.freesoftwaremagazine.com/articles/grub_intro|here]]. | ||
+ | More recipies can be found [[http://www.beezmo.com/FloobyDustDir/FDKnoppixUsbDir/FDKnoppixUsb.htm|here]], with another source of information [[http://www.freesoftwaremagazine.com/articles/grub_intro|here]]. | ||
===== PXE bootstrap loader (.zpxe) ===== | ===== PXE bootstrap loader (.zpxe) ===== |