4.3. Chuẩn bị tập tin để khởi động thanh bộ nhớ USB

To prepare the USB stick, we recommend to use a system where GNU/Linux is already running and where USB is supported. With current GNU/Linux systems the USB stick should be automatically recognized when you insert it. If it is not you should check that the usb-storage kernel module is loaded. When the USB stick is inserted, it will be mapped to a device named /dev/sdX, where the X is a letter in the range a-z. You should be able to see to which device the USB stick was mapped by running the command dmesg after inserting it. To write to your stick, you may have to turn off its write protection switch.

[Cảnh báo] Cảnh báo

GHI CHÚ : các thủ tục diễn tả trong phần này sẽ hủy bất cứ dữ liệu nào vẫn còn nằm trên thiết bị đó. Kiểm tra rất cẩn thận bạn đang sử dụng tên thiết bị đúng cho thanh USB. Nếu bạn sử dụng thiết bị không đúng, kết quả có thể là tất cả các thông tin nằm trên (ví dụ) một đĩa cứng bị mất hoàn toàn.

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

Debian installation images can now be written directly to a USB stick, which is a very easy way to make a bootable USB stick. Simply choose an image (such as the netinst, CD, DVD-1, or netboot) that will fit on your USB stick. See Phần 4.1, “Official Debian GNU/Linux installation images” to get an installation image.

Một cách khác, đối với thanh USB quá nhỏ, chỉ có vài megabyte, bạn có thể tải về ảnh mini.iso từ thư mục netboot (tại vị trí được đề cập đến trong Phần 4.2.1, “Where to Find Installation Files”).

The installation 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 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

Information about how to do this on other operating systems can be found in the Debian CD FAQ.

[Quan trọng] Quan trọng

The image must be written to the whole-disk device and not a partition, e.g. /dev/sdb and not /dev/sdb1. Do not use tools like unetbootin which alter the image.

[Quan trọng] Quan trọng

Simply writing the installation 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 /đường/dẫn/đến/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. Chép thủ công các tập tin vào thanh USB

An alternative way to set up your USB stick is to manually copy the installer files, and also an installation image to it. Note that the USB stick should be at least 1 GB in size (smaller setups are possible if you follow Phần 4.3.3, “Chép thủ công các tập tin vào thanh USB — theo cách uyển chuyển”).

Có một tập tin toàn bộ hd-media/boot.img.gz chứa tất cả các tập tin cài đặt (gồm có hạt nhân) cũng như syslinux và tập tin cấu hình của nó.

Lưu ý rằng, dù tiện lợi, phương pháp này vẫn có một nhược điểm lớn: kích cỡ luận lý của khối tin sẽ bị hạn chế thành 1 GB, ngay cả khi thanh USB có dung lượng lớn hơn. Bạn sẽ phải phân vùng lại thanh USB và tạo hệ thống tập tin mới để phục hồi lại dung lượng đầy đủ nếu bạn muốn sử dụng nó cho mục đích khác.

Để sử dụng ảnh này, chỉ cần giải nén nó trực tiếp vào thanh USB:

# 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/DVD) to it. Unmount the stick (umount /mnt) and you are done.

4.3.3. Chép thủ công các tập tin vào thanh USB — theo cách uyển chuyển

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. Phân vùng thanh USB

Tiết đoạn này diễn tả phương pháp thiết lập thanh USB để dùng chỉ phân vùng thứ nhất, thay vì toàn bộ thiết bị.

[Ghi chú] Ghi chú

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[3], 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.

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 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.

Để chèn syslinux vào phiên bản FAT16 partition trên thanh USB, cài đặt vào hệ thống hai gói syslinuxmtools, và chạy câu lệnh này:

# syslinux /dev/sdX1

Lại kiểm tra xem bạn đang sử dụng tên thiết bị đúng. Khi khởi chạy syslinux, phiên bản phải chưa được nạp. Thủ tục này ghi vào phiên bản một rãnh ghi khởi động, và tạo tập tin ldlinux.sys mà chứa mã của bộ nạp khởi động.

4.3.3.2. Thêm ảnh cài đặt

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 line (change the name of the kernel binary to linux if you used a netboot image):

default vmlinuz initrd=initrd.gz

For the graphical installer you should add vga=788 to the 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[4] onto the stick. When you are done, unmount the USB memory stick (umount /mnt).



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

[4] You can use either a netinst or a full CD/DVD image (see Phần 4.1, “Official Debian GNU/Linux installation images”). Be sure to select one that fits. Note that the netboot mini.iso image is not usable for this purpose.