4.3. Förbereda filer för uppstart med USB-minne

För att förbereda USB-minnet behöver du ett system där GNU/Linux redan körs och där USB stöds. Med aktuella GNU/Linux-system ska USB-minnet automatiskt kännas igen när du ansluter det. Om det inte gör det bör du kontrollera att kärnmodulen usb-storage har lästs in. När USB-minnet är anslutet så kommer det att kopplas till en enhet med namnet /dev/sdX, där X är en bokstav i intervallet a-z. Du bör kunna se till vilken enhet som USB-minnet kopplades genom att köra kommandot dmesg efter minnet anslutits. För att skriva till ditt minne så måste du stänga av dess skrivskydd (om sådant finns).

Varning

Procedurerna som beskrivs i detta avsnitt kommer att förstöra allt som redan finns på enheten! Försäkra dig om att du använder det korrekta enhetsnamnet för ditt USB-minne. Om du använder fel enhet kommer resultatet bli att all information går förlorad på till exempel en hårddisk.

4.3.1. Preparing a USB stick using a hybrid CD or DVD image

Debian CD and DVD images can now be written directly a USB stick, which is a very easy way to make a bootable USB stick. Simply choose a CD or DVD image that will fit on your USB stick. See Avsnitt 4.1, ”Official Debian GNU/Linux CD/DVD-ROM Sets” to get a CD or DVD image.

Alternatively, for very small USB sticks, only a few megabytes in size, you can download the mini.iso image from the netboot directory (at the location mentioned in Avsnitt 4.2.1, ”Var man får tag på installationsavbildningar”).

The CD or DVD image you choose should be written directly to the USB stick, overwriting its current contents. For example, when using an existing GNU/Linux system, the CD or DVD image file can be written to a USB stick as follows, after having made sure that the stick is unmounted:

# cp debian.iso /dev/sdX
# sync

Viktigt

Simply writing the CD or DVD image to USB like this should work fine for most users. The other options below are more complex, mainly for people with specialised needs.

The hybrid image on the stick does not occupy all the storage space, so it may be worth considering using the free space to hold firmware files or packages or any other files of your choice. This could be useful if you have only one stick or just want to keep everything you need on one device.

Create a second, FAT partition on the stick, mount the partition and copy or unpack the firmware onto it. For example:

# mount /dev/sdX2 /mnt
# cd /mnt
# tar zxvf /path/to/firmware.tar.gz
# cd /
# umount /mnt

You might have written the mini.iso to the USB stick. In this case the second partition doesn't have to be created as, very nicely, it will already be present. Unplugging and replugging the USB stick should make the two partitions visible.

4.3.2. Manually copying files to the USB stick

An alternative way to set up your USB stick is to manually copy the installer files, and also a CD image to it. Note that the USB stick should be at least 1 GB in size (smaller setups are possible if you follow Avsnitt 4.3.3, ”Manually copying files to the USB stick — the flexible way”).

There is an all-in-one file hd-media/boot.img.gz which contains all the installer files (including the kernel) as well as syslinux and its configuration file .

Note that, although convenient, this method does have one major disadvantage: the logical size of the device will be limited to 1 GB, even if the capacity of the USB stick is larger. You will need to repartition the USB stick and create new file systems to get its full capacity back if you ever want to use it for some different purpose.

För att använda denna avbildning så behöver du bara extrahera den direkt till ditt USB-minne:

# zcat boot.img.gz > /dev/sdX

After that, mount the USB memory stick (mount /dev/sdX /mnt), which will now have a FAT filesystem on it, and copy a Debian ISO image (netinst or full CD) to it. Unmount the stick (umount /mnt) and you are done.

4.3.3. Manually copying files to the USB stick — the flexible way

If you like more flexibility or just want to know what's going on, you should use the following method to put the files on your stick. One advantage of using this method is that — if the capacity of your USB stick is large enough — you have the option of copying any ISO image, even a DVD image, to it.

4.3.3.1. Partitionera USB-minnet

Vi kommer nu att visa hur man ställer in USB-minnet att använda första partitionen, istället för hela enheten.

Notera

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[5], install an MBR using:

# install-mbr /dev/sdX

The install-mbr command is contained in the mbr Debian package. Then create the filesystem using:

# mkdosfs /dev/sdX1

Take care that you use the correct device name for your USB stick. The mkdosfs command is contained in the dosfstools Debian package.

För att kunna starta kärnan efter uppstart från USB-minnet så lägger vi på en starthanterare på minnet. Även om valfri starthanterare (exempelvis lilo) bör fungera så är det bekvämt att använda syslinux, eftersom den använder en FAT16-partition och kan konfigureras om genom att redigera en textfil. Alla operativsystem som har stöd för FAT-filsystemet kan användas för att göra ändringar i konfigurationen av starthanteraren.

För att lägga syslinux på FAT16-partitionen på ditt USB-minne, installera paketen syslinux och mtools på ditt system och kör:

# syslinux /dev/sdX1

Än en gång, se till att du använder det korrekta enhetsnamnet. Partitionen får inte vara monterad när syslinux startas. Den här proceduren skriver en startsektor till partitionen och skapar filen ldlinux.sys som innehåller starthanterarens programkod.

4.3.3.2. Lägg till installationsavbildningen

Mount the partition (mount /dev/sdX1 /mnt) and copy the following installer image files to the stick:

  • vmlinuz or linux (kernel binary)

  • initrd.gz (initial ramdisk image)

You can choose between either the text-based or the graphical version of the installer. The latter can be found in the gtk subdirectory. If you want to rename the files, please note that syslinux can only process DOS (8.3) file names.

Next you should create a syslinux.cfg configuration file, which at a bare minimum should contain the following two lines (change the name of the kernel binary to linux if you used a netboot image):

default vmlinuz
append initrd=initrd.gz

For the graphical installer you should add vga=788 to the second line. Other parameters can be appended as desired.

To enable the boot prompt to permit further parameter appending, add a prompt 1 line.

If you used an hd-media image, you should now copy the ISO file of a Debian ISO image[6] onto the stick. When you are done, unmount the USB memory stick (umount /mnt).



[5] Don't forget to set the bootable bootable flag.

[6] You can use either a netinst or a full CD image (see Avsnitt 4.1, ”Official Debian GNU/Linux CD/DVD-ROM Sets”). Be sure to select one that fits. Note that the netboot mini.iso image is not usable for this purpose.