[질문] 멀티부팅과 GRUB 관련
2일을 삽질하고 난 뒤, 해결이 되지 않아 부득이하게 질문을 드려봅니다. 왜 안되는지? 리눅스 참 어렵네요.
1. OS 설치 현황(하드 디스크 2개)
1번재 하드 디스크 : 윈도우 XP
2번째 하드 디스크 : wow linux6.2, fedora core 1.0
2. 제 머신의 하드디스크 현황("fdisk -l" command) - Block 정보 제외
Device Boot Start End id System
===========================================
/dev/hda1 * 1 2550 c Win95 FAT32 (LBA)
/dev/hda2 2551 4963 f Win95 Ext'd (LBA)
/dev/hda5 2551 4963 b Win95 FA32 (LBA)
/dev/hdb1 * 1 128 83 Linux
/dev/hdb2 129 9733 5 Extended
/dev/hdb5 129 3963 83 Linux
/dev/hdb6 3954 4214 82 Linux Swap
/dev/hdb7 4215 9733 83 Linux
3. OS Loader : Grub
Fedora Core 1.0 설치시 인스톨되는 Grub 그대로 사용.
아마 MBR에 깔렸을 겁니다.
4. grub.conf 파일 내용
default=0
timeout=50
splashimage=(hd1,6)/boot/grub/splahs.xpm.gz
title Fedora Core (2.4.22-1.2115.nptl)
root (hd1,6)
kernel /boot/vmlinuz-2.4.22-1.2114.nptl ro root=LABEL=/ rhgb
initrd /boot/vmlinuz-2.4.22-1.2114.nptl.img
title WowLinux
root (hd1,4)
kernel /boot/vmlinu-2.2.14-12kr root=/dev/hdb5
title WindowXP
rootnoverify (hd0,0)
chainloader +1
5. 결론 (질문 내용)
가. 일단 위 내용대로 부팅하면 윈도우와 Fedora는 잘 됩니다. 근데, 유독 WowLinux만 부팅이 안됩니다. 제 나름대로의 결론은 Grub가 WowLinux의 커널 이미지를 해당 filesystem에서 찾지 못하는 걸루 파악됩니다.
나. 분명히, WowLinux를 hdb5에 깔았습니다. 근데 안되는 걸루 보아 Fedora의 grub.conf 파일의 내용이 뭔가 잘못되었구나 생각되는데, 여기 질답란을 보아도 뭐가 잘못된 것인지 파악하기 힘듭니다.
다. grub.conf 파일에서 위의 내용말고 추가해야 할 내용이 있는지, initrd 란 grub 옵션은 무엇인지? WowLinux에서는 Fedora처럼 initrd 옵션 뒤의 .img라는 파일이 없던데, initrd 옵션에 대해서두 알려주세요.
다. 어디가 잘못 된건지 혹은 제가 확인해야 될 게 뭐가 있는지 좀 알려주십시오.
그럼, 수고하세요.
자문자답이 되었네요.
리눅스 시스템에 대해서 약간 더 깊이 알게 되었네요. 더불어 추가 지식을 얻게 되었고, 어쨌던 현재 멀티부팅이 성공되어 커피 한잔과 담배 한모금으로 그 성공의 묘미를 즐기고 있는 중에 분명히 저와 같은 고민으로 밤새워 삽질하는 분이 계실 거라는 생각에서 삽질 시간을 줄이고자 이렇게 자답을 하게 되었습니다.
먼저 결론부터 이야기 드리면, 이 부분이 제가 무식해서 그렇습니다.
tiitle WowLinux
root (hd1,4)
kernel /boot/vmlinu-2.2.14-12kr root=/dev/hdb5
줄단위로 이야기 하죠. 먼저
root (hd1,4)
=> grub가 읽는 부분으로써 wow linux의 root 파티션 위치더군요. /dev/hdb5 이니까, grub가 읽게 되는 형식으로 하면 root (hd1,4)가 되는 거죠.
kernel /boot/vmlinu-2.2.14-12kr root=/dev/hdb5
==> 이부분은 커널 이미지와 그리고 그 이미지와 관련 하위 파일들이 어디에 있냐는 것 정두로 이해했습니다. 전 당연히 커널 이미지는 /boot 밑에 있겠거니 했는데, 이것두 Fedora 에서 mount로 찍어 보니 /boot가 아니고 그냥 / 이놈이두만요. 그래서 최종적으로 다음과 같이 수정했죠.
kernel (dh1,0)/vmlinuz-2.2.14-12kr root=/dev/hdb5
다시 정리하면,
root (hd1,4)
kernel /boot/vmlinu-2.2.14-12kr root=/dev/hdb5
이 부분이 아래와 같이 수정됩니다.
root (hd1,4)
kernel (dh1,0)/vmlinuz-2.2.14-12kr root=/dev/hdb5
이상입니다.
별 다른 것 없구요...
어쨌던 몇날 삽질한 건 무자게 힘들고 아깝지만, 이렇게 성공하고 나니 그 이후에 마시는 한잔의 커피와 담배는 무자게 달더군요.. 헐~
그럼, 이젠부터 본격적인 커널 프로그래밍에 들어가야 할 것 같군요.
grub
해결이 되었다니 다행이구요...
저도 요즘 grub을 연구 중 이라 물어볼게 있어서 그러느데요...
나름데로 분석을 해 봤거든요... 대충 이해가 가는거 같아서요. 그래서
맞는지 물어보는 건데여..
Fedora 는 hdb7 한 파티션에 깐거구요. 그래서 boot 디렉토리도 hdb7안에
있는거구요..
WowLinux 는 hdb5를 root 파티션으로 하고 hdb1은 WowLinux의
boot 파티션으로 잡은거 맞나요????
맞으면 저도 담배한데 피겠느데... 답변좀여..
우리 항시 웃고 살아요 ^^
검객님 보셔요...
예, 맞습니다. 바로 그렇게 partiion 나눴죠...
아마 모르긴 몰라도, 저처럼 하면 될 것 같습니다.
댓글 달기