USB stick partitioning on &arch-title;
We will show how to setup the memory stick to use the first partition,
instead of the entire device.
Since most USB sticks come pre-configured with a single FAT16
partition, you probably won't have to repartition or reformat the
stick. If you have to do that anyway, use cfdisk
or any other partitioning tool to create a FAT16 partition, and then
create the filesystem using:
# mkdosfs /dev/sda1
Take care that you use the correct device name for your USB stick. The
mkdosfs command is contained in the
dosfstools Debian package.
In order to start the kernel after booting from the USB stick, we will
put a boot loader on the stick. Although any boot loader
(e.g. LILO) should work, it's convenient to use
SYSLINUX, since it uses a FAT16 partition and can
be reconfigured by just editing a text file. Any operating system
which supports the FAT file system can be used to make changes to the
configuration of the boot loader.
To put SYSLINUX on the FAT16 partition on your USB
stick, install the syslinux and
mtools packages on your system, and do:
# syslinux /dev/sda1
Again, take care that you use the correct device name. The partition
must not be mounted when starting SYSLINUX. This
procedure writes a boot sector to the partition and creates the file
ldlinux.sys which contains the boot loader code.
Mount the partition (mount /dev/sda1 /mnt) and
copy the following files from the Debian archives to the stick:
vmlinuz (kernel binary)
initrd.gz (initial ramdisk image)
syslinux.cfg (SYSLINUX configuration file)
Optional kernel modules
If you want to rename the files, please note that
SYSLINUX can only process DOS (8.3) file names.
The syslinux.cfg configuration file should
contain the following two lines:
default vmlinuz
append initrd=initrd.gz ramdisk_size=12000 root=/dev/ram rw
Please note that the ramdisk_size parameter
may need to be increased, depending on the image you are booting.