Khởi động Linux bằng EXTLINUX

Nếu đã từng chạy Linux LiveCD (hoặc LiveUSB), hoặc bạn đã khởi động của mình bằng một đĩa giải cứu, chắc chắn bạn đã sử dụng một phiên bản nào đó của SYSLINUX.

SYSLINUX là một bộ bootloader cho Linux, nó giúp bạn có thể khởi động hệ thống từ hệ thống file MS-DOS FAT hoặc tạo đĩa khởi động (theo cách nói cũ); người em họ của nó, ISOLINUX, cũng cho phép khởi động từ CD và các môi trường tương tự như vậy.

SYSLINUX tỏ ra rất hữu dụng cho các cài đặt thời gian đầu, khi bạn thường khởi động từ một máy tính hiện đang chạy Windows, tuy nhiên cho tới gần đây, người dùng đã phải chuyển sang một bootloader khác được kích hoạt sau khi cài đặt vì SYSLINUX không xử lý các hệ thống file ext*. Mặc dù vậy, EXTLINUX, một bổ sung gần đây cho Syslinux Project, có thể xử lý các hệ thống file này (xem bên dưới), cho phép bạn có thêm một tùy chọn khởi động khác bên cạnh GRUB và LILO cho các hệ thống Linux.

Khởi động các đĩa bằng SYSLINUX và ISOLINUX

Việc sử dụng SYSLINUX để tạo đĩa khởi động là một việc hoàn toàn đơn giản: chỉ cần đặt cho nó một tên thiết bị.

syslinux /dev/fd0

Sau đó bạn có thể thiết lập cấu hình bằng cách chỉnh sửa file syslinux.cfg (tìm thấy trong /boot/syslinux/, /syslinux/, và /). Bạn có thể kiểm tra tại đây để tìm hiểu thêm về cú pháp hoàn chỉnh, tuy nhiên một entry cơ bản sẽ có dạng như thể hiện bên dưới:

DEFAULT linux
LABEL linux
SAY Booting Linux kernel via SYSLINUX
KERNEL vmlinuz.img
APPEND ro root=/dev/sda1 initrd=initrd.img

Việc tạo một bootable CD bằng ISOLINUX có đôi chút phức tạp hơn. Đầu tiên bạn cần tạo một thư mục boot/isolinux/ hoặc isolinux/ bên dưới thư mục gốc của ISO image chủ (cây thư mục mà từ đó bạn sẽ burn ISO image).

Copy isolinux.bin, isolinux.cfg (các tùy chọn cấu hình và cú pháp cho file này tương tự như syslinux.cfg), và các kernel cần thiết, file initrd, logo,… vào thư mục này. Sau đó sử dụng lệnh mkisofs (được phân phối với cdrecord) để tạo ISO image:

mkisofs -o isooutimage.iso
-b isolinux/isolinux.bin -c isolinux/boot.cat
-no-emul-boot -boot-load-size 4 -boot-info-table
/tmp/my-iso-tree/

Ở đây /tmp/my-iso-tree/ là root của cây file ISO chủ. Burn ISO image vào CD, khi đó bạn sẽ có khả năng khởi động từ CD.

EXTLINUX làm Linux bootloader

Một phát sinh mới của SYSLINUX được bổ sung thêm gần đây, EXTLINUX, cho phép khởi động từ các hệ thống file Linux ext2/ext3, phát hành 4.00, các hệ thống file Btrfs và ext4. Nó làm việc gần giống như SYSLINUX, chỉ có một ngoại lệ là chạy trên một hệ thống file được mount thay gì trên một thiết bị.

extlinux –install /boot/isolinux

File cấu ình là extlinux.conf và cũng nằm trong cùng thư mục mà EXTLINUX được cài đặt. Cũng như ISOLINUX, các tùy chọn cấu hình và cú pháp cũng tương tự như syslinux.cfg.

Bạn cũng cần đến một bản ghi khởi động chủ (master boot) vì EXTLINUX sẽ tự cài đặt trong phân vùng hệ thống file. Một số gợi ý về việc sử dụng mbr.bin được phát hành với SYSLINUX và dẫn đến đúng thiết bị:

cat mbr.bin > /dev/had

Bạn cần kiểm tra trước khi khởi động phân vùng có chứa EXTLINUX đã được kích hoạt. Cũng có thể thiết lập EXTLINUX trên hệ thống RAID .

PXELINUX và netbooting

Cũng có một phát sinh SYSLINUX khác, PXELINUX, đây là thành phần có thể được sử dụng để khởi động từ một máy chủ mạng, sau đó bạn có thể cài đặt hệ thống qua mạng. Đó chính là một cách hữu dụng cho các máy tính cũ không có ổ CD khởi động, hoặc để cài đặt một số lượng lớn các máy tính với cùn một image cài đặt.

SYSLINUX và Syslinux Project có thể đã tạo được những ấn tượng tốt, tuy nhiên rõ ràng rằng nó vẫn đi sau sự phát triển tích cực và theo kịp với những thay đổi trong cả và phần mềm. CD cài đặt Ubuntu ngày nay có kèm theo EXTLINUX như một phương pháp thay thế cho GRUB, vì vậy bạn có thể thực hiện thử nghiệm trong thời gian thực hiện cài đặt tới.

Văn Linh (Theo Linuxplanet) / Quantrimang

Bài viết liên quan