커널 컴파일후 이런 에러가 나옵니다. 어떻게 해야 되는지
글쓴이: betatest / 작성시간: 일, 2003/11/30 - 12:36오전
먼저 읽어 주셨어 감사합니다.
리눅스 초짜입니다.
컴파일후 리부팅하여
ds: no socket drivers loaded!
VFS: connot open root device "Volume01/LogVol00" on 00:00
please append a correct "root=" boot option
kernel panic :VFS unable to mount root fs on 00:00
참고로
/dev/Volume01/LogVol00 /
/dev/sda1 /boot
title Red Hat Linux (2.4.23)
root (hd0,0)
kernel /bzImage-2.4.23 ro root=/dev/Volume01/LogVol00
File attachments:
첨부 | 파일 크기 |
---|---|
TEST.txt | 1.49 KB |
Forums:
config파일 입니다.
config파일 입니다.
Re: 커널 컴파일후 이런 에러가 나옵니다. 어떻게 해야 되는지
ds: no socket drivers loaded!
이것은 오류인지 아닌 지 잘 모르겠습니다.
VFS: connot open root device "Volume01/LogVol00" on 00:00
please append a correct "root=" boot option
kernel panic :VFS unable to mount root fs on 00:00
이것은 루트 파일 시스템을 못읽겠다는 겁니다.
커널 컨픽시 사용하시는 파일시스템 지원을 빼먹었나보네요. 또는 grub의 설정이 잘못된 것일수도..
원래 부팅되던 grub의 설정 내용은 어떤가요? 비교해보시고 만일 같다면 커널 컨픽의 파일시스템부분을 보세요.
rommance.net
Adaptec 7xxx류의 SCSI
Adaptec 7xxx 계열의 SCSI어댑터에 장착한 HDD를 / 파티션으로 쓰시는군요.
제가 이 문제로 삽질을 무지 한 경험이 있어서 kldp에 자문자답의 형식으로 답을 올려놓았습니다.
다음 쓰레드를 참고해 보세요. 첨에는 SMP와 어떤 문제가 있어서 그렇다고 생각했는데 그 문제는 아니더군요..
http://bbs.kldp.org/viewtopic.php?t=25394&highlight=7899
No Pain, No Gain.
^^
부팅하는 HDD가 scsi라면 그 기능을 커널에 때려박아야 부팅됩니다. (모듈로 하면 안됩니다.) 제가 해본 몇몇 (initio, adaptec, lsilogic) 호스트어댑터들이 모두 그렇더군요.
그리고 커널컴파일 옵션에서 LVM이 필요없으시다면 LVM을 빼는건 어떠하실런지요? :)
homeless
Re: ^^
scsi가 아니고 ide를 사용하더라도 root 파일 시스템의 device driver는 커널에 있어야 합니다. 아니면 initrd를 사용하셔야 합니다.
그래야 kernel이 부팅하면서, device driver를 통해서 root 파일 시스템에 접근이 가능하겠죠..
@괜히 ATA-DISK를 module로 했다가 당했던 적이 있어서...^^;;;;;
@UX... Vnn~
특정장치에 따라서는.. -_-;
특정장치에 따라서는 커널에 때려박지도 모듈로 그냥 돌리지도 못하는 경우가 있습니다. 제가 쓰는 AIC-7899가 2.4.18에서 그런 동작을 했거든요. 오직 initrd로만 동작했었습니다. 그덕에 설정파일을 7개나 만들어서 비교해가면서 했었죠 -_-;
No Pain, No Gain.
RE : 감사합니다.
결론부터 말씀 드리면 fibonacci님의 말씀대로 initrd을 이용해 해결하였습니다.
다시한번 감사드립니다.
정리
보드 : 440GX dual (on-board형태:AIC-7896U2/7897U2)
kernel : 2.4.23
SCSI를 모듈화도 시켜 보았고 kernel에 넣어도 보았지만 부팅되지 않음.
fibonacci님의 계시물에 나온 내용와 동일하게 증상이 나왔습니다.
자세한 내용은 위 계시물에 참조해 보시기 바랍니다.
initrd에 대해서도 공부를 좀 해야 될것 같습니다... :D
Re: RE : 감사합니다.
scsi hdd 드라이버를 커널에 내장했을 때는 논외로 하고, 모듈로 만들었을 때는 반드시 ininrd를 만들어 줘야합니다. 커널은 루트 파티션을 마운트해야 하는데, 루트 파티션을 구동하는 드라이버는 루트 파티션 안에 들어있습니다. 어떻게 해야할까요? 루트 파티션에 해당하는 드라이버를 커널이 미리 가지고 구동되도록 해줘야 겠죠. 그리고 initrd가 바로 그런 이유로 존재하는 겁니다.
그래서 번거롭고 귀찮으면 그냥 커널에 넣어버리는게 상책인데, 그것도 안된다니 뭔가 다른 문제가 같이 꼬여있는 경우인 것 같네요.
아참, 그리고 혹시 2.6 커널로 가시려면 mkinitrd 도 꼭 업그레이드 하셔야 합니다. 문서에 언급이 돼 있지 않아 깜박 잊고 있다가 조금 고생을 했었거든요. ^^;
The good is the enemy of the best.
댓글 달기