intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Đồ án "Tìm hiểu và cấu hình GRUB trên LINUX"

Chia sẻ: Vovan Duoc | Ngày: | Loại File: PDF | Số trang:63

324
lượt xem
98
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

LINUX là một hệ điều hành họ UNIX miễn phí dùng cho máy tính cá nhân đang được sử dụng rộng rãi hiện nay. Được viết vào những năm 1991 bởi Linus Tovard, hệ điều hành LINUX đã thu được những thành công nhất định. Hiện nay, LINUX ngày càng phát triển được đánh giá cao và thu hút nhiều sự quan tâm của các nhà tin học.

Chủ đề:
Lưu

Nội dung Text: Đồ án "Tìm hiểu và cấu hình GRUB trên LINUX"

  1. LUẬ V ẬN VĂN T TỐT NGH HIỆP Đề tà Tìm hiểu v cấu hình G ài: m và GRUB t trên LI INUX ............, Thán .... năm . ng .......
  2. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 1 [L I NÓI U] LINUX là m t h i u hành h UNIX mi n phí dùng cho máy tính cá nhân ang ư c s d ng r ng rãi hi n nay. ư c vi t vào nh ng năm 1991 b i Linus Tovard, h i u hành LINUX ã thu ư c nh ng thành công nh t nh. Hi n nay, LINUX ngày càng phát tri n ư c ánh giá cao và thu hút nhi u s quan tâm c a các nhà tin h c. Trong nh ng năm g n ây h i u hành LINUX t ng bư c ư c ưa vào s d ng t i Vi t Nam. nhi u t ch c, công ty và các d án tin h c ã ch n LINUX là môi trư ng phát tri n các ng d ng c a mình. Chính vì th nhu c u tìm hi u h i u hành này ang tr nên r t quan tr ng và c n thi t. Vi c tìm hi u và c u hình trong môi trư ng b t i kh i ng GRUB-2 H i u Hành như LINUX(UBUNTU 10.10) là công vi c r t khó khăn. GRUB là trình kh i ng máy tính – nó có nhi m v t i nhân và kh i ng h th ng Linux cũng như m t s h i u hành khác: FreeBSD, NetBSD, OpenBSD, GNU HURD, DOS, Windows 95, 98, Me, NT, 2000 và XP .Nó có trách nhi m chuy n t i và ki m soát t i m t ph n m m h i u hành h t nhân (ch ng h n như Linux hay GNU Hurd h t nhân).. Do ó vi c tìm hi u và c u hình Grub trên ubuntu 10.10 là r t quang tr ng trong linh ho t và thu n ti n cho vi c kh i ng H i u Hành Linux b i nó c bi t h u ích cho multiboot, h th ng phân vùng và nó th c s là b n p l n nh t kh i ng Linux và th c t b t kỳ h i u hành ngu n m nào khác ây là l n u tiên em i vào nghiên c u tài c a h i u hành LINUX(Tìm hi u và c u hình GRUB trên Linux) và qu th i gian có h n nên tài s không tránh kh i nh ng thi u sót. R t mong nh n ư c s óng góp ý ki n c a th y cô và b n bè. Em xin chân thành c m ơn s hư ng d n c a th y Nguy n T n Khôi và các b n bè ã giúp em hoàn thành tài này. GVHD: NGUY N T N KHÔI
  3. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 2 I. Gi i thi u v GRUB 1. T ng quát GRUB là trình kh i ng máy tính – nó có nhi m v t i nhân và kh i ng h th ng Linux cũng như m t s h i u hành khác: FreeBSD, NetBSD, OpenBSD, GNU HURD, DOS, Windows 95, 98, Me, NT, 2000 và XP... Năm 1995, Erich Boley thi t k GRUB. Năm 1999, Gordon Matzigkeit và Yoshinori K. Okuji k th a GRUB thành gói ph n m m GNU chính th c. 2. Tính năng • GRUB h tr nhi u h i u hành – b ng cách kh i ng tr c ti p nhân h i u hành ho c b ng cách n p chu i (chain-loading). • GRUB h tr nhi u h th ng t p tin: BSD FFS, DOS FAT16 và FAT32, Minix fs, Linux ext2fs và ext3fs, ReiserFS, JSF, XFS, và VSTa fs. • GRUB cung c p giao di n dòng l nh linh ho t l n giao di n th c ơn, ng th i cũng h tr t p tin c u hình. GVHD: NGUY N T N KHÔI
  4. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 3 II. Cài t GRUB 1. Nơi t i GRUB xu ng GRUB có s n ftp://alpha.gnu.org/gnu/grub ho c các mirror c a nó. Tên gói GRUB có d ng grub-version.tar.gz, thí d grub-0.93.tar.gz. 2. Cài t GRUB trong môi trư ng Linux C n phân bi t 2 bư c c a cài t GRUB: - Cài t trong môi trư ng h i u hành có th s d ng ư c GRUB - Cài t GRUB GRUB làm trình kh i ng máy tính. Sau khi t i v m t thư m c thích h p, gi i nén b ng l nh tar xzvf grub-0.93.tar.gz Sau ó: cd grub-0.93.tar.gz ./configure ( li t kê các tuỳ ch n khi biên d ch: ./configure --help | more ) Ti p theo: make make install Quá trình này s cài t shell grub, chương trình ki m tra multiboot mbchk, các hình nh GRUB (thông thư ng ư c cài vào thư m c /usr/share/grub/i386-pc), tài li u hư ng d n s d ng và trang man c a GRUB. III. S d ng GRUB (File c u hình) 1. Chu n b các t p tin c n thi t Có hai cách cài t GRUB làm trình kh i ng máy tính: dùng môi trư ng nguyên thu c a GRUB (cách này ư c khuyên dùng) ho c dùng môi trư ng h i u hành gi ng Unix. GVHD: NGUY N T N KHÔI
  5. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 4 Trư c khi cài GRUB làm trình kh i ng c n chép các t p tin stage1, stage2 và *stage1_5 t thư m c /usr/share/grub/i386-pc (thư m c hình nh) vào thư m c /boot/grub (thư m c kh i ng). Trong s các t p tin *stage1_5 có th ch c n chép t p tin thích h p v i h th ng t p tin c a /boot/grub, ch ng h n chép t p tin e2fs_stage1_5 n u thư m c này n m trên ext2 ho c ext3. Ngo i ra có th chép t p tin splash.xpm.gz vào thư m c /boot/grub. 2. Thu t ng dùng trong GRUB 2.1 Xác nh thi t b (thi t-b [,s -th -t -phân-vùng][,ch -cái-ti u-phân-vùng-bsd]) • [ ]: thông stuỳ ch n • thi t-b : fd (ĩa m m) ho c hd ( ĩa c ng, GRUB không phân bi t IDE hay SCSI hay RAID) theo sau b i m t con s bi u th s c a thi t b theo BIOS và b t u v i 0 ho c a . Ví d : • (hd0) • (0x80) (128) là tương ương nhau. • s -th -t -phân-vùng: là s th t c a phân vùng trên ĩa, cũng b t u v i 0, phân vùng m r ng b t u b ng 4, b t k s phân vùng sơ c p th c có trên ĩa. • ch -cái-ti u-phân-vùng-bsd: i di n cho ti u phân vùng c a BSD, như a hay e. Cú pháp t t g i ti u phân vùng BSD là (thi t-b [,ch -cái-ti u-phân-vùng-bsd]), trong trư ng h p này GRUB s tìm phân vùng PC u tiên ch a nhãn ĩa BSD, r i tìm ti u phân vùng ư c yêu c u. Thí d : • (hd0): toàn b ĩa th nh t (ho c MBR khi cài t GRUB) • (hd0,0): phân vùng th nh t trên ĩa c ng th nh t (ho c sector kh i ng c a phân vùng này khi cài GRUB) • (hd0,4): phân vùng m r ng th nh t trên ĩa c ng th nh t • (hd1,a): phân vùng BSD a trên ĩa c ng th hai; n u c n xác nh c th s PC slice nào ư c dùng, s d ng cú pháp như (hd1,0,a), n u b tr ng s PC slice, GRUB tìm PC slice u tiên có phân vùng BSD a • (fd0): ĩa m m th nh t GVHD: NGUY N T N KHÔI
  6. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 5 h th ng có 2 ĩa c ng IDE và 2 ĩa c ng SCSI, trình t kh i ng trong BIOS ư c thi t l p là "IDE trư c SCSI", GRUB s dùng các nhãn sau: • (hd0) ĩa c ng IDE th nh t • (hd1) ĩa c ng IDE th hai • (hd2) ĩa c ng SCSI th nh t • (hd3) ĩa c ng SCSI th hai Ngoài ra còn có thi t b ĩa m ng (nd) n u khi cài t GRUB có b t tính năng h tr m ng. Có th dùng ch c năng hoàn thành dòng l nh c a GRUB, ví d gõ root ( r i , GRUB s li t kê các ĩa, phân vùng, hay tên t p tin. 2.2 Xác nh t p tin Có 2 cách xác nh t p tin, b ng tên t p tin tuy t i ho c b ng danh sách kh i. • Tên t p tin tuy t i c a GRUB gi ng v i tên t p tin tuy t i Unix, dùng / làm d u phân cách thư m c. Ví d : (hd0,0)/boot/grub/menu.lst có nghĩa là t p tin (hd0,0)/boot/grub/menu.lst n m phân vùng u tiên c a ĩa c ng th nh t. N u b qua tên thi t b trong tên t p tin tuy t i, GRUB dùng thi t b root ng m nh. Thí d n u ã thi t l p thi t b root, ch ng h n như (hd1,0), b ng l nh root thì /boot/kernel có nghĩa là (hd0,1)/boot/kernel. • Danh sách kh i (block list) dùng xác nh t p tin không xu t hi n trong h th ng t p tin, ch ng h n như m t trình n p chu i (chainloader). Cú pháp: [offset]+ -dài[,offset]+ -dài]... Thí d 0+100,200+1,300+300 GRUB c các kh i 0 n 99, kh i 200 và kh i 300 n 599. N u b qua offset, GRUB s l y offset là 0. Cũng như trong cú pháp tên t p tin, n u danh sách kh i không ch a tên thi t b thì GRUB s dùng thi t b root c a GRUB. Thí d +1 khi thi t b root là (hd0,1) tương ng v i (hd0,1)+1. GVHD: NGUY N T N KHÔI
  7. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 6 L nh blocklist li t kê danh sách kh i c a t p tin, ví d : grub> blocklist (hd1,0)/vmlinuz (hd1,0)1322144+96,1322248+1227 có nghĩa là t p tin vmlinux, n m phân vùng th nh t c a ĩa c ng th hai, chi m 96 kh i k t kh i 1322144 và 1227 kh i k t kh i 1322248 – có th th y r ng t p tin này hơi b phân m nh. 3. Các t p tin hình nh c a GRUB GRUB bao g m m t s hình nh: 2 giai o n chính, các giai o n tuỳ ch n g i là Giai o n 1.5, và 2 hình nh kh i ng m ng. stage1 Giai o n 1, là m t hình nh chính dùng kh i ng GRUB, kích thư c 512 byte. stage2 Giai o n 2, là hình nh c t lõi c a GRUB. e2fs_stage1_5 fat_stage1_5 ffs_stage1_5 jfs_stage1_5 minix_stage1_5 reiserfs_stage1_5 vstafs_stage1_5 xfs_stage1_5 T t c các hình nh này ư c g i là Giai o n 1.5. nbrub pxebrub Là các hình nh kh i ng m ng. 4. Cơ ch kh i ng dùng trong GRUB Trên sector th nh t c a ĩa c ng ch a, ngoài b ng phân vùng, m t o n mã th c thi ư c là giai o n u tiên c a quá trình kh i ng máy tính, ho c o n mã IPL (initial program load). o n mã chu n này là cái mà l nh fdisk /mbr trên DOS t o ra. Khi thi t l p trong BIOS quy nh kh i ng t ĩa c ng ó, BIOS s trao quy n i u khi n cho IPL ho c o n mã giai o n m t. Khi o n mã chu n ư c n p, nó s quy t nh phân vùng nào là ch ng (active) và trao quy n i u khi n cho o n mã th c thi ư c n m trong ho c g n sector th nh t c a phân vùng ch ng. Nh ng gì x y ra ti p theo ph thu c vào h i u hành. các h i u hành DOS cũ, ph n c t lõi thi hành ư c c a h i u hành n m ngay t i v trí u tiên c a ĩa và ư c kh i ng tr c ti p t giai o n m t. Trong các trư ng h p i n hình hơn, m t chương trình kh i ng giai o n hai s ư c n p và n lư t nó s bi t nơi nào tìm nhân ho c các thành ph n c t lõi c a h i u hành và kh i ng chúng. Khi GRUB ho c m t trình kh i ng ư c cài t, o n mã c a trình kh i ng ó s thay th o n mã IPL chu n. Nó ph i v a v n trong 512 byte và còn ph i chia s chung v i b ng phân vùng. Khác bi t chính gi a m t trình kh i ng GVHD: NGUY N T N KHÔI
  8. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 7 và o n mã IPL chu n là quy n i u khi n s i âu ti p sau ó. Trong trư ng h p c a GRUB, quy n i u khi n s ư c trao cho trình Giai o n 2 (ho c Giai o n 1.5). Giai o n 1 ư c cài vào MBR ho c vào sector kh i ng c a phân vùng, còn Giai o n 2 ư c t trên m t h th ng t p tin. Giai o n 1.5 có th ư c cài trong m t h th ng t p tin (ch ng h n như phân vùng /boot), trong vùng kh i ng c a FFS ho c ReiserFS, và trong các sector ngay sau MBR vì Giai o n 1.5 nh và các sector ngay sau MBR thư ng không ư c s d ng. Kích thư c c a vùng này là s sector cho m i head tr i 1. Giai o n 1.5 ho c Giai o n 2 có th ư c t b t c nơi âu, và Giai o n 2 có th n p t p tin c u hình t b t c nơi âu trên ĩa c ng (t p tin c u hình không c n ph i ư c t trong m t h th ng t p tin). Vì v y t t c công vi c mà Giai o n 1 ph i làm là t i Giai o n 2 ho c Giai o n 1.5. Giai o n 1 mã hoá v trí c a Giai o n 2 (hay Giai o n 1.5) d ng danh sách kh i, nên nó không hi u b t c c u trúc h th ng t p tin nào. Vì GRUB h tr c ch CHS l n LBA nên Giai o n 1 trong GRUB, sau khi thăm dò thông s và ch truy c p c a ĩa c ng, ch t i sector u tiên c a Giai o n 2 (ho c Giai o n 1.5) và Giai o n 2 t nó t i ph n còn l i (t c là t i t a ch b t u c a nó c ng thêm 512 byte). Giai o n 1.5 là c u n i gi a stage1 và stage2, nghĩa là Giai o n 1.5 ư c Giai o n 1 n p và Giai o n 1.5 n p Giai o n 2. stage1 không hi u b t kì h thông t p tin nào nhưng *_stage1_5 hi u m t h th ng t p tin (ch ng h n e2fs_stage1_5 hi u ext2fs. Giai o n 1.5 cho phép Giai o n 2 có th ư c n p t m t h th ng t p tin b ng ư ng d n thông thư ng mà không c n ph i dùng danh sách kh i. Vì v y có th an toàn di chuy n v trí c a stage2 n m t nơi khác (ch ng h n như khi gi i phân m nh h th ng t p tin), ngay c sau khi GRUB ã ư c cài t. Gai o n 1 n p Giai o n 1.5 vào b nh n u c n. M t s ph n c ng c n bư c trung gian n p Giai o n 2, ch ng h n như khi phân vùng /boot n m v trí quá 1024 cylinder u c a c ng ho c khi s d ng ch LBA. 5. Cài GRUB trong môi trư ng nguyên thu c a GRUB 5.1 Cài GRUB dùng l nh setup setup [--force-lba] [--stage2=t p_tin_stage2_h h] [--prefix=thư_m c] thi t_b _cài_ t [thi t_b _hình_ nh] 6. Cài GRUB dùng l nh install install [--force-lba] [--stage2=t p_tin_stage2_h h] t p_tin_stage1 [d] thi t_b _ ích t p_tin_stage2 [ a_ch ] [p] [t p_tin_c u_hình] [t p_tin_c u_hình_th c] Chi ti t 2 l nh trên tham kh o t i: http://vnoss.org/docs/?id=2 GVHD: NGUY N T N KHÔI
  9. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 8 7. Cài GRUB trong môi trư ng h i u hành gi ng Unix 7.1 Cài GRUB dùng l nh grub-install Cách này hoàn toàn không ư c khuy n khích, vì có th máy tính s không th kh i ng ư c v i GRUB. Thí d , h u h t các h i u hành không cho GRUB bi t cách ánh x chính xác ĩa BIOS sang thi t b c a h i u hành, GRUB ch oán cách ánh x . Trong h u h t các trư ng h p thì quá trình này thành công, nhưng không luôn luôn như v y. Do ó GRUB cung c p t p tin ánh x do ngư i dùng nh nghĩa device.map; n u t p tin này cho th y ánh x sai b n c n ph i s a nó l i. N u không may ph i cài t GRUB trong môi trư ng h i u hành gi ng UNIX, g i l nh grub-install v i tư cách siêu ngư i dùng (root). Cách s d ng r t d dàng, b n ch c n ch nh m t i s v nơi cài t GRUB. i s có th là t p tin thi t b hay ĩa/phân vùng theo GRUB. Cú pháp: grub-install thi t_b _cài_ t Thí d : cài GRUB vào MBR c a ĩa IDE th nh t trong Linux: # grub-install /dev/hda N u ây cũng là ĩa BIOS th nh t: # grub-install 'hd(0)' M t thí d khác là khi có m t phân vùng kh i ng ư c gán t i /boot. Vì GRUB là m t trình n p kh i ng, nó không bi t gì v các i m gán, nên c n ch y l nh grub-install như sau: # grub-install --root-directory=/boot /dev/hda Như trên ã nói, vi c oán ĩa BIOS trong h i u hành gi ng UNIX là khá khó khăn. Vì v y, sau khi cài t, grub-install s nh c ngư i dùng ki m ra xem nó có oán úng các ánh x không. C n c n th n, vì n u k t qu xu t ra sai máy tính r t có th b n s g p r c r i khi kh i ng l i máy tính. Các tuỳ ch n c a l nh grub-install --help In tóm t t v các tuỳ ch n dòng l nh và thoát. --version In s phiên b n c a GRUB và thoát. --force-lba B t bu c GRUB dùng ch LBA. Ch dùng tuỳ ch n này n u BIOS không ho t ng ch LBA m c dù nó h tr ch LBA. --grub-shell=t p_tin Dùng t p_tin làm shell grub. B n có th thêm các tuỳ ch n tuỳ ý vào t p_tin sau tên t p tin, thí d : grub-install --grub-shell="grub –read-only" /dev/fd0 --recheck Ki m tra l i ánh x thi t b , ngay c khi /boot/grub/device.map ã t n t i. Nên dùng tuỳ ch n này m i khi thêm/tháo m t ĩa vào/ra kh i máy tính. Lưu ý r ng grub-install th c ch t là m t Bourne shell script và ch c năng th c s do shell grub th c hi n. Vì v y có th ch y grub tr c ti p cài GRUB, mà không c n grub-install. Nhưng không nên làm như v y tr khi b n r t quen thu c v i các y u t n i t i c a GRUB. Vi c cài m t trình n p kh i ng trong m t h i u hành ang ch y là c c kỳ nguy hi m. GVHD: NGUY N T N KHÔI
  10. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 9 8. Cài GRUB trong shell grub Cách này dùng l nh grub trong môi trư ng h i u hành. C n lưu ý là shell grub là trình mô ph ng – nó thay th các l i g i BIOS b ng các l i g i h th ng UNIX và các hàm libc, nó không ch y dư i môi trư ng nguyên thu , vì v y ôi khi nó ho t ng không chính xác, nh t là trong vi c ánh x gi a các ĩa BIOS và các thi t b h i u hành. Quá trình cài t dùng shell grub tương t như Giai o n 2 nguyên thu . B n c n c n th n v buffer cache. grub dùng thi t b thô thay vì h th ng t p tin mà h i u hành ang s d ng, vì v y có kh năng cache inconsistency nào ó gây hư h ng h th ng t p tin. L i khuyên là: • tháo gán trư c khi ch y grub, n u có th , các ĩa mà GRUB có th s vi t d li u lên. • gán ch ch - c n u không th tháo gán ĩa nhưng có th gán v i c ch - c. • ch c ch n r ng không có b t kì ho t ng ĩa nào trong khi ch y l nh grub n u ĩa b t bu c ph i gán v i c c-vi t. • kh i ng l i h i u hành càng s m càng t t. i u này có th không c n thi t n u các bư c trên ã ư c tuân th , nhưng kh i ng l i là cách an toàn nh t. Sau khi hoàn t t cài t, vi c nh p l nh quit là r t quan tr ng vì quit làm cho buffer cache tr nên consistent; ng n . N u mu n cài GRUB không tương tác, ch nh tuỳ ch n --batch dòng l nh. M t thí d ơn gi n: #!/bin/sh # Du`ng /usr/sbin/grub ne^'u o+? he^. tho^'ng cu~. /sbin/grub --batch /dev/null root (hd0,0) setup (hd0) quit EOT Các tuỳ ch n c a l nh grub: --help In tóm t t v các tuỳ ch n dòng l nh và thoát. --version In s phiên b n c a GRUB và thoát. --verbose In các thông i p verbose nh m m c ích g l i. --device-map=t p_tin Dùng t p tin ánh x thi t b t p_tin. GVHD: NGUY N T N KHÔI
  11. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 10 --no-floppy Không thăm dò ĩa m m. Tuỳ ch n này không có tác d ng n u tuỳ ch n --device- map ư c ch nh. --probe-second-floppy Thăm dò ĩa m m th hai. Shell grub không thăm dò nó n u tuỳ ch n này không ư c ch nh vì ôi khi nó c n th i gian lâu. Shell grub b qua tuỳ ch n này n u ã ch inh t p tin ánh x thi t b . --config-file=t p_tin c t p tin c u hình t p_tin thay vì /boot/grub/menu.lst. --boot-drive= _ ĩa Thi t l p ĩa kh i ng stage2 là _ ĩa. i s này là m t s nguyên (th p thân, bát phân hay th p l c phân). --install-partition=phân_vùng Thi t l p phân vùng kh i ng stage2 là phân_vùng. i s này là m t s nguyên (th p thân, bát phân hay th p l c phân). --no-config-file Không dùng t p tin c u hình. --no-curses Không dùng giao di n curses. --batch Tuỳ ch n này có cùng ý nghĩa như --no-config-file --no-curses. --read-only Không vi t vào b t c ĩa nào. Có th cài GRUB theo m t t p tin có s n ch a các thông s c n thi t cho l nh grub. Thí d có t p tin /etc/grub.conf như sau: root (hd0,4) install /grub/stage1 d (hd0) /grub/stage2 0x8000 (hd0,4)/grub/menu.lst quit Và b n v a hi u ch nh t p tin device.map, bây gi b n ph i cài l i GRUB: grub --batch --device-map=/boot/grub/device.map
  12. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 11 9. Kh i ng h th ng v i GRUB GRUB có 2 cách khác nhau kh i ng h th ng. M t cách là n p h i u hành tr c ti p, cách kia là n p chu i m t trình n p kh i ng khác, trình n p kh i ng này s n p h i u hành. Nói chung thì cách th nh t ư c ưa chu ng hơn vì không ph i cài hay duy trì trình kh i ng khác. Tuy nhiên ôi khi v n c n dùng cách th hai vì GRUB không h tr m i h i u hành v b n ch t, c bi t là các h i u hành thu c s h u c quy n. 9.1 Kh i ng h i u hành tr c ti p Nói chung GRUB có th kh i ng Linux, FreeBSD, NetBSD, OpenBSD, GNU HURD theo các bư c sau: • Quy nh thi t b root c a GRUB là ĩa nơi gi các hình nh h i u hành b ng l nh root. • T i h i u hành b ng l nh kernel, có th g n thêm các thông s cho nhân. • N u c n, t i initrd b ng l nh initrd ho c các mô- un b ng l nh module ho c modulenounzip. • Ch y l nh boot. 9.2 T i trình n p kh i ng khác kh i ng các h i u hành không ư c h tr , GRUB n p chu i m t trình n p kh i ng cho h i u hành ó. Thông thư ng, trình kh i ng ư c t sector kh i ng c a phân vùng cài t h i u hành. • Thi t l p thi t b root c a GRUB n phân vùng h i u hành b ng l nh rootnoverify grub> rootnoverify hd(0,0) • Thi t l p c active trong ph n vùng b ng l nh makeactive grub> makeactive • T i trình n p kh i ng b ng l nh chainloader grub> chainloader +1 +1 bi u th GRUB c m t sector k t nơi b t u c a phân vùng. • Ch y l nh boot GVHD: NGUY N T N KHÔI
  13. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 12 10. C u hình giao di n dòng l nh c n ph i gõ vài l nh kh i ng h i u hành. GRUB cũng cung c p giao di n th c ơn mà ch c n ch n m t m c là m i th ư c th c hi n kh i ng h i u hành. có th s d ng giao di n th c ơn c n ph i có t p tin c u hình menu.lst thư m c kh i ng. Khi h th ng ư c kh i ng, GRUB c n i dung c a t p tin c u hình. Không c n ph i cài GRUB l i m i khi thay i n i dung t p tin này. T p tin này m c nh n m thư m c /boot/grub, nhưng có th t b t c nơi âu cũng như có th t b t c tên gì cho nó. 10.1 Phân tích thí d v m t t p tin c u hình: T p tin này b t u b ng các thi t l p chung, các tuỳ ch n liên h n giao di n th c ơn. Các l nh này có th ư c t trư c b t c m c nào (b t u v i l nh title). ây là các dòng bình lu n. GRUB b qua các dùng b t u v i kí t # và các dòng tr ng. # Theo ma(.c ddi.nh, kho+?i ddo^.ng dde^` mu.c thu+' nha^'t default 0 m c th nh t (lưu ý là mb t u t 0 ch không ph i 1) s là l a ch n m c nh. # Tu+. ddo^.ng kho+?i ddo^.ng sau 30 gia^y timeout 30 GRUB s kh i ng t ng sau 30 giây, tr khi b ng t b i m t nh n phím. # Quay la.i dde^` mu.c thu+' hai fallback 1 N u vì b t c lí do nào mà m c m c nh không ho t ng, quay l i m c th hai. ph n nh nghĩa cho h i u hành, m i m c b t u b ng m t l nh c bi t title. Không có l nh boot cu i m c vì nó s t ng th c hi n n u GRUB n p thành công các l nh khác. GVHD: NGUY N T N KHÔI
  14. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 13 10.2 c i m c a t p tin c u hình: • các l nh c thù cho th c ơn ph i ư c dùng trư c các l nh khác • t p tin ph i nh d ng văn b n thu n tuý • # u dòng cho bi t ây ch là l i bình • các tuỳ ch n cách nhau b ng kho ng tr ng • s có th d ng th p phân ho c th p l c phân. S th p l c phân ph i kh i u b ng 0x, và phân bi t ch hoa-thư ng N u quá trình cài GRUB ã không quy nh t p tin c u hình, v n có th t i t p tin c u hình trong môi trư ng GRUB b ng l nh configfile, thí d : grub> configfile (fd0)/boot/grub/menu.lst 11. Giao di n ngư i dùng c a GRUB GRUB có c giao di n th c ơn ơn gi n ch n các m c ư c thi t l p s n t t p tin c u hình l n giao di n dòng l nh linh ho t cao th c hi n b t c các t h p l nh kh i ng nào theo ý mu n. 12. Giao di n dòng l nh Giao di n dòng l nh cung c p m t d u nh c và sau nó là vùng văn b n có th biên t p ư c gi ng m t dòng l nh trong Unix ho c DOS. M i dòng l nh ư c thi hành ngay l p t c sau khi nó ư c nh p vào. Các l nh này là m t ph n c a các dòng l nh có th dùng trong t p tin c u hình, v i cùng m t cú pháp. Dùng giao di n dòng l nh có th kh i ng các h i u hành không có trong th c ơn GRUB. GVHD: NGUY N T N KHÔI
  15. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 14 Khi gõ các l nh m t cách tương tác, n u con tr trong ho c trư c t u tiên trong dòng l nh, n phím (ho c ) s li t kê các l nh có s n, và n u con tr sau t u tiên, s li t kê các ĩa, phân vùng, và tên t p tin tuỳ vào tình hu ng. Lưu ý r ng không th dùng ch c năng hoàn thành dòng l nh trong h th ng t p tin TFTP vì b i vì TFTP không h tr li t kê tên t p tin vì lí do b o m t. Dùng l nh help c thông tin v m t l nh, ví d xem thông tin c a l nh root: help root 13. Giao di n th c ơn 14. Biên t p m t m c trong th c ơn biên t p m t m c trên th c ơn, u tiên n , sau ó ch n m c c n thay i b ng các phím con tr và n , khi ó các dòng l nh cho m c ó s xu t hi n. Ch n dòng c n i u ch nh b ng các phím con tr và n l n n a. Trong khi biên t p m t m c, n thay th dòng l nh cũ b ng dòng l nh v a i u ch nh, n u n m i thay i s ư c b qua. N u mu n thêm m t dòng m i vào m c kh i ng, n n u thêm vào sau dòng hi n t i ho c GVHD: NGUY N T N KHÔI
  16. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 15 n u thêm vào trư c dòng hi n t i. xoá m t dòng, n . GRUB không h tr hu b thao tác v a làm, nhưng có th làm i u tương t như v y b ng cách quay tr l i th c ơn chính. Sau khi i u ch nh xong, n kh i ng v i m c ó. 15. Giao di n th c ơn n N u thi t b cu i câm ho c GRUB ư c yêu c n che d u giao di n th c ơn b ng l nh hiddenmenu, GRUB s không hi n th giao di n th c ơn và t ng kh i ng m c m c nh, tr khi b ng t b ng cách n phím . Khi ng t th i gian ch và thi t b cu i câm, GRUB quay tr l i giao di n dòng l nh. 16. M t s l nh trong GRUB 16.1 Các l nh ch dùng cho th c ơn default s Thi t l p m c nh cho m c s s . Vi c ánh s b t u t 0, và m c s 0 là m c nh n u l nh này không ư c dùng. Có th ch nh saved thay vì m t con s . Khi ó, m c m c nh là m c ư c lưu b ng l nh savedefault. fallback s N u m c m c nh có l i, ngay l p t c chuy n qua m c s thay vì ch ngư i dùng thao tác. Cách ánh s gi ng như l nh default. Có th thi t l p nhi u hơn m t fallback. hiddenmenu Không hi n th th c ơn trên thi t b u cu i và m c m c nh s ư c kh i ng sau khi h t th i gian ch . Ngư i dùng v n có th yêu c u hi n th th c ơn b ng cách n trư c khi th i gian ch h t. timeout gy Thi t l p th i gian ch , tính b ng gy giây, trư c khi t ng kh i ng vào m c m c nh. title tên ... B t u m t m c kh i ng m i; n i dung c a ph n còn l i c a dòng này, b t u b ng kí t u tiên không ph i là kho ng tr ng, ư c l y làm tên cho m c ó. III.16.1.1 Các l nh chung Các l nh này có th ư c dùng trong th c ơn l n dòng l nh. color bình_thư ng [tô_sáng] Thay i màu th c ơn. Màu bình_thư ng ư c dùng cho h u h t các dòng trong th c ơn, và màu tô_sáng ư c dùng tô sáng dòng mà con tr ang ch n. N u không dùng tô_sáng, màu ngư c l i c a b nh_thư ng ư c dùng tô sáng. nh d ng c a m t màu là ti n_c nh/h u_c nh. ti n_c nh và h u_c nh là các tên màu tư ng trưng. GVHD: NGUY N T N KHÔI
  17. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 16 Tên màu tư ng trưng ph i là m t trong các tên sau: • black • blue • green • cyan • red • magenta • brown • light-gray Nh ng tên bên dư i ch dùng ư c cho ti n c nh. • dark-gray • light-blue • light-green • light-cyan • light-red • light-magenta • yellow • white Nhưng ch có 8 tên u có th dùng cho h u_c nh. N u mu n ch p nháy màu ti n c nh, dùng ti n t blink- cho ti n_c nh. L nh này dùng ư c trong t p tin c u hình và dòng l nh. Thí d trong t p tin c u hình: # Thie^'t la^.p ma`u ma(.c ddi.nh. color light-gray/blue black/light-gray # Thay ddo^?i ma`u. title OS-BS like color magenta/blue black/magenta device _ ĩa t p_tin Trong shell grub, ch nh t p tin t p_tin như là ĩa th c s cho ĩa BIOS _ ĩa. Có th dùng l nh này t o hình nh ĩa, và/ho c s a ch a các ĩa ư c GRUB oán khi GRUB không xác nh ư c chúng m t cách chính xác, như: grub> device (fd0) /floppy-image grub> device (hd0) /dev/sd0 L nh này ch dùng ư c shell grub. hide phân_vùng Che d u phân vùng phân_vùng b ng cách thi t l p bit n trong mã lo i phân vùng c a nó. i u này có l i khi kh i ng DOS hay Windows và nhi u phân vùng FAT sơ c p t n t i trên m t ĩa. GVHD: NGUY N T N KHÔI
  18. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 17 password [--md5] m t_kh u [t p_tin_c u_hình_m i] N u ư c dùng trong ph n u tiên c a m t t p tin th c ơn, nó s vô hi u hoá m i ho t ng i u khi n biên t p tương tác (b ph n biên t p m c th c ơn và dòng l nh) và các m c ư c b o v b ng l nh lock. N u m t kh u m t_kh u ư c nh p, nó s t i t p_tin_c u_hình_m i làm t p tin c u hình m i và kh i ng l i GRUB Giai o n 2 n u t p_tin_c u_hình_m i ư c ch nh. N u không, GRUB s ch m khoá các l nh c quy n. L nh này cũng có th ư c dùng trong ph n script, khi ó nó s h i m t kh u trư c khi ti p t c. Tuỳ ch n --md5 b o GRUB r ng m t_kh u ư c mã hoá v i md5crypt. setkey [ n_phím t _phím] Thay i ánh x bàn phím. Phím t _phím ư c ánh x sang n_phím. N u không có i s nó s thi t l p l i ánh x bàn phím. Lưu ý r ng l nh này không hoán i các phím. N u mu n hoán i các phím, ch y l nh này m t l n n a v i thông s hoán i, như: grub> setkey capslock control grub> setkey control capslock M t phím ph i là m t ch cái, m t con s , ho c m t trong các kí hi u sau: escape, exclam, at, numbersign, dollar, percent, caret, ampersand, asterisk, parenleft, parenright, minus, underscore, equal, plus, backspace, tab, bracketleft, braceleft, bracketright, braceright, enter, control, semicolon, colon, quote, doublequote, backquote, tilde, shift, backslash, bar, comma, less, period, greater, slash, question, alt, space, capslock, FX (X là m t ch s ), và delete. unhide phân_vùng Kh n phân vùng phân_vùng b ng cách xoá bit n trong mã lo i phân vùng. L nh này có ích khi kh i ng DOS ho c Windows và có nhi u phân vùng sơ c p trên m t ĩa c ng. 17. Các l nh dùng dòng l nh và m c th c ơn Các l nh này dùng ư c dòng l nh và m c th c ơn. Có th ch y l nh help xem thông tin v các l nh này. blocklist t p_tin In kí hi u danh sách kh i c a t p tin t p_tin. boot Kh i ng h i u hành/trình n p chu i ã ư c n p. Ch c n thi t khi ch y trên dòng l nh tương tác y (nó ư c hi u ng m cu i m c th c ơn). cat t p_tin Hi n th n i dung t p tin t p_tin. L nh này có th giúp xác nh úng âu là thư m c g c c a h i u hành: grub> cat /etc/fstab chainloader [--force] t p_tin N p chu i t p_tin. N u ch nh tuỳ ch n --force, nó s cư ng b c n p t p_tin, cho dù nó có ch kí úng hay không. i u này giúp n p m t trình n p kh i ng khi m khuy t (như kh i ng SCO UnixWare 7.1). GVHD: NGUY N T N KHÔI
  19. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 18 cmp t p_tin1 t p_tin2 So sánh t p tin t p_tin1 v i t p_tin2. N u chúng khác nhau v kích thư c, in các kích thư c như sau: Differ in size: 0x1234 [foo], 0x4321 [bar] N u kích thư c b ng nhau nhưng các byte m t offset khác nhau, in các byte như sau: Differ at the offset 777: 0xbe [foo], 0xef [bar] N u chúng hoàn toàn gi ng nhau, không in gì c . configfile t p_tin T i t p_tin làm t p tin c u hình. displaymem Hi n th thông tin v b nh ang ư c s d ng, bao g m t t c các vùng c a RAM v t lý ư c cài t, d a trên thông tin t BIOS. Giúp xác nh h th ng có bao nhiêu RAM dành cho kh i ng. embed stage1_5 thi t_b Ghi Giai o n 1.5 stage1_5 vào các sector sau MBR n u thi t_b là m t ĩa, ho c vào vùng c a trình kh i ng n u thi t_b là m t phân vùng FFS ho c phân vùng ReiserFS. In con s các sector chi m b i stage1_5, n u thành công. Thông thư ng không c n ch y l nh này tr c ti p. find tên_t p_tin Tìm tên t p tin tên_t p_tin trong t t c các phân vùng và in danh sách các thi t bi ch a t p tin. Tên t p tin tên_t p_tin nên là m t tên t p tin tuy t i như /boot/grub/stage1. halt --no-apm T t máy tính. N u tuỳ ch n --no-apm ư c ch nh, không th c hi n l i g i APM BIOS; n u không, máy tính dùng APM khi t t. help --all [m u ...] Hi n th thông tin v các l nh ư c cài s n. N u không ch nh m u, l nh này s cho ra miêu t ng n c a h u h t các l nh có s n. N u ch nh tuỳ ch n --all, các miêu t ng n cho các l nh hi m dùng cũng ư c trình bày. N u ch nh m u, nó s trình bày thông tin dài hơn v m i l nh kh p v i các m u ó. initrd t p_tin ... N p ĩa RAM ban u cho hình nh kh i ng theo nh d ng Linux và thi t l p các thông s thích h p cho vùng thi t l p Linux trong b nh . install ã ư c c p trên. ioprobe _ ĩa Dò tìm c ng I/O dùng cho ĩa _ ĩa. L nh này s li t kê các c ng I/O trên màn hình. kernel [--type=lo i] [--no-mem-option] t p_tin ... N p hình nh kh i ng (Multiboot a.out ho c ELF, Linux zImage ho c bzImage, FreeBSD a.out, NetBSD a.out, v.v...) t t p_tin. Ph n còn l i c a dòng ư c chuy n nguyên văn như dòng l nh nhân. B t c mô- un nào cũng có th ư c n p sau khi dùng l nh này. L nh này cũng ch p nh n tuỳ ch n --type ch nh c th lo i nhân c a t p_tin. i s lo i ph i là m t trong các th sau: netbsd, freebsd, GVHD: NGUY N T N KHÔI
  20. TÌM HI U VÀ C U HÌNH GRUB TRÊN LINUX Trang- 19 openbsd, linux, biglinux, và multiboot. Tuy nhiên, ch c n xác nh lo i nhân khi n p nhân NetBSD ELF vì GRUB có th t ng xác nh lo i nhân trong các trư ng h p khác m t cách khá an toàn. Tuỳ ch n --no-mem-option ch hi u qu trên Linux. N u ch nh tuỳ ch n này, GRUB không chuy n tuỳ ch n mem= n nhân. lock Ngăn c n ngư i dùng thông thư ng thi hành các m c th c ơn m t cách tuỳ ý. l nh này th c s có tác d ng ph i dùng kèm v i l nh password. L nh này ư c dùng trong th c ơn, như thí d sau: title DDe^` mu.c na`y ddu+o+.c ba?o ve^. lock root (hd0,a) kernel /no-security-os makeactive Thi t l p phân vùng ch ng (active) trên ĩa root cho thi t b root c a GRUB. L nh này ch gi i h n (do ch có ý nghĩa) cho các phân vùng PC sơ c p trên ĩa c ng. map t _ _ ĩa n_ _ ĩa Ánh x ĩa t _ _ ĩa n ĩa n_ _ ĩa. i u này c n thi t khi n p chu i m t s h i u hành, thí d như DOS, n u h i u hành ó n m ĩa không ph i là ĩa th nh t. Thí d : grub> map (hd0) (hd1) grub> map (hd1) (hd0) Thí d này chuy n i tr t t gi a cúng th nh t và c ng th hai. md5crypt Nh c nh p m t kh u và mã hoá nó d ng MD5. M t kh u ư c mã hoá có th dùng v i l nh password. module t p_tin ... T i mô- un kh i ng t p_tin cho hình nh kh i ng nh d ng Multiboot . Ph n còn l i c a dòng ư c chuy n như là dòng l nh mô- un, gi ng như l nh kernel. Hình nh nhân Multiboot ph i ư c n p trư c khi n p b t kì mô- un nào. modulenounzip t p_tin ... Gi ng như module, ngo i tr vi c gi i nén t ng b b t ho t. pause thông_ i p ... In thông_ i p, r i ch cho n khi m t phím ư c n. Lưu ý r ng n u t (mã ASCII 7) trong thông i p thì loa s phát ra âm thanh bíp chu n, có ích khi nh c ngư i dùng thay i ĩa m m. quit Thoát shell grub. L nh này ch dùng ư c trong shell grub. reboot Kh i ng l i máy tính. root thi t_b [hdbias] Thi t l p thi t b root hi n t i sang thi t b thi t_b , sau ó gán (mount) nó l y thông tin v kích thư c phân vùng ( chuy n nhãn phân vùng trong ES:ESI, ư c dùng b i m t s trình kh i ng theo ki u n p chu i), lo i ĩa BSD ( kh i ng nhân BSD dùng nh d ng nguyên thu c a chúng), và xác nh chính xác phân vùng PC nơi t các ti u phân vùng BSD. Thông s tuỳ ch n hdbias là m t s cho nhân BSD bi t con s ĩa BIOS là bao nhiêu trên các controller trư c GVHD: NGUY N T N KHÔI
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2