CÀI ĐẶT NHIỀU HỆ ĐIỀU
HÀNH
TRÊN CÙNG 1 MÁY TÍNH
(được viết bởi RongReu)
Giới
thiệu
Thiết lập nhiều hệ điều hành trong một máy là một nhu cầu
cần thiết cho rất nhiều bạn nghiên cứu và học tập cũng như là một mốt...thời
thượng để chúng ta thưởng thức từng cái mạnh của mỗi hệ điều hành. Mục đích của
bài nầy là giới thiệu đến các bạn cách install 3 hệ điều hành Windows ME,
Windows 2k, và Linux RedHat 7.1. Sau đó dùng boot loader của Win2k
làm phần chính để điều khiển các hệ điều hành. Nhưng trước khi đi vào install
mọi thứ tôi xin trình bày một số điểm cần chú ý cho các bạn chưa hoặc không quen
biết lắm với việc cài đặt nhiều hệ điều hành.
Master Boot
Record
Là một thuật ngữ được dân computer hay gọi là MBR (bạn sẽ
thấy họ nhắc đến những chữ viết tắc nầy nhiều trên internet hoặc trao đổi). Ðây
chỉ là một mảng dữ liệu về các partion trong máy, không hơn không kém!
Master
Boot Record được tạo do hệ điều hành và dĩ nhiên mỗi hệ điều hành đều có cách
tạo riêng biệt. Ví dụ, WinNT4 và Win2k sẽ có file boot.ini dùng như
Master Boot Record. Mỗi khi khởi động máy, một chương trình chuyên làm việc
loading hệ điều hành của WinNT là NT bootloader (một file loại .exe) sẽ dò tìm
nội dung của file boot.ini để load hệ hiều hành cần thiết cho người
dùng.
Riêng Windows 98 và Windows ME thì có chút khác biệt, chúng không có
chương trình tìm hệ điều hành như NT bootloader và sẽ mặc nhiên load hệ điều
hành tại phần partion đầu tiên trong hard disk, thông thường là phần partition C
trong hard disk.
Theo mặc định thì MBR sẽ luôn được lưu giử tại ổ dĩa cứng
thấp nhất (nếu bạn có nhiều ổ dĩa cứng thứ tự là 0,1,2....) và partition nhỏ
nhất của nó (partition đầu tiên trong ổ dĩa số 0, để dể cho ví dụ, tôi tạm gọi
nơi nầy là Boot Table). Ðây là một nơi rất quan trọng để BIOS tìm đến khi
máy vừa khởi động. Tôi cũng xin nhắc lại để các bạn khỏi nhầm lẫn giửa
MBR và nơi để MBR. Một máy tính có thể có nhiều MBR (khi cài đặt
một hệ điều hành, nhất là linux, bạn có thể cài MBR tại Boot Sector chứ không
nhất thiết là tại Boot Table) tuy nhiên BIOS chỉ tìm đến Boot Table để dò
tìm hệ điều hành mà thôi! Một lổi lầm thường thấy khi bạn cài đặt nhiều hệ
điều hành là cài sau khi cài đặt linux vào thì không vào được hệ thống Windows,
và ngược lại nếu tái cài đặt windows thì Linux ... mất tiêu luôn! lý do là bạn
khi cài đặt các hệ điều hành, thằng nào cũng muốn thảy cái MBR của nó vào
Boot Table cả! cho nên thằng nào cài đặt sau sẽ xoá hết thông tin của
thằng trước đó! tôi nghĩ đây là gút mắc to nhất cho các bạn trong việc cài
đặt nhiều hề điều hành, tuy nhiên chúng ta sẽ có cách dàn xếp ổn thoả để cho cả
3 hệ thống cùng tồn tại. Ðó cũng là trọng tâm của bài viết.
Boot
Sector
Boot Sector thật ra cũng là một mãng dữ liệu chứa thông tin
về một partition nào đó, mỗi khi bạn tạo một partition mới thì một Boot Sector
sẽ tạo kèm theo trên đầu nó để chứ thông tin về cái partition đó, ví dụ, Boot
Sector sẽ cho bạn biết có bao nhiêu Megabyte trong partition, từ điạ chỉ đầu và
cuối của nó trong hard disk, còn trống bao nhiêu.... Dĩ nhiên là cấu trúc của
mỗi Boot Sector sẽ khác nhau tùy theo hệ điều hành bạn dùng để tạo nó. Ðể
mô tả thêm chính xác vị trí của MBR và các Boot Sector xin xem hình
Bàn lại vấn
đề
Tới đây tôi xin bàn lại vấn đề cài đặt 3 hệ điều hành (WinME
hoặc Win98, Win2k, và Linux RedHat 7.1). Tiến trình khởi động của một máy tính
bao gồm trước tiên là khởi động BIOS từ Motherboard, BIOS sẽ "nhảy" (tìm) đến
Boot Table (chứa MBR) để tìm và khởi động hệ điều hành dựa theo thông tin
từ MBR. Nếu có nhiều hệ điều hành, BIOS sẽ tự động khởi động hệ điều hành đầu
tiên mà nó tìm thấy.
Dĩ nhiên là xong xong với quá trình nầy BIOS sẽ kiểm tra
tín hiệu nhập từ bàn phím và kết hợp với thông tin từ MBR để chọn (và khởi động)
hệ điều hành. Bạn có thể chọn khởi động hệ điều hành bạn thích bằng cách can
thiệp từ bàn phím.
Tới đây bạn sẽ thấy một vấn đề thường gặp khi chúng ta cài
đặt hai hệ thống Windows và Linux là sự tranh dành việc quản lý Boot Table. Ðối
với hệ thống Windows thì hầu như bạn không gặp cản trỡ nhiều khi cài đặt hai hệ
điều hành chung với nhau, theo luật thông thường thì bạn nên cài đặt hệ điều
hành version mới hơn sau cùng, ví dụ, bạn nên cài đặt Win98 hay WinME trước, sau
đó mới cài đặt Win2k bởi vì Win2k mới hơn. Một đặt điểm của đáng trách của hệ
thống Windows là chúng chỉ cài đặt MBR tại Boot Table mà thôi trong khi đó hệ
thống Linux cho phép bạn tùy ý cài đặt MBR tại Boot Table hoặc tại Boot
Sector. Ðể dàn xếp xự tranh dành nầy, tôi sẽ cài MBR của hệ thống windows
vào Boot Table và cài MBR của Linux vào Boot Sector của nó. Sau đó tìm cách sửa
MBR của hệ thống windows để nó cộng thêm Linux trong khi khởi động
máy.
Tiến hành cài
đặt
Trước tiên bạn nên có 2 cái CD linux 7.1 (xem thêm bài
tutorial về cách install Linux
RedHat 7.1) và các CD của win ME, win2k .... tôi nêu ra một số tình huống
căn bạn như sau để bạn tiện tham khảo:
Tình huống thứ nhất: nếu bạn đã
có sẵn hai hệ thống Windows (Win98 hoặc WinME, và Win2k) trên một cái HDD.
Bạn kiểm tra xem hai hệ thống kia đã chiếm hơn 8032MB chưa? Tương tự như hệ
thống NT4, Linux Redhat 7.1 sẽ không nhận dạng được dĩa cứng trên 8Gig.
Bạn sẽ có thể gặp khó khăn khi tạo partition cho Linux. Riêng Mandrake 8.0 thì
có khả năng nhận dạng được tất cả. Ðể tránh tình trạng nầy bạn nên cài
Linux lên partition của Win2k (bạn sẽ xoá Win2k! Chú ý backup dữ liệu!) sau đó
cài Win2k lại sau vì Win2k có thể nhận dạng partition nằm ngoài 8Gig.
Tình
huống thứ hai: nếu bạn đã có sẵn hai hệ thống Windows (Win98 hoặc WinME, và
Win2k) và có 2 ổ dĩa cứng! Bạn có thể cài Linux vào một trong hai ổ dĩa cứng kia
miễn sau nó phải nằm trong phạm vi 8Gig là tốt (xem thêm thông tin ở bài tutorial
về Partition Magic).
Tình huống thứ ba: bạn cài mới tất
cả!
Chỉnh xửa
MBR
Trước tiên bạn nên dùng floppy disk cho linux để khởi động vào
linux. Sau khi log in (xin xem bài tutorial) bạn nên làm một số việc sau
1)
Tìm một cái floppy (được format với Win hoặc DOS) còn trống ít nhất là 1k
2)
bạn (tôi cho là bạn biết dùng một số lệnh linux căn bản, giống như dos, xem thêm
ở tutorital một số lệnh
căn bản của Linx) dùng editor nào đó như vi để mở file sau
/etc/lilo.conf
3) sau đó nhìn hàng đầu xem cái boot sector của linux
nằm ở đâu, bạn sẽ thấy đại khái như boot=/dev/hdxy. Trong đó x là số
thứ tự hard disk cuả bạn (a, b, c, ...) và y sẽ là số thứ tự của partition (1,
2, 3, ....). Giả sử bạn biết kết quả là /dev/hda2 đi nhe! (để là ví dụ)
4) tạo một directory
/tmp (nếu chưa có) sau đó mount cái floppy disk (FAT system) vào
directory /tmp rồi copy 512 byte đầu của cái partition (/dev/hda2) bạn vừa tìm được vào floppy. Nếu bạn không chắc thì
làm như sau: bỏ đĩa floppy vào ổ đĩa và gõ các lệnh:
mount /dev/fd0 /tmp -t vfat
dd if=/dev/hda2 of=/tmp/linux.bin bs=512 count=1
umount /dev/fd0
5) tới đây bạn sẽ có một file tên là linux.bin
trong floppy disk! Lấy dĩa floppy ra, reboot lại máy để vào Win2k
6)
copy cái file linux.bin vào nơi nào đó trong ổ dĩa của Windows, ví dụ bạn bỏ vào
C: đi nhé.
7) bạn dùng 1 chương trình text editor nào đó để open file
boot.ini (chú ý đây là file hệ thống nên windows sẽ làm ẩn nó, bạn phải
đặt options là hiển thị các file ẩn thì mới thấy nó được), thêm vào một hàng như
thế nầy: c:\linux.bin="Welcome to my RedHat Linux"
8) reboot lại máy,
bạn sẽ thấy một menu với ba hệ điều hành như ý bạn!
Chú ý:
dd: dump disk, nó tương tự
như lệnh copy của dos nhưng dd sẽ copy theo kiểu binay có nghĩa là copy một cách
chính xác machine data của đĩa.
a2: là đánh dấu mang ý nghĩa ổ dĩa
cứng đầu tiên và partition số 2, nhớ thay đổi chỉ số nầy
phù hợp với vị trí cái linux của bạn nhé!!!!
if: input
file, chỉ tên của input file, trong tường hợp nầy là ổ thứ tự của ổ dĩa cứng và
partition nơi linux đang nằm
of: ouput file, tên của output
file
bs: boot sector, chỉ số byte của một sector
count: đếm
số lần copy
--> toàn bộ ý nghĩa của lệnh dd trên là copy cái Boot Sector
(512 bytes) của linux vào floppy disk và đặt tên nó là linux.bin mà
thôi!
chúc các bạn thành công!
(Viết cho diễn đàn tin
học)
RongReu