Een usbstick maken waarvan een debian installatie kan worden gedaan is best eenvoudig.
Nodig : 1 usbstick, een computer met linux erop en een internetverbinding.
Steek de usbstick in je linux pc en kijk, in een teminalschermpje, met het dmesg commando hoe de nieuw gevonden disk heet. In mijn geval is dit /dev/sdd.
Hieronder is te zien hoe achtereenvolgens de bestaande partitie van de usbstick wordt verwijderd en vervolgens een nieuwe aangemaakt van het type FAT16 en deze bootable wordt gemaakt.
mark@laptop:~$ sudo fdisk /dev/sdd
Command (m for help): p
Disk /dev/sdd: 1055 MB, 1055653888 bytes
33 heads, 62 sectors/track, 1007 cylinders
Units = cylinders of 2046 * 512 = 1047552 bytes
Disk identifier: 0x8ef631df
Device Boot Start End Blocks Id System
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-1007, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1007, default 1007):
Using default value 1007
Command (m for help): p
Disk /dev/sdd: 1055 MB, 1055653888 bytes
33 heads, 62 sectors/track, 1007 cylinders
Units = cylinders of 2046 * 512 = 1047552 bytes
Disk identifier: 0x8ef631df
Device Boot Start End Blocks Id System
/dev/sdd1 1 1007 1030130 83 Linux
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): 6
Changed system type of partition 1 to 6 (FAT16)
Command (m for help): p
Disk /dev/sdd: 1055 MB, 1055653888 bytes
33 heads, 62 sectors/track, 1007 cylinders
Units = cylinders of 2046 * 512 = 1047552 bytes
Disk identifier: 0x8ef631df
Device Boot Start End Blocks Id System
/dev/sdd1 1 1007 1030130 6 FAT16
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): a
Partition number (1-4): 1
Command (m for help): p
Disk /dev/sdd: 1055 MB, 1055653888 bytes
33 heads, 62 sectors/track, 1007 cylinders
Units = cylinders of 2046 * 512 = 1047552 bytes
Disk identifier: 0x8ef631df
Device Boot Start End Blocks Id System
/dev/sdd1 * 1 1007 1030130 6 FAT16
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.
mark@laptop:~$
Vervolgens maken we een FAT filesysteem aan.
sudo mkdosfs /dev/sdd1
Nu installeren we de syslinux bootloader op de usbstick.
sudo syslinux /dev/sdd1
Hiermee wordt de bootloader geinstalleerd en het bestand ldlinux.sys neergezet. Zo te zien gaat tijdens het booten ldlinux.sys dan op zoek naar het syslinux.cfg bestand waar in staat waar de kernel e.d. staan en welke parameters aan de kernel moeten worden meegegeven. Hierover zometeen meer..
Nu gaan we wat bestanden downloaden van internet, waar onder een kernel, een initrd en een iso image. Aangezien we debian linux gaan installeren halen het zooitje op van een debian mirror. Om te beginnen halen we hier en paar bestanden op, t.w. vmlinuz en initrd.gz. Dit zijn de kernel en het ramimage.
Vervolgens hebben we nog een iso image nodig. Zelf wil ik de installatie op de netboot manier doen. Je start de installatie van de usbstick en haalt alle packages meteen van het internet af.
Download hier de *-netinst.iso naar de directory waar je net ook vmlinuz en initrd.gz hebt neergezet. (Je kunt ook een andere cd nemen, bijvoorbeeld de 1e installatie cd, als je de installatie debs liever al op je usbstick hebt staan)
Tot slot moet nog het syslinux.cfg waar ik het net over had worden aangemaakt.
Maak het bestand aan met je favo editor en zet er het volgende in :
default vmlinuz
append initrd=initrd.gz ramdisk_size=10240 root=/dev/rd/0 devfs=mount,dall rw DEBCONF_PRIORITY=medium
Mount de usbstick nu.
mount /dev/sdd1 /mnt
Kopieer vmlinuz, initrd.gz, syslinux.cfg en de netinst.iso nu naar de usbstick. Ik heb de debian-503-i386-netinst.iso op de usbstick netinst.iso genoemd. Het is namelijk een FAT16 filesysteem en dat houdt niet van lange namen..
Nu staat het volgende op je usbstick :
ls /mnt
initrd.gz ldlinux.sys netinst.iso syslinux.cfg vmlinuz
Ok, dat was het !
umount de stick en booten maar