Professional Documents
Culture Documents
Cau Hinh Grub Chuyen de 2 0694
Cau Hinh Grub Chuyen de 2 0694
Cau Hinh Grub Chuyen de 2 0694
Trang- 1
[L I NI
U]
LINUX l m t h i u hnh h UNIX mi n ph dng cho my tnh c nhn ang c s d ng r ng ri hi n nay. c vi t vo nh ng nm 1991 b i Linus Tovard, h i u hnh LINUX thu c nh ng thnh cng nh t nh. Hi n nay, LINUX ngy cng pht tri n c nh gi cao v thu ht nhi u s quan tm c a cc nh tin h c. Trong nh ng nm g n y h i u hnh LINUX t ng b c c a vo s d ng t i Vi t Nam. nhi u t ch c, cng ty v cc d n tin h c ch n LINUX l mi tr ng pht tri n cc ng d ng c a mnh. Chnh v th nhu c u tm hi u h i u hnh ny ang tr nn r t quan tr ng v c n thi t. Vi c tm hi u v c u hnh trong mi tr ng b t i kh i ng GRUB-2 H i u Hnh nh LINUX(UBUNTU 10.10) l cng vi c r t kh khn. GRUB l trnh kh i ng my tnh n c nhi m v t i nhn v kh i ng h th ng Linux cng nh m t s h i u hnh khc: FreeBSD, NetBSD, OpenBSD, GNU HURD, DOS, Windows 95, 98, Me, NT, 2000 v XP .N c trch nhi m chuy n t i v ki m sot t i m t ph n m m h i u hnh h t nhn (ch ng h n nh Linux hay GNU Hurd h t nhn).. Do vi c tm hi u v c u hnh Grub trn 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 Hnh Linux b i n c bi t h u ch cho multiboot, h th ng phn vng 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 hnh ngu n m no khc y l l n u tin em i vo nghin c u ti c a h i u hnh LINUX(Tm hi u v c u hnh GRUB trn Linux) v qu th i gian c h n nn ti s khng trnh kh i nh ng thi u st. R t mong nh n c s ng gp ki n c a th y c v b n b. Em xin chn thnh c m n s h ng d n c a th y Nguy n T n Khi v cc b n b gip em hon thnh ti ny.
GVHD:
NGUY N T N KHI
Trang- 2
I. Gi i thi u v GRUB
1. T ng qut
GRUB l trnh kh i ng my tnh n c nhi m v t i nhn v kh i ng h th ng Linux cng nh m t s h i u hnh khc: FreeBSD, NetBSD, OpenBSD, GNU HURD, DOS, Windows 95, 98, Me, NT, 2000 v XP...
Nm 1995, Erich Boley thi t k GRUB. Nm 1999, Gordon Matzigkeit v Yoshinori K. Okuji k th a GRUB thnh gi ph n m m GNU chnh th c.
2.
Tnh nng
GRUB h tr nhi u h i u hnh b ng cch kh i ng tr c ti p nhn h i u hnh ho c b ng cch 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 dng l nh linh ho t l n giao di n th c n, ng th i cng h tr t p tin c u hnh.
GVHD:
NGUY N T N KHI
Trang- 3
II.
1.
Ci
t GRUB
Ni t i GRUB xu ng
2.
Ci
GRUB lm trnh kh i
Sau :
cd grub-0.93.tar.gz ./configure
( )
Ti p theo:
make make install
Qu trnh ny s ci t shell grub, chng trnh ki m tra multiboot mbchk, cc hnh nh GRUB (thng th ng c ci vo th m c /usr/share/grub/i386-pc), ti li u h ng d n s d ng v trang man c a GRUB.
III.
1.
C hai cch ci t GRUB lm trnh kh i ng my tnh: dng mi tr ng nguyn thu c a GRUB (cch ny c khuyn dng) ho c dng mi tr ng h i u hnh gi ng Unix.
GVHD:
NGUY N T N KHI
Trang- 4
Tr c khi ci GRUB lm trnh kh i ng c n chp cc t p tin stage1, stage2 v *stage1_5 t th m c /usr/share/grub/i386-pc (th m c hnh nh) vo th m c /boot/grub (th m c kh i ng). Trong s cc t p tin *stage1_5 c th ch c n chp t p tin thch h p v i h th ng t p tin c a /boot/grub, ch ng h n chp t p tin e2fs_stage1_5 n u th m c ny n m trn ext2 ho c ext3. Ngo i ra c th chp t p tin splash.xpm.gz vo th m c /boot/grub.
2.
2.1 Xc
tu ch n a m m) ho c hd ( a c ng, GRUB khng phn 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 tng ng nhau.
a, cng b t u v i 0, phn vng m r ng b t u b ng 4, b t k s phn vng s c p th c c trn a. ch -ci-ti u-phn-vng-bsd: i di n cho ti u phn vng c a BSD, nh a hay e.
s -th -t -phn-vng: l s th t c a phn vng trn
C php t t g i ti u phn vng BSD l (thi t-b [,ch -ci-ti u-phn-vng-bsd]), trong tr ng h p ny GRUB s tm phn vng PC u tin ch a nhn a BSD, r i tm ti u phn vng c yu c u. Th d :
a th nh t (ho c MBR khi ci t GRUB) vng th nh t trn a c ng th nh t (ho c sector kh i ng c a phn vng ny khi ci GRUB) (hd0,4): phn vng m r ng th nh t trn a c ng th nh t (hd1,a): phn vng BSD a trn a c ng th hai; n u c n xc nh c th s PC slice no c dng, s d ng c php nh (hd1,0,a), n u b tr ng s PC slice, GRUB tm PC slice u tin c phn vng BSD a (fd0): a m m th nh t
(hd0): ton b (hd0,0): phn
GVHD:
NGUY N T N KHI
Trang- 5
ng trong BIOS c
a c a c a c a c
nh t hai nh t hai
Ngoi ra cn c thi t b a m ng (nd) n u khi ci t GRUB c b t tnh nng h tr m ng. C th dng ch c nng hon thnh dng l nh c a GRUB, v d g root ( r i <TAB>, GRUB s li t k cc a, phn vng, hay tn t p tin.
2.2 Xc
C 2 cch xc
nh t p tin
nh t p tin, b ng tn t p tin tuy t i ho c b ng danh sch kh i. i Unix, dng / lm
c ngha l t p tin (hd0,0)/boot/grub/menu.lst n m phn vng u tin c a a c ng th nh t. N u b qua tn thi t b trong tn t p tin tuy t i, GRUB dng
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 ngha l (hd0,1)/boot/kernel.
Danh sch kh i (block list) dng xc nh t p tin khng xu t hi n trong h th ng t p tin, ch ng h n nh m t trnh n p chu i (chainloader). C php:
[offset]+ -di[,offset]+ -di]...
Th d
0+100,200+1,300+300
GRUB
c cc kh i 0
n 599.
N u b qua offset, GRUB s l y offset l 0. Cng nh trong c php tn t p tin, n u danh sch kh i khng ch a tn thi t b th GRUB s dng thi t b root c a GRUB. Th d +1 khi thi t b root l (hd0,1) tng ng v i (hd0,1)+1.
GVHD:
NGUY N T N KHI
Trang- 6
3.
GRUB bao g m m t s hnh nh: 2 giai o n chnh, cc giai o n tu ch n g i l Giai o n 1.5, v 2 hnh nh kh i ng m ng.
stage1
kh i
L cc hnh nh kh i
ng m ng.
4.
C ch kh i
Trn sector th nh t c a a c ng ch a, ngoi b ng phn vng, m t o n m th c thi c l giai o n u tin c a qu trnh kh i ng my tnh, ho c o n m IPL (initial program load). o n m chu n ny l ci m l nh fdisk /mbr trn 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 phn vng no 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 phn vng ch ng. Nh ng g x y ra ti p theo ph thu c vo h i u hnh. cc h i u hnh DOS c, ph n c t li thi hnh c c a h i u hnh n m ngay t i v tr u tin c a a v c kh i ng tr c ti p t giai o n m t. Trong cc tr ng h p i n hnh hn, m t chng trnh kh i ng giai o n hai s c n p v n l t n s bi t ni no tm nhn ho c cc thnh ph n c t li c a h i u hnh v kh i ng chng. Khi GRUB ho c m t trnh kh i ng c ci t, o n m c a trnh kh i ng s thay th o n m IPL chu n. N ph i v a v n trong 512 byte v cn ph i chia s chung v i b ng phn vng. Khc bi t chnh gi a m t trnh kh i ng
GVHD:
NGUY N T N KHI
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 trnh Giai o n 2 (ho c Giai o n 1.5).
Giai o n 1 c ci vo MBR ho c vo sector kh i ng c a phn vng, cn Giai o n 2 c t trn m t h th ng t p tin. Giai o n 1.5 c th c ci trong m t h th ng t p tin (ch ng h n nh phn vng /boot), trong vng kh i ng c a FFS ho c ReiserFS, v trong cc sector ngay sau MBR v Giai o n 1.5 nh v cc sector ngay sau MBR th ng khng c s d ng. Kch th c c a vng ny 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 ni u, v Giai o n 2 c th n p t p tin c u hnh t b t c ni u trn a c ng (t p tin c u hnh khng c n ph i c t trong m t h th ng t p tin). V v y t t c cng vi c m Giai o n 1 ph i lm 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 sch kh i, nn n khng hi u b t c c u trc h th ng t p tin no. V GRUB h tr c ch CHS l n LBA nn Giai o n 1 trong GRUB, sau khi thm d thng s v ch truy c p c a a c ng, ch t i sector u tin c a Giai o n 2 (ho c Giai o n 1.5) v Giai o n 2 t n t i ph n cn l i (t c l t i t a ch b t u c a n c ng thm 512 byte). Giai o n 1.5 l c u n i gi a stage1 v stage2, ngha 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 khng hi u b t k h thng t p tin no nhng *_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 php Giai o n 2 c th c n p t m t h th ng t p tin b ng ng d n thng th ng m khng c n ph i dng danh sch kh i. V v y c th an ton di chuy n v tr c a stage2 n m t ni khc (ch ng h n nh khi gi i phn m nh h th ng t p tin), ngay c sau khi GRUB c ci t. Gai o n 1 n p Giai o n 1.5 vo 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 phn vng /boot n m v tr qu 1024 cylinder u c a c ng ho c khi s d ng ch LBA.
5.
6.
install [--force-lba] [--stage2=t p_tin_stage2_h h] t p_tin_stage1 [d] t p_tin_stage2 [ a_ch ] [p] [t p_tin_c u_hnh] [t p_tin_c
Trang- 8
7.
Ci GRUB trong mi tr ng h
i u hnh gi ng Unix
Th d : ci GRUB vo MBR c a
# grub-install /dev/hda
N u y cng l
# grub-install 'hd(0)'
a BIOS th nh t:
M t th d khc l khi c m t phn vng kh i ng c gn t i /boot. V GRUB l m t trnh n p kh i ng, n khng bi t g v cc i m gn, nn c n ch y l nh grub-install nh sau:
# grub-install --root-directory=/boot /dev/hda
Nh trn ni, vi c on a BIOS trong h i u hnh gi ng UNIX l kh kh khn. V v y, sau khi ci t, grub-install s nh c ng i dng ki m ra xem n c on ng cc nh x khng. C n c n th n, v n u k t qu xu t ra sai my tnh r t c th b n s g p r c r i khi kh i ng l i my tnh.
Cc tu ch n c a l nh grub-install
--help
In tm t t v cc tu ch n dng l nh v thot.
--version
t n t i. Nn dng tu ch n ny m i khi thm/tho m t a vo/ra kh i my tnh. Lu r ng grub-install th c ch t l m t Bourne shell script v ch c nng th c s do shell grub th c hi n. V v y c th ch y grub tr c ti p ci GRUB, m khng c n grub-install. Nhng khng nn lm nh v y tr khi b n r t quen thu c v i cc y u t n i t i c a GRUB. Vi c ci m t trnh n p kh i ng trong m t h i u hnh ang ch y l c c k nguy hi m.
GVHD:
NGUY N T N KHI
Trang- 9
8.
C n lu l shell grub l trnh m ph ng n thay th cc l i g i BIOS b ng cc l i g i h th ng UNIX v cc hm libc, n khng ch y d i mi tr ng nguyn thu , v v y i khi n ho t ng khng chnh xc, nh t l trong vi c nh x gi a cc a BIOS v cc thi t b h i u hnh. Qu trnh ci t dng shell grub tng t nh Giai o n 2 nguyn thu . B n c n c n th n v buffer cache. grub dng thi t b th thay v h th ng t p tin m h i u hnh ang s d ng, v v y c kh nng cache inconsistency no gy h h ng h th ng t p tin. L i khuyn l:
tho gn tr c khi ch y grub, n u c th , cc a m GRUB c th s vi t d li u ln. gn ch ch - c n u khng th tho gn a nhng c th gn v i c ch c. ch c ch n r ng khng c b t k ho t ng a no trong khi ch y l nh grub n u a b t bu c ph i gn v i c c-vi t. kh i ng l i h i u hnh cng s m cng t t. i u ny c th khng c n thi t n u cc b c trn c tun th , nhng kh i ng l i l cch an ton nh t.
Sau khi hon t t ci t, vi c nh p l nh quit l r t quan tr ng v quit lm cho buffer cache tr nn consistent; ng n <C-c>.
nh tu ch n --batch
dng l nh. M t
Cc tu ch n c a l nh grub:
--help
In tm t t v cc tu ch n dng l nh v thot.
--version
In cc thng i p verbose nh m m c ch g l i.
--device-map=t p_tin
GVHD:
NGUY N T N KHI
Trang- 10
Thm d a m m th hai. Shell grub khng thm d n n u tu ch n ny khng c ch nh v i khi n c n th i gian lu. Shell grub b qua tu ch n ny n u ch inh t p tin nh x thi t b .
--config-file=t p_tin
Thi t l p phn vng kh i ng stage2 l phn_vng. (th p thn, bt phn hay th p l c phn).
--no-config-file
Khng vi t vo b t c a no. C th ci GRUB theo m t t p tin c s n ch a cc thng 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, by gi b n ph i ci l i GRUB: grub --batch --device-map=/boot/grub/device.map </etc/grub.conf Th d b n c t p tin /etc/grubfd.conf dng ci GRUB vo a m m:
# # /etc/grubfd.conf ta.o ddi~a me^`m kho+?i ddo^.ng # # DDe^? ca`i grub va`o ddi~a me^`m, nha^.p le^.nh sau: # grep -v ^# /etc/grubfd.conf | grub --batch # root (fd0) install /boot/grub/stage1 d (fd0) (fd0)/boot/grub/stage2 0x8000 p (fd0)/boot/grub/menu.lst quit
B n dng l nh sau
GVHD:
NGUY N T N KHI
Trang- 11
9.
Kh i
ng h th ng v i GRUB
GRUB c 2 cch khc nhau kh i ng h th ng. M t cch l n p h i u hnh tr c ti p, cch kia l n p chu i m t trnh n p kh i ng khc, trnh n p kh i ng ny s n p h i u hnh. Ni chung th cch th nh t c a chu ng hn v khng ph i ci hay duy tr trnh kh i ng khc. Tuy nhin i khi v n c n dng cch th hai v GRUB khng h tr m i h i u hnh v b n ch t, c bi t l cc h i u hnh thu c s h u c quy n.
9.1 Kh i
ng h
i u hnh tr c ti p
ng Linux, FreeBSD, NetBSD, OpenBSD, GNU HURD
Quy nh thi t b root c a GRUB l a ni gi cc hnh nh h i u hnh b ng l nh root. T i h i u hnh b ng l nh kernel, c th g n thm cc thng s cho nhn. N u c n, t i initrd b ng l nh initrd ho c cc m- un b ng l nh module ho c modulenounzip. Ch y l nh boot.
9.2 T i trnh n p kh i
ng khc
kh i ng cc h i u hnh khng c h tr , GRUB n p chu i m t trnh n p kh i ng cho h i u hnh . Thng th ng, trnh kh i ng c t sector kh i ng c a phn vng ci t h i u hnh.
n phn vng h
i u hnh b ng l nh
T i trnh n p kh i
grub> chainloader +1
+1
ng b ng l nh chainloader
bi u th GRUB
c m t sector k t ni b t
u c a phn vng.
Ch y l nh boot
GVHD:
NGUY N T N KHI
Trang- 12
10. C u hnh
giao di n dng l nh c n ph i g vi l nh kh i ng h i u hnh. GRUB cng 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 hnh.
c th s d ng giao di n th c n c n ph i c t p tin c u hnh 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 hnh. Khng c n ph i ci GRUB l i m i khi thay i n i dung t p tin ny. T p tin ny m c nh n m th m c /boot/grub, nhng c th t b t c ni u cng nh c th t b t c tn g cho n.
m c th nh t (lu l GRUB s kh i ng t
mb t
u t 0 ch khng ph i 1) s l l a ch n m c
nh.
N u v b t c l do no m m c m c nh khng ho t ng, quay l i m c th hai. ph n nh ngha cho h i u hnh, m i m c b t u b ng m t l nh c bi t title. Khng c l nh boot cu i m c v n s t ng th c hi n n u GRUB n p thnh cng cc l nh khc.
GVHD:
NGUY N T N KHI
Trang- 13
10.2
c i m c a t p tin c u hnh:
cc l nh c th cho th c n ph i c dng tr c cc l nh khc t p tin ph i nh d ng vn b n thu n tu # u dng cho bi t y ch l l i bnh cc tu ch n cch nhau b ng kho ng tr ng s c th d ng th p phn ho c th p l c phn. S th p l c phn ph i kh i b ng 0x, v phn bi t ch hoa-th ng
N u qu trnh ci GRUB khng quy nh t p tin c u hnh, v n c th t i t p tin c u hnh trong mi tr ng GRUB b ng l nh configfile, th d :
grub> configfile (fd0)/boot/grub/menu.lst
GVHD:
NGUY N T N KHI
Trang- 14
Khi g cc l nh m t cch tng tc, n u con tr trong ho c tr c t u tin trong dng l nh, n phm <TAB> (ho c <C-i>) s li t k cc l nh c s n, v n u con tr sau t u tin, <TAB> s li t k cc a, phn vng, v tn t p tin tu vo tnh hu ng.
Lu r ng khng th dng ch c nng hon thnh dng l nh trong h th ng t p tin TFTP v b i v TFTP khng h tr li t k tn t p tin v l do b o m t. Dng l nh help
help root
13. Giao di n th c n
14. Bin t p m t
m c trong th c n
bin t p m t m c trn th c n, u tin n <ESC>, sau ch n m c c n thay i b ng cc phm con tr v n <e>, khi cc dng l nh cho m c s xu t hi n. Ch n dng c n i u ch nh b ng cc phm con tr v n <e> l n n a.
Trong khi bin t p m t m c, n <RET> thay th dng l nh c b ng dng l nh v a i u ch nh, n u n <ESC> m i thay i s c b qua. N u mu n thm m t dng m i vo m c kh i ng, n <o> n u thm vo sau dng hi n t i ho c GVHD: NGUY N T N KHI
Trang- 15
<O> n u thm vo tr c dng hi n t i. xo m t dng, n <d>. GRUB khng h tr hu b thao tc v a lm, nhng c th lm i u tng t nh v y b ng cch quay tr l i th c n chnh. Sau khi i u ch nh xong, n <b> kh i ng v i m c .
15. Giao di n th c n n
N u thi t b cu i cm ho c GRUB c yu c n che d u giao di n th c n b ng l nh hiddenmenu, GRUB s khng 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 cch n phm <ESC>. Khi ng t th i gian ch v thi t b cu i cm, GRUB quay tr l i giao di n dng l nh.
III.16.1.1
Cc l nh chung
Cc l nh ny c th c dng trong th c n l n dng l nh. color bnh_th ng [t_sng] Thay i mu th c n. Mu bnh_th ng c dng cho h u h t cc dng trong th c n, v mu t_sng c dng t sng dng m con tr ang ch n. N u khng dng t_sng, mu ng c l i c a b nh_th ng c dng t sng. nh d ng c a m t mu l ti n_c nh/h u_c nh. ti n_c nh v h u_c nh l cc tn mu t ng trng.
GVHD:
NGUY N T N KHI
Trang- 16
Nhng ch c 8 tn
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 dng l nh ny t o hnh nh a, v/ho c s a ch a cc a c GRUB on khi GRUB khng xc nh c chng m t cch chnh xc, nh:
grub> device (fd0) /floppy-image grub> device (hd0) /dev/sd0
L nh ny ch dng c shell grub. hide phn_vng Che d u phn vng phn_vng b ng cch thi t l p bit n trong m lo i phn vng c a n. i u ny c l i khi kh i ng DOS hay Windows v nhi u phn vng FAT s c p t n t i trn m t a.
GVHD:
NGUY N T N KHI
Trang- 17
password [--md5] m t_kh u [t p_tin_c u_hnh_m i] N u c dng trong ph n u tin 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 bin t p tng tc (b ph n bin t p m c th c n v dng l nh) v cc 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_hnh_m i lm t p tin c u hnh m i v kh i ng l i GRUB Giai o n 2 n u t p_tin_c u_hnh_m i c ch nh. N u khng, GRUB s ch m kho cc l nh c quy n. L nh ny cng c th c dng 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_phm t _phm] Thay i nh x bn phm. Phm t _phm c nh x sang n_phm. N u khng c i s n s thi t l p l i nh x bn phm. Lu r ng l nh ny khng hon i cc phm. N u mu n hon i cc phm, ch y l nh ny m t l n n a v i thng s hon i, nh:
grub> setkey capslock control grub> setkey control capslock
M t phm ph i l m t ch ci, m t con s , ho c m t trong cc 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 phn_vng Kh n phn vng phn_vng b ng cch xo bit n trong m lo i phn vng. L nh ny c ch khi kh i ng DOS ho c Windows v c nhi u phn vng s c p trn m t a c ng.
17. Cc l nh dng
dng l nh v
m c th c n
Cc l nh ny dng c dng l nh v m c th c n. C th ch y l nh help xem thng tin v cc l nh ny. blocklist t p_tin In k hi u danh sch kh i c a t p tin t p_tin. boot Kh i ng h i u hnh/trnh n p chu i c n p. Ch c n thi t khi ch y trn dng l nh tng tc 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 ny c th gip xc m c g c c a h i u hnh:
grub> cat /etc/fstab
nh ng u l th
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 khng. i u ny gip n p m t trnh n p kh i ng khi m khuy t (nh kh i ng SCO UnixWare 7.1).
GVHD:
NGUY N T N KHI
Trang- 18
cmp t p_tin1 t p_tin2 So snh t p tin t p_tin1 v i t p_tin2. N u chng khc nhau v kch th c, in cc kch th c nh sau:
Differ in size: 0x1234 [foo], 0x4321 [bar]
N u chng hon ton gi ng nhau, khng in g c . configfile t p_tin T i t p_tin lm t p tin c u hnh. displaymem Hi n th thng tin v b nh ang c s d ng, bao g m t t c cc vng c a RAM v t l c ci t, d a trn thng tin t BIOS. Gip xc nh h th ng c bao nhiu RAM dnh cho kh i ng. embed stage1_5 thi t_b a, Ghi Giai o n 1.5 stage1_5 vo cc sector sau MBR n u thi t_b l m t ho c vo vng c a trnh kh i ng n u thi t_b l m t phn vng FFS ho c phn vng ReiserFS. In con s cc sector chi m b i stage1_5, n u thnh cng. Thng th ng khng c n ch y l nh ny tr c ti p. find tn_t p_tin Tm tn t p tin tn_t p_tin trong t t c cc phn vng v in danh sch cc thi t bi ch a t p tin. Tn t p tin tn_t p_tin nn l m t tn t p tin tuy t i nh /boot/grub/stage1. halt --no-apm T t my tnh. N u tu ch n --no-apm c ch nh, khng th c hi n l i g i APM BIOS; n u khng, my tnh dng APM khi t t. help --all [m u ...] Hi n th thng tin v cc l nh c ci s n. N u khng ch nh m u, l nh ny s cho ra miu t ng n c a h u h t cc l nh c s n. N u ch nh tu ch n --all, cc miu t ng n cho cc l nh hi m dng cng c trnh by. N u ch nh m u, n s trnh by thng tin di hn v m i l nh kh p v i cc m u . initrd t p_tin ... N p a RAM ban u cho hnh nh kh i ng theo nh d ng Linux v thi t l p cc thng s thch h p cho vng thi t l p Linux trong b nh . install c c p trn. ioprobe _ a D tm c ng I/O dng cho a _ a. L nh ny s li t k cc c ng I/O trn mn hnh. kernel [--type=lo i] [--no-mem-option] t p_tin ... N p hnh 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 cn l i c a dng c chuy n nguyn vn nh dng l nh nhn. B t c m- un no cng c th c n p sau khi dng l nh ny. L nh ny cng ch p nh n tu ch n --type ch nh c th lo i nhn c a t p_tin. i s lo i ph i l m t trong cc th sau: netbsd, freebsd,
GVHD:
NGUY N T N KHI
Trang- 19
openbsd, linux, biglinux, v multiboot. Tuy nhin, ch c n xc nh lo i nhn khi n p nhn NetBSD ELF v GRUB c th t ng xc nh lo i nhn trong cc tr ng h p khc m t cch kh an ton. Tu ch n --no-mem-option ch hi u qu trn Linux. N u ch nh tu ch n ny, GRUB khng chuy n tu ch n mem= n nhn.
lock Ngn c n ng i dng thng th ng thi hnh cc m c th c n m t cch tu . l nh ny th c s c tc d ng ph i dng km v i l nh password. L nh ny c dng 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 phn vng ch ng (active) trn a root cho thi t b root c a GRUB. L nh ny ch gi i h n (do ch c ngha) cho cc phn vng PC s c p trn a c ng. map t _ _ a n_ _ a a t _ _ a n a n_ _ a. i u ny c n thi t khi n p chu i m t nh x s h i u hnh, th d nh DOS, n u h i u hnh n m a khng ph i l a th nh t. Th d :
grub> map (hd0) (hd1) grub> map (hd1) (hd0)
Th d ny chuy n i tr t t gi a cng 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 dng v i l nh password. module t p_tin ... T i m- un kh i ng t p_tin cho hnh nh kh i ng nh d ng Multiboot . Ph n cn l i c a dng c chuy n nh l dng l nh m- un, gi ng nh l nh kernel. Hnh nh nhn Multiboot ph i c n p tr c khi n p b t k m- un no. modulenounzip t p_tin ... Gi ng nh module, ngo i tr vi c gi i nn t ng b b t ho t. pause thng_ i p ... In thng_ i p, r i ch cho n khi m t phm c n. Lu r ng n u t <^G> (m ASCII 7) trong thng i p th loa s pht ra m thanh bp chu n, c ch khi nh c ng i dng thay i a m m. quit Thot shell grub. L nh ny ch dng c trong shell grub. reboot Kh i ng l i my tnh. 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 gn (mount) n l y thng tin v kch th c phn vng ( chuy n nhn phn vng trong ES:ESI, c dng b i m t s trnh kh i ng theo ki u n p chu i), lo i a BSD ( kh i ng nhn BSD dng nh d ng nguyn thu c a chng), v xc nh chnh xc phn vng PC ni t cc ti u phn vng BSD. Thng s tu ch n hdbias l m t s cho nhn BSD bi t con s a BIOS l bao nhiu trn cc controller tr c
GVHD:
NGUY N T N KHI
Trang- 20
a hi n t i. Th d , n u c m t a IDE v m t a SCSI, v phn vng root c a FreeBSD trn a SCSI, th dng 1 cho hdbias. rootnoverify thi t_b [hdbias] Tng t nh root, nhng khng gn (mount) phn vng. i u ny h u ch khi h i u hnh n m ngoi khu v c trn a m GRUB c th c, nhng v n mu n thi t l p thi t b root ng. Lu r ng cc m c c p ph n l nh root bn trn c c do gn s khng lm vi c chnh xc. savedefault Lu m c hi n t i lm m c m c nh
V i c u hnh ny GRUB s ch n m c c kh i ng tr c y lm m c m c nh. Dng l nh savedefault m t ho c m t vi m c v khng dng m t s m c khc s t o th c n cho php thay i m c nh m t vi h th ng v khng bao gi thi t l p m c nh c cho cc h i u hnh kia.
setup cd c p trn.
IV. M t s th ng g p
1.1 T o a CD kh i
ng d ng c th v v n
ng v i GRUB
N u b n c a m m kh i ng v i GRUB o t a vo a v th c hi n l nh
dd if=/dev/fd0 of=boot.img bs=1024 count=1440
N u b n khng c a m m o b nc nt om t a m m o (hnh nh
o o o o o
a):
dd if=/dev/zero of=boot.img bs=1024 count=1440 mke2fs -F boot.img mount -o loop boot.img mnt mkdir -p mnt/boot/grub
Cc t p tin t i thi u c n c GRUB lm vi c g m stage1, stage2, menu.lst. nh v cc t p tin ny trong h thng c a b n, th ng chng c trong /boot/grub ho c /usr/local/share/grub/i386-pc. Chp chng vo t p tin hnh nh:
cp / ng-d n/stage1 mnt/boot/grub cp / ng-d n/stage2 mnt/boot/grub cp / ng-d n/menu.lst mnt/boot/grub
o o
o o
GVHD:
NGUY N T N KHI
Trang- 21
Tho gn v ch y grub:
umount mnt grub
ng:
mkdir -p /tmp/boot mv boot.img /tmp/boot cd /tmp mkisofs -b boot/boot.img -c boot/boot.catalog -o boot.iso -r boot
ghi vo a CD.
1.2 Kh i
title windows hide (hd0,1) unhide (hd0,0) root (hd0,0) makeactive chainloader +1 title windows_2 hide (hd0,0) unhide (hd0,1) root (hd0,1) makeactive chainloader +1
ng nhi u b n Windows ci
t trn m t a c ng
1.3 Kh i
ng
CD
ng CD, do n u mu n t GRUB kh i ng trung gian. ng m t CD th
) Thm m c vo menu.lst:
GVHD:
NGUY N T N KHI
Trang- 22
V.
C ch an ton v b o m t GRUB
Dng tnh nng m t kh u c a GRUB ch cho php ng i qu n tr dng cc ho t ng tng tc (nh bin t p m c th c n v vo giao di n dng l nh). s d ng tnh nng ny, c n ch y l nh password trong t p tin c u hnh, nh sau:
password --md5 PASSWORD
Khi GRUB khng cho php i u khi n tng tc no (<e> v <c>), cho n khi g phm <p> v nh p ng m t kh u. Tu ch n --md5 cho GRUB bi t r ng PASSWORD nh d ng MD5. N u khng s d ng tu ch n ny, GRUB cho r ng PASSWORD d ng vn b n thu n tu. M t kh u c th c m ho b ng l nh md5crypt. Th d ch y shell grub v nh p m t kh u:
grub> md5crypt Password: ********** Encrypted: $1$U$JK7xFegdxWH6VuppCUSIb.
lm t p tin c u hnh khi nh p ng m t kh u. N u mu n ch c ng i qu n tr m i c quy n ch y m t s m c th c n no , ch ng h n nh kh i ng m t h i u hnh khng b o m t nh DOS, c th dng l nh lock; l nh ny lun lun d ng l i cho n khi nh p ng m t kh u. Th d :
Cng c th dng l nh password thay cho lock. Trong tr ng h p ny ti n trnh kh i ng s yu c u m t kh u v d ng l i cho n khi m t kh u c nh p chnh xc. V l nh password nh n i s PASSWORD c a chnh n nn s c l i n u dng m t m t kh u khc v i m t kh u cho cc m c khc.
m c th c n c
l script g i shell grub m ho m t chu i k t d ng MD5. M t kh u do chng trnh ny m ho c th c dng v i l nh password. nh n cc tu ch n sau:
grub-md5-crypt --help
In tm t t cc tu ch n dng l nh v thot
--version
GVHD:
NGUY N T N KHI
Trang- 23
VI.
1.
[Grub 2]
[T Ubuntu-VN]
GRand Unified Bootloader, version 2 (Grub 2) l phin b n th hai c a GNU GRUB. N l chng trnh ch u trch nhi m qu trnh n p v giao quy n i u khi n cho nhn h i u hnh trong lc kh i ng. Grub 2 tng thch v i chu n POSIX (v d nh GNU/Linux, *BSD, Mac OS,...) v cng c th k t n i n nh ng h th ng khng tng thch v i POSIX (Portable Operating System Interface for Unix). GRUB 2 c vi t l i m i hon ton v m t giao di n. D a trn nghin c u c a d n PUPA, GRUB 2 h tr tnh m- un v c ng nhi u hn ng i ti n nhi m c a n. Sau y l m t vi c i ti n d ki n c a GRUB 2:
h tr giao di n h a, k c theo ch ; m- un ha qu trnh n p (modular loading); tng thch a n n t ng (h i u hnh); h tr nhng m (scripting support); ty bi n cc m c kh i ng; ki m tra tn phn vng.
GVHD:
NGUY N T N KHI
Trang- 24
2.
[Ci
t / Nng c p]
t (Ubuntu 9.10)]
2.1 [Ci
GRUB 2 s c ci m c nh trn phin b n Karmic. N u b n mu n nng c p t Jaunty 9.04 ln Karmic 9.10 b n c th theo cc b c h ng d n d i y:
2.2 [Ci
t (Ubuntu 9.04+)]
M m t c a s dng l nh (Terminal) v nh p
$ sudo apt-get install grub2
Ch n OK t grub-pc configuration
NOTE: Ci ny ch l t m th i, b n ph i c
nh n l i b ng cch...
Nh p vo m t terminal
$ sudo upgrade-from-grub-legacy
nh l i phin b n m b n v a ci b ng cch nh p:
GVHD:
NGUY N T N KHI
Trang- 25
3.
[H th ng th m c v t p tin c a Grub 2]
Trong khi ton b cc file c a n v n cn n m trong th m c /boot/grub, th khng cn c khi ni m menu.lst. Tp tin i u khi n Grub by gi l grub.cfg. N c t o ra b i nhi u k ch b n (scripts) c ch y khi l nh "update-grub" c th c thi (lu ph i ch y d i quy n root: "sudo update-grub"). Nh ng files ng vai tr chnh v n i dung c a grub.cfg /etc/default/grub v nh ng file k ch b n ring l c t t i /etc/grub.d/ Nhi u t p tin trong /boot/grub s r t xa l v i ng i dng quen v i Grub tr c. c bi t ng ch l c v s cc file *.mod trong th m c /boot/grub. Grub 2 c tnh m- un v nh ng d li u trong *.mod c n p ln khi c n thi t b i grub. M c d c s b sung c a nh ng t p tin ny, t ng kch th c c a th m c /boot/grub g n nh khng i so v i Grub Legacy v khng i h i nhi u khng gian cho phn vng /boot.
grub.cfg c t o ra m t cch t ng ho t t c p nh t khi v ch khi l nh "update-grub" c thi hnh. L nh ny ph i c ch y d i quy n c a "ng i qu n tr " ("root"). Cc k ch b n c dng kh i t o grub.cfg bao g m cc tp tin ch a trong th m c /etc/grub.d v thng tin c thu th p t /etc/default/grub T p tin ny c chia thnh t ng khu v c. M i phn khu c m t v c th nh n bi t b ng dng ### BEGIN. Thng tin trong dng ny c p n nh ng t p tin trong th m c /etc/grub.d v n dng lin k t thng tin vo trong grub.cfg M c nh, v m i khi l nh "update-grub" c th c thi, tp tin ny c "nim ch" ch c m thi. i u ny gi cho n i dung c a t p tin s khng b thay i m t cch "th cng". N u b n mu n ch nh s a file ny, h ng d n n m cu i bi. y l n i dung m u c a grub.cfg, bao g m hai li (kernel) Ubuntu, memtest86+, Windows v m t m c ty ch nh (41_srcd), c nh p t cc k ch b n /etc/grub.d/ :
GVHD:
NGUY N T N KHI
Trang- 26
### BEGIN /etc/grub.d/10_linux ### set root=(hd0,5) search --fs-uuid --set b02e1934-12dd-418a-be3a-9ff7d3e7e7ea menuentry "Ubuntu, linux 2.6.28-13-generic" { linux /boot/vmlinuz-2.6.28-13-generic root=UUID=b02e1934-12dd-418a ro quiet splash vga800 initrd /boot/initrd.img-2.6.28-13-generic } menuentry "Ubuntu, linux 2.6.28-13-generic (single-user mode)" { linux /boot/vmlinuz-2.6.28-13-generic root=UUID=b02e1934-12dd-418a ro single initrd /boot/initrd.img-2.6.28-13-generic } menuentry "Ubuntu, linux 2.6.28-11-generic" { linux /boot/vmlinuz-2.6.28-11-generic root=UUID=b02e1934-12dd-418a ro quiet splash vga800 initrd /boot/initrd.img-2.6.28-11-generic } menuentry "Ubuntu, linux 2.6.28-11-generic (single-user mode)" { linux /boot/vmlinuz-2.6.28-11-generic root=UUID=b02e1934-12dd-418a ro single initrd /boot/initrd.img-2.6.28-11-generic } ### END /etc/grub.d/10_linux ###
GVHD:
NGUY N T N KHI
Trang- 27
GRUB_DEFAULT=0 GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=10 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX=""
GVHD:
NGUY N T N KHI
Trang- 28
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux #GRUB_DISABLE_LINUX_UUID=true # Uncomment to disable generation of recovery mode menu entrys #GRUB_DISABLE_LINUX_RECOVERY="true"
This file contains information formerly contained in the upper section of Grub Legacy's ''menu.lst'' and items contained on the end of the kernel line. The items in this file can be edited by a user with administrator (root) privileges. Grub developers have have placed explanatory comments within the file itself.
GRUB_DEFAULT=0 o Thi t t l a ch n kh i ng m c nh. Gi tr c th l con s ho c t "saved" o GRUB_DEFAULT=0 Thi t t m c nh theo v tr trong m c. Gi ng v i Grub Legacy, dng m c u tin trong grub.cfg l 0, th hai l 1, ... o GRUB_DEFAULT=saved Thi t t m c nh theo l a ch n l n kh i ng tr c. N u b ng l a ch n c hi n th trong lc kh i ng th l a ch n tr c s c lm n i b t. N u khng tc ng g n bn phm ho c b ng l a ch n khng xu t hi n th l a ch n s c kh i ng khi h t th i gian ch . o GRUB_DEFAULT="xxxx" V i xxxx l tn chnh xc c a m c l a ch n (ch ph i c thm 2 d u ngo c kp). Trong tr ng h p ny th khng c n ph i quan tm n th t c a m c l a ch n. bi t tn c a m c c n ch n, ch y l nh ny trong terminal:
grep menuentry /boot/grub/grub.cfg
GRUB_TIMEOUT=5 o Khng c g thay i t phin b n tr c. y l th i gian m ng c (tnh b ng giy) hi n th b ng l a ch n tr c khi l a ch n m c nh c kh i ng. o Thi t t gi tr l -1 s hi n th b ng l a ch n cho n khi ng i dng a ra quy t nh (khng c th i gian ch ).
GVHD:
NGUY N T N KHI
Trang- 29
GRUB_HIDDEN_TIMEOUT=0 o B ng l a ch n s b n i n u khng c d u "#" t u dng ny. ( # GRUB_HIDDEN_TIMEOUT=0 ) o Thi t t m c nh ban u ph thu c vo s hi n di n c a h i u hnh khc. N u pht hi n c h i u hnh khc: b ng l a ch n s xu t hi n (dng ny s chm d u "#") N u khng pht hi n h i u hnh khc: b ng s b n i. o N u t m t s nguyn l n hn 0, khi kh i ng my s xu t hi n th i gian ch tng ng v i con s , nhng v n khng hi n b ng l a ch n. o 0: kh i ng ngay t c kh c, khng c b ng l a ch n, khng c th i gian ch . Khi thi t t gi tr 0: Ng i dng c th p bu c my ph i hi n th b ng l a ch n b ng cch n v gi phm SHIFT. Trong qu trnh kh i ng, h th ng s ki m tra tr ng thi c a phm SHIFT. N u n khng xc nh c tr ng thi c a phm, s hi n ra m t kho ng th i gian ng n cho php hi n th b ng l a ch n b ng cch n phm ESC. N u c kch ho t, m t hnh n n (splash screen) ki u 05_debian_theme s c hi n th k c khi tnh nng n b ng l a ch n c b t. GRUB_HIDDEN_MENU_QUIET=true o true - Khng hi n th th i gian m ng c. Mn hnh hon ton tr ng. o false - Hi n th th i gian m ng c d a trn gi tr t i dng GRUB_HIDDEN_TIMEOUT. GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` o Xc nh ph n m t c a tn m c trong b ng l a ch n. (Ubuntu, Xubuntu, Debian, ...) GRUB_CMDLINE_LINUX o N u c dng ny c gn thng tin, n s nh p thng tin vo cu i dng c a m c (cho cc ch normal v recovery). L nh ny gi ng v i l nh "altoptions" trong menu.lst tr c y. GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" o Dng ny nh p thng tin vo cu i dng c a m c (ch p d ng cho ch normal). N tng t nh dng "defoptions" trong menu.lst. N u b n mu n lc kh i ng vo Ubuntu s hi n chi cht ch v s hy g b c m t "quiet splash". N u b n mu n c m t t thng tin ch y d i logo c a Ubuntu th ch l "splash". <-- i u ny ("splash") khng c tc d ng trong qu trnh kh i ng c a Karmic v trnh xsplash khng cho php hi n th thng tin, nhng lc t t my (shutdown) th l i c.
GVHD:
NGUY N T N KHI
Trang- 30
#GRUB_DISABLE_LINUX_UUID=true o B ch thch n u b n khng mu n GRUB b qua thng s "root=UUID=xxx" trong Linux. GRUB_DISABLE_LINUX_RECOVERY=true o Thm ho c b ch thch (#) dng ny ngn khng cho ch "Recovery" xu t hi n trong b ng l a ch n. GRUB_DISABLE_OS_PROBER=true o B t/T t ki m tra cc h i u hnh khc c trong h th ng, bao g m Windows, Linux, OSX v Hurd.
B t k t p tin no c t o ra ph i c tnh th c thi c trch xu t vo trong t p tin "grub.cfg" t i th i i m th c hi n l nh "update-grub". C th t c i u ny b ng cch g vo trong terminal "sudo chmod u+x /etc/grub.d/tn-t p-tin". D i dy l m t t ng qut nhi m v c a cc t p tin:
00_header o T i cc thi t l p t /etc/default/grub, bao g m cch trnh by, v cc tu ch n v terminal . 05_debian_theme o Ch nh hnh n n, mu ch v ch 10_hurd
o
m ng c
10_linux
GVHD:
NGUY N T N KHI
Trang- 31
nh v kernels d a trn tn b n phn ph i c xc nh b i k t qu c a l nh "lsb_release -i -s" ("Ubuntu"). 20_memtest86+ o N u c t n t i t p tin /boot/memtest86+.bin, n s c a vo danh sch l a ch n lc kh i ng. 30_os-prober o D tm cc h i u hnh khc v a n vo danh sch l a ch n.
40_custom o M t ki u m u dng t o cc l a ch n tu bi n s c a vo trong grub.cfg khi th c hi n l nh "update-grub". T p tin ny v b t k t p tin tu bi n no khc ph i c tnh th c thi cho php nh p n i dung vo trong grub.cfg. Nh ng t p tin ny c t vo trong b ng l a ch n theo s th t ghi trn tn t p tin.
4.
[Thm m c l a ch n vo Grub 2]
grub.cfg c c p nh t khi update-grub ho c update-grub c th c thi. Cc thay i trong grub.cfg ph i c t o ra b ng cc t p tin ch a m tng ng ch khng ph i t chnh b n thn grub.cfg. LU : Dng ghi ch u tin trong grub.cfg c ngha l "KHNG C CH NH S A T P TIN NY". T p tin ny mang thu c tnh "ch c" v d b n c c g ng s a th n v n tr v tr ng thi nh c m i khi l nh update-grub c ch y.
4.1 [T
ng thi t l p]
Khi "update-grub" c th c thi, Grub 2 s c d li u t /etc/default/grub v nh ng t p tin n m trong th m c /etc/grub.d. S k t h p ny s t o nn nh ng thng s tr c quan cho b ng l a ch n (/etc/default/grub) v tm ki m cc nhn linux, cc h i u hnh khc v cc tu ch n khc do ng i dng thi t l p trong /etc/grub.d.
10_linux d tm nh ng nhn linux c ci t. 30_os-prober d tm cc h i u hnh khc . 40_custom v nh ng t p tin khc do ng i dng t thi t l p trong th m c /etc/grub.d c vai tr thm cc nh ng m c tu ch n vo trong b ng l a ch n. Tn t p tin s quy t nh th t c a cc m c trong b ng l a ch n. Cc m c trong 30_os-prober s ng tr c cc m c trong 40_custom. Cc m c c s cao hn s x p sau cc m c c s nh hn.
GVHD:
NGUY N T N KHI
Trang- 32
Tn t p tin nn c d ng XX_tn, v i XX l con s . Th t c a m c b ng l a ch n kh i ng d a trn s th t cc t p tin trong /etc/grub.d. Cc t p tin th c thi trong th m c /etc/grub.d b t u b ng ch ci s c u tin x p tr c cc t p b t u b ng s trong b ng l a ch n. T p tin ph i c thi t l p thu c tch th c thi b ng cc g trong terminal:
y l m t v d v m c tu ch n. T p tin ny t o m t m c trong b ng l a ch n kh i ch y qu trnh ci t SystemRescueCD trn phn vng sdb10 v m t nhn tu ch n trn sda1.
LU : v quy c
t tn phn vng m i:
ut 1
phn vng u tin trn a c ng u tin: (hd0,1) phn vng th 5 trn a c ng th 3: (hd2,5)
#!/bin/sh echo "Adding Custom Kernel & SystemRescue" >&2 cat << EOF menuentry "Ubuntu, linux 2.6.31-11-custom" { set root=(hd0,9) linux /boot/vmlinuz-2.6.31-11-custom root=UUID=c6829e27-2350-4e84-bdbb91b83f018f98 ro initrd /boot/initrd.img-2.6.28-11-generic } menuentry "Boot SystemRescue CD from hard drive" { set root=(hd1,10) linux /sysrcd/rescuecd subdir=sysrcd setkmap=us initrd /sysrcd/initram.igz } EOF
GVHD:
NGUY N T N KHI
Trang- 33
Dng "echo "Adding SystemRescueCD" >&2" khng b t bu c. Thm n vo t p tin cho php n c hi n th trong terminal khi "update-grub" c kch ho t. i u ny cung c p nh ng thng tin ph n h i r ng ci m c ny c nh n di n v c vo (grub.cfg). N u c bin so n ng chu n th m c l a ch n c a vo grub.cfg d cho ci dng c c chn vo hay khng. Ch nh s a th cng grub.cfg o N u b n ph i ch nh s a t p tin ny:
sudo chmod +w /boot/grub/grub.cfg # Remove 'read-only', necessary even for "root" sudo nano /boot/grub/grub.cfg # Edit as "root" o
Lu : T p tin ny s tr l i tr ng thi 'ch c' v nh ng thi t l p c a ng i dng trong s b ghi m i khi l nh "update-grub" c ch y.
Lm t
o o
ng. Nh ng nhn Linux c g grub.cfg m khng c n ng Nhng h i u hnh khc n trong danh sch l a ch n m root.
b b i Synaptic cng s t bi n m t trong i dng ng tay n. u c g b kh i my tnh cng s bi n m t t khi l nh "update-grub" c ch y v i quy n
Lm th cng. o ngn khng cho m t t p tin trong /etc/grub.d n p cc m c vo trong b ng l a ch n, hy thay i thu c tnh th c thi ho c xo t p tin ng d ng. o memtest86+: N u b n khng mu n th y memtest86+ xu t hi n trong b ng l a ch n, ch y l nh
sudo chmod -x /etc/grub.d/20_memtest86+
Recovery mode: N u b n khng mu n th y m c Recovery mode i km v i m c nhn kernel, hy ch nh s a file /etc/default/grub b ng cch thm dng ny:
GVHD:
NGUY N T N KHI
Trang- 34
N u m t k ch b n tu bi n trong th m c /etc/grub.d/ c ch a nhi u m c l a ch n, c th xo b t ng m c m t m khng nh h ng n cc m c cn l i. M o: N u ng i dng mu n cc m c tu bi n xu t hi n u b ng l a ch n, hy t tn c gi tr nh hn "10_linux", v d nh "07_custom". Ki m tra gi tr "M c nh" trong /etc/default/grub tr n ng menuentry sau khi xc l p s thay i. S thay i s khng di n ra cho n khi l nh "update-grub" c ch y c p nh t grub.cfg.
VII. [Ch
1. [
]
]
Giao di n ho c a GRUB gip cho vi c tu bi n cch b tr v di n m o c a b ng l a ch n GRUB. Ch c c u hnh b ng m t t p tin text n thu n m n ch r cch s p x p c a nhi u thnh ph n GUI khc nhau (bao g m b ng l a ch n, thanh hi n th qu trnh m ng c v cc thng i p) cng nh di n m o b ng vi c s d ng mu s c, ki u ch v hnh nh.
2.
[Hnh Splash]
y l m t d n thu c Google Summer of Code c a Colin Bennett nh m t o ra m t h th ng menu ho tu bi n cao cho GNU GRUB bootloader.
3.
[ nh v mu n n]
nh v mu n n c c u hnh trong m t k ch b n n m /etc/grub.d/ n u b n vo y s th y m t t p tin tn l 05_debian_theme, l s ph i mu m c nh c a GRUB 2. By gi t o cch ph i mu cho ring b n th c vi l a ch n, b n c th sao chp v ch nh s a t p tin 05_debian_theme or ho c t t o m t ci m i hon ton. M i t p tin /etc/grub.d/ u c ch y c th t , n u nh b n c 2 t p tin ch , 05_debian_theme v 06_mytheme ch ng h n, ci th hai (06_mytheme) s
GVHD:
NGUY N T N KHI
Trang- 35
4.
[Sao chp v ch nh s a mu m c
Sao chp s mu s c c a ch m c nh
nh]
By gi b n c th ch nh s a theo thch.
5.
[T o m t t p tin ch
T o t p tin ch m i
m i]
By gi b n c th b t tay vo thi t k .
GVHD:
NGUY N T N KHI
Trang- 36
6.
[Cu l nh]
V GRUB 2 c vi t l i hon ton, cho nn c m t s l nh t ng s d ng Grub c c th khng t n t i GRUB 2. Danh sch l nh:
GVHD:
NGUY N T N KHI
Trang- 37
GVHD:
NGUY N T N KHI
Trang- 38
GVHD:
NGUY N T N KHI
Trang- 39
7.
$ sudo fdisk -l
By gi b n c n ghi nh thi t b no trong danh sch li t k ch a b n phn ph i Linux c a b n. Ch ng h n /dev/sda1. Ti p theo chng ta c n g n k t (mount) n t i /mnt
v d v i ci trn th
$ sudo grub-install --root-directory=/mnt/ /dev/sda
C n lu y sda l tn ci c ng ho c thi t b c a b n, c th l sda, sdb, sdc ... cn ci sda1 cc l nh trn l phn vng u tin c a thi t b sda. Sau b n vo ubuntu c a b n r i dng l nh
$ sudo update grub
l i ho c ch nh s a g ty thch Cch 2
Mount cc thi t b cn l i.
K ti p l chroot vo h th ng c a b n.
GVHD:
NGUY N T N KHI
Trang- 40
B n c n th c hi n chroot vo h th ng v i quy n root, v v y b n nn chuy n vai tr sang root kh i ph i thm sudo tr c m i dng l nh.
$ nano /etc/default/grub
Khi m i th
xong b n c n ch y l nh update-grub
t o t p tin c u hnh.
$ update-grub
ci GRUB 2 vo MBR, b n c n ch y
$ grub-install /dev/sda
n Ctrl+D thot kh i chroot. M t khi b n tr v vai tr ng i dng quen thu c, hy tho b cc g n k t vo h th ng, u tin l /dev
N u lc
Gi th b n c th tho g n k t cu i cng.
V b n c th kh i l nh c a b n.
ng l i h th ng c a mnh v GRUB 2 s l i xu t hi n v ch
GVHD:
NGUY N T N KHI
Trang- 41
GVHD:
NGUY N T N KHI
Trang- 42
Ban u b ng m c ch n c a GRUB khng hi n th . Ch nh s a file /etc/default/grub: - t d u # tr c dng GRUB_HIDDEN_TIMEOUT dng ch thch, v hi u ho hi u l c c a dng ny cho GRUB nh n ra y ch l
GVHD:
NGUY N T N KHI
Trang- 43
c p nh t thay i.
GVHD:
NGUY N T N KHI
Trang- 44
GVHD:
NGUY N T N KHI
Trang- 45
GVHD:
NGUY N T N KHI
Trang- 46
Sao lu file 05_debian_theme trong /etc/grub.d tr c khi ti n hnh ch nh s a file ny c th t o m t nh n n trong GRUB
GVHD:
NGUY N T N KHI
Trang- 47
-T i m t nh n n b t k t trn Internet v my ho c c th s d ng hnh nh no . -Ch ng h n hnh c l y t Internet nh bn d i -File ny c lu trong my. -Trong v d ny th c lu t i /home/trungdn/Pictures/download.png
GVHD:
NGUY N T N KHI
Trang- 48
-Sau khi sao lu file 05_debian_theme th c hi n l n l t cc b c sau: +Dng trnh so n th o nano m file 05_debian_theme ti n hnh ch nh s a n i dung
GVHD:
NGUY N T N KHI
Trang- 49
Ch nh s a file ny: +Dng WALLPAPER c ch nh s a nh hnh bn d i + ng d n ban u c thay thnh /home/trungdn/Pictures/download.png i (Ctrl + O) v thot (Ctrl +X)
GVHD:
NGUY N T N KHI
Trang- 50
GVHD:
NGUY N T N KHI
Trang- 51
+Kh i
ng l i my
xem k t qu
GVHD:
NGUY N T N KHI
Trang- 52
- N n en ban
GVHD:
NGUY N T N KHI
Trang- 53
lo i b m c ch n ny
GVHD:
NGUY N T N KHI
Trang- 54
GVHD:
NGUY N T N KHI
Trang- 55
Kh i
ng l i:
+Lc ny m c ch n khng cn xu t hi n dng memtest86 n a do chng ta lo i b thu c tnh th c thi c a file ny +K t qu nh hnh bn d i
GVHD:
NGUY N T N KHI
Trang- 56
i u hnh
+Chng ta s kh i Cc thao tc l n l t:
-File linuxmint.iso c s n trong /dev/sda5, n u cha c s n th b n ph i sao chp ho c ng b (dng l nh rsync) -Ti n hnh ng t k t n i n hai th m c trn
GVHD:
NGUY N T N KHI
Trang- 57
ch nh s a file
-Ch r v tr file vmlinuz trong file iso -Ch r v tr file initrd.lz trong file iso (n u Ubuntu l file initrd.gz) -Sao lu v thot
GVHD:
NGUY N T N KHI
Trang- 58
GVHD:
NGUY N T N KHI
Trang- 59
+Sau khi kh i
b ng cch s a chu i ngay sau menuentry -Tuy chu i l Install Linux Mint nhng y l Linux Mint LiveCD khng c n ci t
GVHD:
NGUY N T N KHI
Trang- 60
GVHD:
NGUY N T N KHI
Trang- 61
IX.
[Ti li u tham kh o]
1. Ni t i GRUB xu ng ( tp://alpha.gnu.org/gnu/grub/ ) 2. Ti li u h ng d n cch s d ng GRUB ( Bin so n b i: Lm Vnh Nin ) 3.Gio Trnh Iinux cn b n ( Trung tm pht tri n cng ngh thng tin ) 4. Gio trnh Linux Nng Cao ( H c vi n Bu Chnh Vi n Thng )
GVHD:
NGUY N T N KHI
Trang- 62
M CL C
I.
1. 2.
II.
1. 2.
Ci
t GRUB ..................................................................................... 3
III.
1. 2.
2.1 2.2
3. 4. 5. 6. 7. 8. 9.
Xc Xc
Cc t p tin hnh nh c a GRUB.......................................................................... 6 C ch kh i ng dng trong GRUB.................................................................. 6 Ci GRUB trong mi tr ng nguyn thu c a GRUB ..................................... 7
Ci GRUB dng l nh setup ................................................................... 7 Ci GRUB dng l nh grub-install ......................................................... 8 Kh i ng h i u hnh tr c ti p ........................................................ 11 T i trnh n p kh i ng khc............................................................... 11
C u hnh........................................................................................................... 12
Ci GRUB dng l nh install ................................................................................ 7 Ci GRUB trong mi tr ng h i u hnh gi ng Unix..................................... 8 Ci GRUB trong shell grub.................................................................................. 9 Kh i ng h th ng v i GRUB.......................................................................... 11
10.1 10.2
11. 12. 13. 14. 15. 16. 17.
Giao di n ng i dng c a GRUB.................................................................. 13 Giao di n dng l nh ........................................................................................ 13 Giao di n th c n.......................................................................................... 14 Bin t p m t m c trong th c n ............................................................ 14 Giao di n th c n n .................................................................................... 15 M t s l nh trong GRUB................................................................................ 15
16.1
Cc l nh dng
IV.
M ts
1.1 1.2 1.3
ng d ng c th v v n
th ng g p.............................. 20
GVHD:
NGUY N T N KHI
Trang- 63
Ci Ci
grub.cfg (/boot/grub/grub.cfg)............................................................. 25 grub (/etc/default/grub)........................................................................ 27 /etc/grub.d/ (th m c) .......................................................................... 30 T ng thi t l p.................................................................................. 31 Ng i dng t thi t l p........................................................................ 32 G b m c l a ch n trong Grub 2....................................................... 33
VII.
1. 2. 3. 4. 5. 6. 7.
Ch
........................................................................................... 34
phin b n GRUB 2 h tr hi n th theo ch ...................................... 34 Hnh Splash.......................................................................................................... 34 nh v mu n n .................................................................................................. 34 Sao chp v ch nh s a mu m c nh ............................................................... 35 T o m t t p tin ch m i ................................................................................ 35 Cu l nh ............................................................................................................... 36 Ph c h i Grub 2 b ng a LiveCD .................................................................... 39
GVHD:
NGUY N T N KHI