Kiến Thức Cơ Bản Slackware Linux
4.4 Khởi Động Hệ Thống

Cấu hình khởi động của Linux có thể đơn giản hoặc phức tạp tuỳ theo mức độ sử dụng. Có nhiều người dùng chỉ đơn giản cài nguyên Slackware trên máy của mình chính vì thế họ chỉ đơn giản bật máy và sử dụng,không cần phải suy nghĩ nhiều làm gì.Còn số còn lại thì ngược lại,họ sử dụng HĐH vào các mục đích khác nhau chính vì thế đòi hỏi có sự liên kết giưa các HĐH để cho không có một cái nào bị chết.
Trong phần này chỉ miêu tả chi tiết cách sử dụng Lilo và Loadlin - hai thiết bị khởi động có được trên Slackware.

4.4.1 LILO

Lilo(Linux Loader) là công cụ khởi động phổ biến sử dụng trong các phiên bản Linux.Nó có cấu hình tương đối chặt chẽ và có thể sử dụng cho các HĐH khác nhau.

Slackware Linux cho phép sử dụng Lilo bằng menu-program để thiết lập cấu hình lilo,ứng dụng gọi là liloconfig.Ứng dụng này được gọi ra lần đầu trong quá trình cài đặt hệ thống.

Lilo đọc những tham biến của mình trên file /etc/lilo.conf(5). Tệp tin này không được sử dụng trong các lần khởi động hệ thống mà được sử dụng khi cài đặt LILO. Lilo cần phải được cài lại sau mỗi lần thay đổi cấu hình của nó.liloconfig giúp đỡ bạn xây dựng cấu hình file một cách hợp lý.
 Nếu bạn thích sửa chữa file /etc/lilo.conf bằng tay thì khi cài lại LILO cần gọi /sbin/lilotừ vỏ lệnh(shell prompt)
Khi dùng liloconfig bạn sẽ nhìn thấy màn hình trên vỏ lệnh như sau:

Nếu như bạn đã cài Lilo đầu tiên rồi thì bạn lên chọn "simple".Trong các trường hợp khác bạn chọn "expert" cho nhanh hơn nếu bạn đã quên làm việc với Linux và Lilo.Chọn "simple" sẽ bắt đầu xây dựng cấu hình Lilo.

Nếu như framebuffer  có trong nhân thì  liloconfig  sẽ hỏi bạn  xem  chế độ video nào bạn muốn sử dụng. Chế độ video này sẽ được sử dụng cho XFree86 frame bufer Server.Nếu như bạn không muốn chạy console ở chế độ video thì nên chọn ở chế độ tiêu chuẩn 80x25 ở chế độ văn bản (text mode)
Bước tiếp theo là phần cấu hình LILO - Đó là chọn chỗ để cài đặt LILO có lẽ đây là bước quan trọng nhất. Bảng sau đây sẽ giải thích rõ hơn các lựa chọn

Root
Đây là phương án cài đặt lilo trên  đầu catalog  gốc .Nó là cách chọn lựa không nguy hiểm nếu như trên máy của bạn có các HĐH khác.Bạn có thể yên tâm rằng không một booter(vật khởi động) của các HĐH khác bị ảnh hưởng.Nhưng mà điểm yếu của nó là Lilo có thể được khởi động chỉ khi Linux là đầu tiên trên hệ thống của bạn
Floppy
Phương án này hầu như la không có nguy hiểm.Nó tạo ra một đĩa khởi động dùng để khởi động Linux trên máy của bạn. Vât khởi động(booter) không nằm trên hệ thống nữa mà nó nằm trên floppy.Nhưng điểm yếu của nó là nếu như floppy bị hỏng hoặc không đọc được.Bạn sẽ phải tiến hành khởi động từ CD-ROM hoặc làm lại đĩa khởi động khác
MBR
Phương pháp này khuyến khích khi trên máy bạn có duy nhất Slackware
Nếu bạn quyết định sử dụng phương pháp này thì nó sẽ ghi lại mọi booter trên MBR

Sau khi chọn chỗ cho booter thì liloconfig sẽ ghi cấu hình của nó và cài đặt lilo và kết thúc.
Bây giờ chuyển sang phương án chọn là "expert" thì bạn có được một menu rất đặc biệt. Các menu con trong nó được đọc trong file /etc/lilo.conf. Menu "expert" như dưới đây:


Vậy đấy,việc thiết lập cấu hình lilo thật đơn giản.Nhưng khi mà lilo đột nhiên không làm việc thì bạn hãy yên tâm vẫn còn có các cách khác để khởi động Linux

4.4.2 LOADLIN

Loadlin là một công cụ khởi động của Linux được sử dụng trên Slackware Linux.Loadlin được coi như là phương pháp khởi động Linux từ môi trường DOS.Để chương trình có thể làm việc thì bạn cần có nhân nằm trong phân vùng DOS.

Khi cài đặt Linux thì loadlin nằm trong thư mục /root ở dạng zip.Để cho loadlin không tự động cài đặt thì bạn cần xao chép nhân Linux (vmlinuz) và loadlin từ home catalog root vào phân vùng DOS
Loadlin rất tiện lợi nếu như bạn thích tạo menu-khởi động ở phân vùng DOS.Menu có thể bổ sung vào file AUTOEXEC.BAT để tiện cho việc chọn lựa HĐH nào từ  hệ thống  khi bật máy.

Nếu bạn chọn Linux thì menu loadlin sẽ gọi loadlin.exe để khởi động  Slackware.Ví dụ dưới dành cho AUTOEXEC.BAT ở  Windows 95:

@ECHO OFF
SET PROMPT=$P$G
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\
CLS
ECHO Please Select Your Operating System:
ECHO.
ECHO [1] Slackware Linux
ECHO [2] Windows 95
ECHO.
CHOICE /C:12 "Selection? -> "
IF ERRORLEVEL 2 GOTO WIN
IF ERRORLEVEL 1 GOTO LINUX
:WIN
CLS
ECHO Starting Windows 95...
WIN
GOTO END
:LINUX
ECHO Starting Slackware Linux...
CD \LINUX
LOADLIN C:\LINUX\VMLINUZ ROOT=<root partition device> RO
GOTO END
:END 

Bạn cần phải chỉ ra tên phân vùng mà cài đặt Linux(ví dụ /dev/hda2). Và tất nhiên chúng ta sẽ sử dụng loadlin ở vỏ lệnh(shell prompt).Bạn cần phải chỉ tham biến cho chương trình.Bạn có thể đọc thêm hướng dẫn về loadlin trong tài liệu kèm theo.

4.4.3 Hai Tầng khởi động

Rất nhiều người sử dụng xây dựng cấu hình máy tính của mình để khởi động Slackware Linux và thêm HĐH khác nữa .Dưới đây miêu tả một vài hình ảnh khởi động

Windows 9x/DOS

Cấu hình của máy tính cho khởi động windows 9x/Linux có lẽ là thường gặp trong các họ hai tầng khởi động.Có rất nhiều cách thực hiện cho khởi động kiểu này.Chúng tôi giới thiệu hai cách chính.
Thông thường thì cấu hình hai tầng khởi động hệ thống được thực hiện sao cho qua trình khởi động HĐH không nhầm lẫn. Có nghĩa là các HĐH trên máy cần phải có một thứ tự nhất định để cho không có HĐH nào bị chết. Linux thường chiếm quyền kiểm soát nội dung MBR.Chính vì thế chúng tôi khuyến khích các bạn nên cài Linux sau cùng,và đầu tiên lúc nào cũng là windows bởi vì nó sẽ ghi chèn lên MBR cấu hình khởi động của mình

Sử Dụng Lilo

Hầu hết người dùng thích sử dụng LILO để chọn HĐH  trong quá trình khởi động hệ thống  và tất nhiên là Windows ở vị trí đầu tiên.
Chúng ta giả thiết là bạn có một HDD 47Gb IDE,giả sử bạn sử dụng một nửa đĩa để cho Windows và còn lại cho Linux. Trong trường hợp này sẽ có vấn đề cho khởi động Linux. tôi không biết cấu trúc hình học của đĩa cứng thế nào bởi vì 23.5Gb đã vượt qúa giới hạn trong 1024-cylinder. Tốt nhất bạn nên chia đĩa cứng như sau:

1GB  Windows boot (C:)
1GB  Linux root   (/)
22.5  Windows misc (D:)
22.5  Linux /usr  (/usr)

Đừng quyên rằng bạn phải có phần không gian đĩa cứng cho phân vùng swap-linux.Tất nhiên theo như người ta nói:" Dung lượng phân vùng swap cần lớn hơn hai lần dung lượng RAM(ví dụ cho máy có 64Mb thì cần có 128Mb swap".Sau đó bạn tiến hành cài đặt Windows và sau đó cài thêm Linux.Cài đặt LILO đòi hỏi bạn cần chú ý hơn khuyến khích bạn chọn phương án "expert" cho LILO.

Vậy là đã có một cấu hình mới cho LILO và bạn lên chọn phương án cài vào MBR để có thể sử dụng LILO cho việc chọn các HĐH khác nhau.Sau đó từ menu bạn bổ sung thêm vào phân vùng Linux,Windows cũng như DOS và cuối cùng là chạy "install lilo"

Khởi động lại máy tính,LILO nhất định sẽ chạy và chờ đợi sự chọn lựa của bạn.Bạn có thể ấn phím Alt để có được lời mời từ vỏ lệnh "boot:".Bạn điền tên hệ thống mà bạn muốn khởi động(Những tên này chọn khi bạn cài đặt LILO).Nếu bạn không nhớ thì hãy nhấn phím TAB để có được danh sách các HĐH cho phép khởi động.Bạn có thể xây dựng LILO một cách chi tiết hơn bằng con đường hiệu đính file /etc/lilo.conf.Bạn có thể cấu hình nó như thế nào đó để khi khởi động lại máy tính bạn thu được một menu như sau:

System Boot Menu
================
1 - Linux
2 - Windows

LILO boot:
Khi ấy tệp tin /etc/lilo.conf của tôi như sau:

# LILO configuration file
boot = /dev/hda
vga = normal
message = /boot/message
image = /vmlinuz
root = /dev/hda2
label = 1
read-only
other = /dev/hda1
label = 2
table = /dev/hda

còn  /boot/message sẽ có dạng sau:

System Boot Menu
================
1 - Linux
2 - Windows

Lilo là một phong cách nhẹ nhàng cho cấu hình hệ thông khởi động máy tính.Nó không chỉ giới ở Linux và DOS.Nó có thể khởi động bất cứ một HĐH nào(Theo Lý Thuyết).Bạn có thể thêm chi tiết về lilo qua lệnh man lilo(8).

Nhưng mà điều đáng ngại là LILO không làm việc.Có những máy mà không hề làm việc với LILO.Bạn sẽ làm gì.Dừng lo đã có những công cụ khác để khởi động Linux.Trong Slackware Linux còn cho phép một công cụ kèm theo là LOADLIN

Sử dụng LOADLIN

Đây là phương án  khi mà lilo không làm việc trên máy tính của bạn hoặc là bạn muốn có cái gì đó mới mẻ hơn.Phương án này thường dùng cho những người hay cài lại Windows.Mỗi lần cài lại Windows là nó lại ghi chèn lên MBR cấu hình của mình.Tất nhiên LOADLIN chỉ dành cho khởi động LINUX.

Khi sử dụng LOADLIN bạn có thể cài đặt các HĐH theo bất cứ thứ tự nào bạn thích.Nhưng khi cài Linux thì đừng ghi lên MBR.Tốt nhất chỉ lên cài đặt LILO và kết thúc.
Sau khi cài đặt xong Linux thì bạn xao chép tệp tin loadlinX.zip(X-mã số phiên bản) tử catalog của root(/root) vào phân vùng Windows.Đừng quyên xao chép ảnh kernel  lên đây.Miêu tả đơn giản như sau:

# mkdir /win
# mount -t vfat /dev/hda1 /win
# mkdir /win/linux
# cd /root
# cp loadlin* /win/linux
# cp /vmlinuz /win/linux
# cd /win/linuz
# unzip loadlin16a.zip

Tạo catalog  C:\LINUX trên phân vùng windows(có thể coi là /dev/hda1) và xao chép tất cả cần thiết cho LOADLIN.Sau đó khởi động lại máy tính,đăng nhật vào Windows để lập menu khởi đông.Bạn vào dòng lệnh  DOS  trong Windows.Thực hiện công việc sau:

C:\> cd \
C:\> cattrib -r -a -s -h MSDOS.SYS
C:\> edit MSDOS.SYS

Bạn bổ sung thêm dòng sau:

BootGUI=0

Lưu lại sự biến đổi.Thoát khỏi trình soạn thảo.Bây giờ cần thêm menu vào tệp tin

 C:\AUTOEXEC.BAT(Bạn hãy xem ví dụ dưới đây)

cls
echo System Boot Menu
echo.
echo 1 - Linux
echo 2 - Windows
echo.
choice /c:12 ''Selection? -> ''
if errorlevel 2 goto WIN
if errorlevel 1 goto LINUX
:LINUX
cls
echo ''Starting Linux...''
cd \linux
loadlin c:\linux\vmlinuz root=/dev/hda2 ro
goto END
:WIN
cls
echo ''Starting Windows...''
win
goto END
:END

 Chìa khoá của giải pháp là LOADLIN,chúng ta thông báo cho nó những thông tin sau để khởi động HĐH(Nhân(kernel),catalog gốc Linux...).
Tất cả các công cụ cần cho phương án này được chuẩn bị sẵn trên SlackWare Linux.Tuy nhiên trên chợ LINUX tồn tại một khối lượng khổng lồ các vật mang khởi động để thực hiện bất cứ các loại hai tầng khởi động nào.

Windows NT

Một trong các  phương án phổ biến cho hai tầng khởi động Windows NT và LINUX.Với Windows NT thì có phức tạp hơn,có nhiều vấn đề hơn.Vấn đề chính là khi LILO ghi lên MBR thì bạn thân Windows NT sẽ không khởi động được.Chính vì thế khi quyết định  sử dụng loại này thì cần có  một thứ tự tiến hành cách bước sau:

1 Cài đặt Windows NT
2
Cài đặt Linux,còn LILO cài ở sperblock phân vùng Linux
3
Đọc 512bytes đầu tiên ở phân vùng gốc Linux và khi lên phân vùng Windows NT
4
Soạn thảo lại C:\BOOT.INI từ Windows NT và bổ sung vào Linux
 
Cài đặt Windows NT có thể coi là công việc đơn giản cũng như với Linux.Việc xao chép lại 512bytes đầu tiên trên phân vùng gốc của Linux cũng không khó lắm.Bạn hãy đăng nhập vào Linux(giả thuyết phân vùng là /dev/hda2)

# dd if=/dev/hda2 of=/tmp/bootsect.lnx bs=1 count=512

Vậy là bạn đã chuẩn bị xong.Bạn cần xao chép bootsect.lnx sang phân vùng Windows NT.Nhưng bạn đừng vội mừng,Linux không cho phép ghi lên phân vùng định dạng NTFS.Nếu như khi cài đặt Windows NT bạn chọn định dạng là NTFS thì bạn lên xao chép bootsect.lnx sang một disk định dạng FAT hoặc FAT32.Sau đó đăng nhập vào Windows NT và đọc nó.

Còn may mắn nếu bạn chọn phân vùng Windows NT là FAT thì bạn chỉ đơn giản là xao chép nó sang là xong.Tuy nhiên mọi con đường đều dẫn đến việc copy tệp tin /tmp/bootsect.lnx  đến C:\BOOTSCT.LNX trên Windows NT.

Bước cuối cung là bổ sung Linux  vào menu-khởi động của Windows NT.Chạy DOS,thực hiện công việc sau:

C:\WINNT> cd \
C:\> attrib -r -a -s -h boot.ini
C:\> edit boot.ini
Bổ sung vào dòng sau:
C:\bootsect.lnx=''Slackware Linux''

Lưu lại sự thay đổi và thoát khỏi trình soạn thảo.Khởi động lại máy tính. Từ màn hình bạn chọn mục "Slackware Linux" và tiếp theo la Linux được Khợi động.
Chúc các bạn may mắn với những bài thực hành này.

Mục Lục

Biên dịch: Vũ Dũng(vudung@mail.ru)
website:http://khigiacmoquayve.narod.ru
1-9-2005 Voronezh Russian
Hosted by uCoz