grub에서 win/dos 계열을 부팅 시킬경우에 dos/win 계열의 os가
마스터 하드에 첫번째 파티션에 깔려 있어야 부팅이 가능합니다.
저 같은경우 win2000이 슬래이브 하드에 3번째 파티션에 깔려있습니다.(hdb3) 예전에 한번 grub
으로 win2000을 부팅시킬려고 시도하다가 안되서 안하고 있다가 오늘 hdb mbr에 있던 win2000부
트코드가 날라 가버리는 바람에 grub 매뉴얼을 보고 몇가지 시도를 해보니 부팅이
잘되더군요.적수네 게시판 검색해보니 비슷한 문제가 없어서 한번 올려 봅니다.알아야 할
건 3가지 뿐입니다.map,unhide,hide 이정도... title Windows2000pro
root (hd1,2)
map (hd0) (hd1)
map (hd1) (hd0)
unhide (hd0,2)
hide (hd0,0)
hide (hd0,1)
rootnoverify (hd1,2)
chainloader +1
makeactive
위는 제가 사용하고 잇는 menu.lst에서의 win2000부분입니다.차례대로 설명을 하면...
root(hd1,2)
win2000이 깔려있는 실제 파티션입니다.
map (hd0) (hd1)
map (hd1) (hd0)
map을 이용하여 hda와 hdb의 order를 바꿔줍니다.여기서 order란
cmos 레벨에서의 order를 말하는게 아니라 grub에서의 order입니다.
unhide(hd0,2)
map을 이용해서 마스터와 슬래이브를 바꾸어 주었기 때문에 이제
grub에서는 win2000이 깔려있던 슬래이브를 마스터로 인식하게 됩니다.unhide자체는 파티션 타
입 코드에서 hide 명령으로 주어진 hidden bit를 없애주는 커맨드입니다. hide (hd0,0)
hide (hd0,1)
이부분은 hdb1,hdb2를 숨겨주는 커맨드입니다.그러니까 grub에서 인식 못하게 hidden bit를 심어
주는 역활을 합니다. 여기에서 hdb1,hdb2에 각각 제 하드에 BSD 두개가 깔려있기 때문입
니다.win2000이 깔려 있는 자신의 하드 파티션에 즉 win2000앞에 존재하는 파티션이 없다면 해
주실필요 없습니다.위에 말한것처럼 결국엔 이 작업 자체가 슬래이브 hdb3에 깔려 있는 win20
00을 마스터 hda1에 깔려 잇는 win2000으로 grub에서 인식하게끔 하는 작업에 불과합니다.일단
위처럼 두가지 파티션을 제거해주고 hda,hdb를 map시켜서 grub에서 인식되는 order를 바꿔주면 w
in2000은 grub에서 부팅할수 있는 마스터 하드 첫번째 파티션에 상주하게 됩니다. rootnoverify(h
d1,2) 이제 dos/win계열을 grub에서 부팅하는 방법으로 부팅하면 되는데 rootnoverify(hd1,2)이라고
해준건 rootnoverify커맨드에서는 grub에서 인식하는 하드디스크,파티션 order가 아니라 실제 win
2000 파티션을 지정해 줘야 합니다.원문에 보면...but setting the correct root device is still desired.라
고 나와있습니다.때문에 grub이 인식하는 order대로 하면 안됩니다. 마지막으로 chainloader +1 m
akeactive 해주시고 부팅하시면 됩니다.
grub을 잘모르시는 분들께 부연설명을 좀더 하면 grub은 cmos와는
다르게 하드를 인식할수 있습니다.위와같이 map,unhide,hide를 이용해서요.그리고 이런 작업자
체가 win* os를 마스터 하드 디스크의 첫번째 파티션으로 grub이 인식하게끔하는 것이니 본인
의 상황에 맞게 설정해주시면 쉽게 될겁니다.더 자세한건 grub 매뉴얼을 참고하세요.. 그럼
....