PDA

View Full Version : Tạo Dual-Boot giữa Ubuntu với Windows XP khi Ubuntu đã cài đặt trước


quanthoigian
10-06-2012, 06:43 AM
Chuẩn bị trên hệ thống Ubuntu

Giả sử là hệ thống Ubuntu đã được cài đặt trên một ổ đĩa cứng duy nhất và có đủ chỗ để cung cấp cho hai hệ điều hành .

Bước đầu tiên là tạo một khoảng trống vừa đủ trên đĩa để cài đặt Windows XP . Trên đĩa Ubuntu Live CD (http://public.planetmirror.com/pub/ubuntu/releases/feisty/ubuntu-7.04-desktop-i386.iso) có chứa GNOME Partion Editor , mà có thể được dùng để thay đổi kích thước những phân vùng của Linux , nhưng Live CD cho Ubuntu 7.04 lại rất phiền phức khi gắn hệ thống File trong khi nó kiểm tra . Đó chính là nguyên nhân khiến cho phân vùng đang làm việc bị lỗi . Để thay thế , chúng ta sẽ dùng GParted LiveCD , làm việc độc lập với hệ điều hành và không làm cho chúng ta gặp bất kì phiền toái nào .

File định dạng ISO của GParted LiveCD có sẵn tại đây (http://sourceforge.net/project/showfiles.php?group_id=115843&package_id=173828) , ghi nó tới đĩa CD và khởi động hệ thống từ đĩa này . Phiên bản chúng ta sẽ dùng là 0.3.4-7 .

Khởi động máy tính Ubuntu từ GParted LiveCD . Phụ thuộc vào hệ điều hành , bạn nên cần chọn khởi động theo (auto-configuration) .

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh1.jpg

Trong khi khởi động bấm Enter hai lần khi nhắc để chọn KeyMap và thiết lập ngôn ngữ . Khi tải GUI chính , bấm chuột phải vào Phân vùng chính ( phụ thuộc vào thiết lập của bạn , co thể là /dev/sda1 ) và chọn Resize/Move

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh2.jpg

Sử dụng thanh trượt để tạo khoảng trông đủ cho việc sử dụng Windows XP sau đó bấm Resize/Move .

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh3.jpg

Ngay khi thực hiện xong , thoát khỏi GParted LiveCD và khởi động lại máy tính bằng đĩa CD cài đặt Windows XP .

Bây giờ cài đặt Windows XP

Ngay khi CD đã tải xong , bấm Enter để cài đặt Windows XP , sau đó bấm F8 để chấp nhận thoả thuận bản quyền .

Khi màn hình Phân vùng xuất hiện , bạn có thể thấy rằng Windows Setup có thể thấy hai phan vùng Ubuntu đang tồn tại và thậm chí còn gán cả tên ổ đĩa .

Khoảng trống bạn vừa tạo ra cũng có mặt ở đó , chọn phân vùng này và bấm Enter

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh4.jpg

Bởi vì Phân vùng đầu tiên đã được thiết lập Active ( /dev/hda1) và đã được đánh dấu thành Bootable , vì thế Windows không thể cài đặt được phần vùng này cho tới khi nó phải đánh dấu thành Inactive . Điều đó cũng xảy ra tương tự khi cài đặt Windows Vista . Bấm phím Enter để thay đổi điều đó và sau đó Formar phân vùng này .

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh5.jpg

Rất không may bởi vì XP nhận ra hai phân vùng Ubuntu và gán thành tên ổ đĩa , phân vùng mới mà Windows sẽ được cài đặt lên sẽ được gán là F: , tất nhiên điều đó rõ ràng là không chuẩn trong môi trường Windows .

Tuy nhiên điều đó không có vấn đề gì lớn vì Windows và các ứng dụng đủ thông minh để chạy được .

Nó cũng có thể là vấn đề với những ứng dụng cũ khi nó gán tên trực tiếp của ổ cứng ngầm định.

Khởi động lại hệ thống ngay sau khi Windows được cài đặt và bạn sẽ thấy máy tính khởi động vào thẳng Windows XP . Phần BootLoader GRUB của Ubuntu trong MBR ( Master Boot Record ) đã bị ghi đè , do đó Ubuntu không thể khởi động được tại thời điểm này .

Có nhiều cách để làm cho phân vùng Ubuntu có thể khởi đọng được trong khi vẫn sử dụng BootLoader của XP trong MBR . Tuy nhiên điều đó quá phức tạp và lại yêu cầu chỉ dùng với FAT32 . Vì thế để đơn giản hoá là cài lại GRUB là linh hoạt nhất .

Cài lại GRUB tới MBR

Bước tiếp theo là cài lại GRUB thành BootLoader hệ thống . Khởi động hệ thống bằng đĩa Ubuntu LiveCD .

Chạy GNOME Partition Editor và bạn có thể thấy phân vùng của Windows XP được nhận ra là /dev/hda2 và đang được đánh dấu là phân vùng khởi động ( Boot Partition ) .

Bấm chuột phải vào phần vùng Windows và chọn Manage Flags
Bỏ dấu tích “Boot” và chọn Close .
Sau đó bấm chuột phải và phân vùng Ubuntu đầu tiên ( /dev/hda1) , chọn Manage Flags và đánh dấu tích trong “Boot” , sáu đó chọn Close .

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh6.jpg

– Manage Flags

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh7.jpg

Đánh dấu Bootable

Bây giờ cài lại GRUB . Sử dụng Terminal ( Application , Accessories , Terminal ) và gõ
sudo grub

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh8.jpg

Lệnh này sẽ chạy ứng dụng GRUB . Bây giờ gõ
find /boot/grub/stage1

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh9.jpg

Lệnh này sẽ tìm xem GRUB hiện đang nằm ở đâu , và bạn sẽ nhận được kết quả là hd(0,0)
Tiếp theo bạn gõ
root(hd0,0)
Bây giờ chúng ta tiếp tục cài đặt lại GRUB tới MBR
Gõ tiếp
setup (hd0)

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh10.jpg

Nó sẽ khôi phục GRUB tới MBR . Gõ Quit và sau đó là Exit để thoát khỏi GRUB và Terminal . Khởi động lại hệ thống . Ubuntu sẽ được tải ngầm định .

Thay đổi Boot Menu

Những gì chúng ta cần đó là thay đổi Boot Menu GRUB để cho phép Windows XP được tải . Khởi động hệ thống Ubuntu và mở Terminal . Gõ lệnh sau
sudo gedit /boot/grub/menu.lst

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh11.jpg

Lệnh này sẽ tải File menu của GRUB bên trong GEdit

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh12.JPG

Bạn tìm phía dưới phía sau dòng “# # End Default Options # #”
Có những Menu riêng cho những mục của GRUB
Để tạo một mục mới , chuyển xuống phía dưới cùng của danh sách và vào theo dòng lệnh sau
title Windows XP
root (hd0,1)
makeactivechainloader +1

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh13.jpg

Vị trí này là mục trong Boot Menu để chạy Windows XP từ phân vùng của nó ( hd0,1) .
Nếu thích bạn cuộn lên trên cùng của File MENU.LST và tìm tới dòng có tên gọi TIMEOUT
Số được gán cho mục này cho biết bạn mất thời gian bao lâu để phần khởi động ngầm định được kích hoạt . Khi cấu hình hệ thống Multi-Boot thì nên tăng giá trị này .
http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh14.jpg
Phía trên của TIMEOUT là DEFAULT . Điều này chỉ rõ danh mục khởi động theo kiểu ngầm định.
Lưu File MENU.LST và thoát khỏi GEdit , sau đó khởi động lại hệ thống
Bấm phím ESC để xuất hiện Menu khởi động và bạn sẽ thấy có danh mục khởi động Windows XP trong đó .

Gỡ bỏ Windows XP

Nếu bạn muốn gỡ bỏ Windows XP thì thực sự dễ dàng .
Bạn vào trong MENU.LST và gỡ danh mục liên quan tới Windows XP .
Khởi động máy tính bằng đĩa Ubuntu LiveCD và chạy GNOME Partition Editor .Bấm chuột phải vào phân vùng của Windows XP ( /dev/hda2 ) và chọn Delete .

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh15.jpg

Sau đó bấm chuột phải vào Phân vùng Ubuntu chính và chọn Resize/Move
Kéo sườn của phần vùng để đè lên phân vùng của Windows XP cũ và bấm Resize .
Bấm Apply để chấp nhận sự thay đổi này

http://tuvantinhoc1088.com/my_documents/my_pictures/Reader/DualBoot%20-%20Linux/hinh16.jpg

jaeyoungkim.dhi
10-06-2012, 06:43 AM
cho mình hỏi chút, mình dùng cái GParted (http://sourceforge.net/project/showfiles.php?group_id=115843&package_id=173828) thấy chạy lâu quá. Dùng Partion Magic được ko ? nếu dc thì đến đoạn chuyển boot partion sang Ubuntu thì làm thế nào ? cảm ơn bạn

lananh_hiep
10-06-2012, 06:43 AM
Trước khi cài thì bạn cần phân vùng lại ổ cứng để có 2 phân vùng là ext2 và swap để cài ubuntu. Bạn hãy làm theo cách sau (dùng đĩa khởi động Hiren's BootCD hoặc Partition Magic trong Win cũng dc)

Ở đây mình dùng hiren's boot và partition magic:
Đầu tiên boot vào đĩa CD:
http://lh6.google.com/phantrongkhanh87/R1BiaInxZCI/AAAAAAAABIA/2PiBKW7BJik/s800/boot.jpeg
Sau đó chọn công cụ phân vùng:
http://lh6.google.com/phantrongkhanh87/R1BiaInxZEI/AAAAAAAABIQ/W__NjK8ESKo/s800/choose2.jpeg
Sau đó chọn partition magic:
http://lh6.google.com/phantrongkhanh87/R1BiaInxZDI/AAAAAAAABII/ZlHYLE53elk/s800/choose1.jpeg
Sau khi vào partition magic, bạn sẽ nhìn thấy những phân vùng(ổ đĩa) sẵn có của mình:
http://lh6.google.com/phantrongkhanh87/R1BiaInxZFI/AAAAAAAABIY/uDGOWOib07I/s800/screenshot7.jpeg
Việc tiếp theo là xem phân vùng (ổ đĩa) nào còn trống nhiều (>10Gb) thì chọn ổ đó để cắt ra 1 phần 10Gb.
Nhắp phải vào ổ định cắt, chọn resize/move:
http://lh3.google.com/phantrongkhanh87/R1BiaYnxZGI/AAAAAAAABIg/E_GszudRuQo/s800/screenshot8.jpeg
Điền vào ô free space after (nhớ chọn after để resize nhanh http://ubuntu-vn.tuxfamily.org/forum/images/smilies/cheesy.gif): khoảng 1000Mb (~10Gb) (hoặc bạn có thể dùng chuột để kéo 1 đầu cho phân vùng hẹp lại):
http://lh3.google.com/phantrongkhanh87/R1BisYnxZHI/AAAAAAAABIo/lf6Pwkz7mLE/s800/screenshot9.jpeg
sau khi điền (hoặc kéo ngắn phân vùng lại):
http://lh3.google.com/phantrongkhanh87/R1BisYnxZII/AAAAAAAABIw/sQUQG4q_-CU/s800/screenshot10.jpeg
Ok. Vậy là bạn đã tạo được một phân vùng trống để cài đặt Ubuntu.
http://lh4.google.com/phantrongkhanh87/R1BisonxZJI/AAAAAAAABI4/o72k1uqjsCA/s800/screenshot11.jpeg
Rất đơn giản, rất an toàn, không ảnh hưởng j đến dữ liệu và OS có sẵn trên máy.

trinhqtoan
10-06-2012, 06:43 AM
Nếu cài xong window và ubuntu rồi. Bạn có cách nào để giấu Partition cài Window để khi dùng Ubuntu sẽ ko thấy partition đó ko ? cảm ơn bạn

thanhquy
10-06-2012, 06:43 AM
việc ẩn partition là điều không nên làm vì nếu như bạn chưa hiểu kỹ về unix thì rất dễ dẫn đến việc phá hỏng partition ẩn đó, bạn chỉ cần bảo mật bằng pass vào unix là đủ. Còn nếu muốn hơn nữa thì bạn thử với cách sau:

trinhqtoan
10-06-2012, 06:43 AM
cảm ơn câu trả lời của bạn, nhưng mình còn 1 số thắc mắc nhờ bạn giải đáp giúp :



Ý mình hỏi ở đây là vẫn trong trường hợp cài Ubuntu trước, rồi mới cài Window. Vì Window cài sau, nó ko tự can thiệp vào file boot của Ubuntu. Nên theo mình hiểu là bạn dùng luôn cái GParted đó để đổi ổ cài Win hay Ubuntu được khởi động. Nếu ko dùng cái GParted, mà vẫn dùng cài Partition Magic thì có chọn được ổ nào được khởi động như GParted ko ?




Cách của bạn, mình có đọc ở trên mạng, mình chưa làm, nhưng đọc qua thì nó chỉ hide Shortcut Icon trên desktop trên Ubuntu thôi, chứ ko hide được ko vào My Computer của Ubuntu. Đúng ko nhỉ ?

Trả lời giúp mình nhé, cảm ơn nhiều !

thanhquy
10-06-2012, 06:43 AM
Theo hướng dẫn từ saylinux, tớ dùng Gparted để chia lại ổ cứng, khởi động lại, bỏ đĩa CD Ubuntu vào cho nó Boot từ CD, load xong vào Ubuntu (trên CD nhá), Boot vào nhưng theo hướng dẫn của Saylinux tớ lại không kiếm ra cái Gparted, mở Terminal lên cài vào vậy:




Vậy là xong cái gparted, tớ gõ tiếp gparted để chạy nó luôn.

Đây rồi, cái ổ cứng của mình, có đúng duy nhất phân vùng cho Ubuntu, tớ bắt đầu chia lại, cái này giao diện GUI nên sử dụng cũng tương tự Partition Magic, tớ kéo nhỏ lại cái phân vùng này lại, rồi tạo một phân vùng mới trên khoảng trống thừa ra khi nãy.

http://www.box.net/shared/static/xvcuf14sgc.jpg

Xong rồi, Apply thôi, trong lúc chờ nó chạy tranh thủ lướt web phát

http://www.box.net/shared/static/3qwqppq804.png

Chạy xong rồi khởi động lại máy rồi bỏ đĩa Windows XP vô cài, à há, lúc cài Windows XP cũng nhận ra phân vùng Ext3, tớ chọn cái phân vùng mới tạo nằm dưới cái phân vùng chứa thằng Ubuntu, format xong rồi cài (lâu ghê, đọc sách mỏi con mắt mà cũng chưa xong)

Cuối cùn thì cũng cài xong Windows, lúc này thì boot lên không thấy bóng dáng thằng Ubuntu đâu cả. May mà có ghi lại cách khôi phục GRUB ở trang saylinux. Tớ lại bỏ đĩa Ubuntu vào rồi khởi động lại.

Vào Ubuntu, tớ mở Terminal lên rồi gõ vào



Grub khởi động rồi, tớ gõ tiếp



Enter phát thì nó hiện lên chữ

Rồi gõ tiếp



Xong, tớ gõ quit để thoát ra, restart lại máy. Xem nào, à, boot lên thấy Grub rồi, úi, mà cái Windows mới cài đâu? Có lẽ mình làm thiếu rồi, search google tiếp, à, vẫn là ở trang saylinux, có thêm một bài nữa. Rồi, làm theo xem, mở Terminal lên nữa, gõ tiếp


$ sudo gedit /boot/grub/menu.lst
Ái chà, nhập password xong thì nó hiện lên cái Gedit rối tinh, tớ chỉnh 2 mục:



Ừm phải add thêm cái phần khởi động Windows XP vào Grub chứ nhỉ, mà saylinux không có chỉ đoạn này, search tiếp. À há, thử vài keyword thì có kết quả, tớ tìm tiếp trong Gedit, tới mục:

Ở đây tớ gõ thêm vài dòng thông tin như sau:



Cái title là tiêu đề hiện lên lúc khởi động GRUB. Còn cái root tớ đặt là hd(0,1) vì lúc đầu tớ cài trên vị trí kế bên cái Ubuntu nên phân vùng khởi động Windows của tớ phải là 0,1 (0,0 là của Ubuntu mà).

Xong, tớ save lại cái file menu.lst này, khởi động lại. Rồi, boot vào nhấn Esc để chọn phân vùng khởi động. Hehe, hiện lên cái Windows XP rồi, vào thử xem. Ngon lành, hehe, cuối cùng đã hoàn tất, đi ngủ thôi, 3 giờ rồi.

Nguồn:
1. Google.
2. http://saylinux.wordpress.com/2007/11/04/huong-dan-phan-vung-ubuntu/
3. http://saylinux.wordpress.com/2007/05/19/cai_dat_lai_grub_cho_linux/
4. http://saylinux.wordpress.com/2007/04/26/cau_hinh_grub_chon_he_dieu_hanh_mac_dinh/

haivanphu08
10-06-2012, 06:43 AM
cảm ơn câu trả lời khá chi tiết của bạn ;)
Mình mới phải dùng Ubuntu nên còn nhiều thứ chưa biết, toàn tự mò. Nhân tiện nhìn thấy cái Swap Partition. Cái Swap Partition có phải đứng trước Partition cài Ubuntu ko nhỉ ? vì một lần mình để nó đằng sau thì cài bị lỗi, 1 lần khác cài Ubuntu rồi, mới tạo Swap Partion cũng ko thấy nhanh hơn gì cả 8-|

haivanphu08
10-06-2012, 06:43 AM
Thực chất của Swap Partition nó hoạt động giống như Pagefile của Windows vì vậy không quan trọng việc bạn đặt trước hay sau Partition cài Linux mà chỉ phụ thuộc vào lúc bạn cài thì bạn phải Flag cho đúng (swap flag tới Swap Partition).

Bạn sẽ cảm thấy khi có Swap Partition sẽ nhanh hơn 1 chút khi bạn sử dụng nhiều RAM.

Mình cài Ubuntu 8.04 thì thấy trong quá trình cài đặt họ có miêu tả rất chi tiết phần chia Partition. Bạn có thể down file dưới để đọc thêm về Ubuntu

Desktop: https://help.ubuntu.com/pdf/ubuntu/C/desktopguide.pdf
Server: https://help.ubuntu.com/6.10/pdf/ubuntu/C/serverguide.pdf
Tiếng Việt: http://hanoi.centre-linux.org/IMG/pdf/desktop-course-book-student_vi.pdf

davidminhtang
10-06-2012, 06:43 AM
Chắc ý của dungnt là ẩn cả vùng này chứ không phải chỉ ẩn partion trên desktop? vậy có cách nào để ẩn hẳn phân vùng đó trong ubuntu không? cảm ơn bạn rất nhiều