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

Có hai phương pháp cài đặt có thể làm khi khởi động từ một thanh USB. Cái trước là cài đặt hoàn toàn từ mạng. Cái sau là cũng sao chép một ảnh đĩa CD vào thanh USB, và dùng nó làm một nguồn các gói, có thể cùng với một máy nhân bản. Phương pháp sau này thường dùng hơn.

Để sử dụng phương pháp cài đặt trước, bạn cần phải tải một ảnh cài đặt xuống thư mục netboot (ở địa chỉ diễn tả trong Phần 4.2.1, “Nơi tìm ảnh cài đặt”) và sao chép các tập tin vào thanh USB bằng cách dẻo giải thích bên dưới.

Các ảnh cài đặt cho phương pháp cài đặt sau nằm trong thư mục hd-media, và có thể sao chép ảnh vào thanh USB bằng hoặc cách dễ hoặc cách dẻo. Để sử dụng phương pháp cài đặt này, bạn cũng cần phải tải về một ảnh đĩa CD. Cả ảnh cài đặt lẫn ảnh cài đặt đều phải dựa vào cùng một bản phát hành debian-installer. Không thì bạn rất có thể gặp lỗi[6] trong khi cài đặt.

Để chuẩn bị thanh USB, bạn cần một hệ thống đang chạy GNU/Linux và hỗ trợ USB. Dùng hệ thống Linux hiện thời, thanh USB nên được tự động nhận ra khi bạn nạp nó vào. Không thì bạn nên kiểm tra lại mô-đun usb-storage đã được nạp chưa. Khi thanh USB được nạp, nó sẽ được ánh xạ tới một thiết bị tên /dev/sdX, mà X là một chữ trong phạm vi ASCII a-z. Bạn nên có khả năng thấy thiết bị đích bằng cách chạy lệnh dmesg sau khi nạp vào. Để ghi vào thanh đó, có lẽ bạn cần phải tắt cái chuyển bảo vệ chống ghi của nó.

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.

Ghi chú rằng thanh USB nên có khả năng ít nhất 256 MB (còn có thể tạo thiết lập nhỏ hơn nếu bạn theo Phần 4.3.2, “Sao chép tập tin một cách dẻo”).

4.3.1. Sao chép tập tin một cách dễ dàng

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

Ghi chú rằng, dù tiện ích, phương pháp này vẫn có một nhược điểm lớn: kích cỡ hợp lý của khối tin bị hạn chế thành 256 MB, thậm chí nếu thanh USB có nhiều khả năng hơn. Bạn cần 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 khả năng đầy đủ về sau nếu bạn muốn sử dụng nó nhằm mục đích khác. Một nhược điểm thứ hai là bạn không thể sao chép vào thanh USB một ảnh đĩa CD đầy đủ, chỉ ảnh CD nhỏ hơn kiểu danh thiếp (businesscard) hay cài đặt qua mạng (netinst).

Để 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

Sau đó, gắn kết thanh USB (mount /dev/sdX /mnt), mà giờ chứa một hệ thống tập tin FAT , và sao chép vào nó một ảnh ISO Debian kiểu danh thiếp (businesscard) hay cài đặt qua mạng (netinst). Tháo gắn kết thanh USB (umount /mnt) và bạn đã hoàn tất.

4.3.2. Sao chép tập tin một cách dẻo

Nếu bạn thích tính chất dẻo hơn, hoặc chỉ muốn biết có gì xảy ra, bạn nên sử dụng phương pháp theo đây để sao chép các tập tin vào thanh USB. Một lợi ích về sử dụng phương pháp này là (nếu thanh USB có đủ khả năng) bạn có dịp sao chép vào nó một ảnh ISO đĩa CD đầy đủ.

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

Vì phần lớn các thanh USB được cấu hình sẵn với một phân vùng FAT16 riêng lẻ, rất có thể là bạn không cần phân vùng lại hay định dạng lại thanh đó. Nếu bạn vẫn cần làm như thế, hãy dùng cfdisk hay bất cứ công cụ phân vùng nào khác để tạo một phân vùng FAT16[7], sau đó tạo hệ thống tập tin dùng:

# mkdosfs /dev/sdX1

Kiểm tra xem bạn dùng tên thiết bị đúng cho thanh USB. Lệnh mkdosfs có sẵn trong gói Debian dosfstools.

Để khởi chạy hạt nhân sau khi khởi động từ thanh USB, bạn cần phải để một bộ nạp khởi động (bootloader) trên thanh đó. Dù bất cứ bộ nạp khởi động nào (v.d. lilo) nên có tác động, tiện ích là sử dụng syslinux, vì nó dùng một phân vùng FAT16 và có thể được cấu hình lại bằng cách chỉ chỉnh sửa một tập tin văn bản. Bất cứ hệ điều hành nào hỗ trợ hệ thống tập tin FAT thì có thể được sử dụng để sửa đổi cấu hình của bộ nạp khởi động.

Để 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.2.2. Thêm ảnh cài đặt

Gắn kết phân vùng (mount /dev/sdX1 /mnt) và sao chép vào thanh những tập tin ảnh cài đặt theo đây:

  • vmlinuz hay linux (tập tin nhị phân hạt nhân)

  • initrd.gz (ảnh đĩa RAM đầu tiên)

Bạn có thể chọn hoặc phiên bản thông thường hoặc phiên bản đồ họa của trình cài đặt. Phiên bản đồ họa của trình cài đặt nằm trong thư mục con gtk. Nếu bạn muốn thay đổi tên của tập tin, ghi chú rằng syslinux chỉ có khả năng xử lý tên tập tin kiểu DOS (8.3).

Sau đó thì bạn nên tạo một tập tin cấu hình syslinux.cfg: nó nên chứa ít nhất hai dòng này (thay đổi tên của bản nhị phân hạt nhân thành linux nếu bạn đã dùng một ảnh kiểu netboot):

default vmlinuz
append initrd=initrd.gz

Đối với trình cài đặt kiểu đồ họa, bạn nên thêm vào dòng thứ hai chuỗi video=vesa:ywrap,mtrr vga=788.

Nếu bạn đã sử dụng một ảnh hd-media, bây giờ bạn nên sao chép vào thanh USB một ảnh ISO Debian[8]. Một khi hoàn tất thì tháo gắn kết thanh USB (umount /mnt).

4.3.3. Khởi động thanh USB

Cảnh báo

Nếu hệ thống không khởi động được từ thanh USB, có lẽ thanh đó chứa một mục ghi khởi động chủ (Master Boot Record: MBR) không hợp lệ. Để khắc phục nó, dùng chức năng install-mbr của gói mbr:

# install-mbr /dev/sdX



[6] Thông điệp lỗi rất có thể hiển thị là không tìm thấy mô-đun hạt nhân. Có nghĩa là phiên bản udebs của mô-đun hạt nhân nằm trên ảnh CD vẫn khác với phiên bản của hạt nhân đang chạy.

[7] Đừng quên lập cờ có khả năng khởi động bootable.

[8] Bạn có thể sử dụng một ảnh ISO kiểu danh thiếp (businesscard), cài đặt qua mạng (netinst) hay ảnh đĩa CD đầy đủ (xem Phần 4.1, “Bộ đĩa CD Debian GNU/Linux chính thức”). Kiểm tra lại bạn chọn kiểu thích hợp. Ghi chú rằng ảnh kiểu mini.iso netboot không chạy được nhằm mục đích này.