redhat 7.3사용자의 2.6.0설치 문제(modutils, mod-init-tools)
1. 처음에는 mod-init-tools를 설치하지 않고 modutils만 업데이트 해서 설치를 하였습니다..
환경설정 후에 make;make modules;make modules_install 모두 성공적으로 되었으며(아무런 에러 없이~!) 커널 이미지도 모두 정상적으로 생성되었습니다.
/usr/src/linux/arch/i386/boot/bzImage
/usr/src/linux/System.map
이미지를 /boot로 옮기고.. lilo.conf수정하고.. lilo 명령으로 적용시키고 나서 재부팅을 하였는데.. 다음과 같이 에러를 냅니다.
/ 는 잘 잡히는데 그 이후에 있는 파일 시스템을 마운트를 못합니다.
/ / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 LABEL=/data /data ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 LABEL=/export /export ext3 defaults 1 2 none /proc proc defaults 0 0 LABEL=/tmp /tmp ext3 defaults 1 2 LABEL=/usr /usr ext3 defaults 1 2 LABEL=/var /var ext3 defaults 1 2
이렇게 구성이 되어있는데.. 최초 부팅시에 filesystem체크까지는 잘 하면서 체크후에 마운트를 못합니다..
2. http://doc.kldp.org/wiki.php/Kernel%202.6%20Intro를 토대로 관련 유틸리티들을 모두 버전업 하였고, mod-init-tools 를 설치하고자 하였으나 기존의 modutils과 충돌이 발생하여 기존것(modutils)을 강제로 지우고 mod-init-tools를 설치함. 다시 커널 컴파일 실행시에 make modules;make modules_install 에러가 발생.
/sbin/depmod 를 찾을 수 없습니다 (에러)
할 수 없이 2번을 원상복귀 시킨 후에 커널 재컴파일 후 다시 2번을 시행
결과는 1번과 동일.
이렇습니다. 혹시 2.6.0을 redhat 7.3에서 성공하신 분 계시면 조언 부탁드립니다.
** 하드웨어 제원은 모두 알고 있기 때문에 module로 포함시킨 것은 하나도 없습니다 ***
LABEL=어쩌고 형식은 원래 리눅스 커널에서 지원하지 않습니다. (mo
LABEL=어쩌고 형식은 원래 리눅스 커널에서 지원하지 않습니다. (mount를 패치한건지 커널을 패치한건지 모르겠네요..)
저같은 경우에는 LABEL=어쩌고 를 이전의 /dev/hdxx형식으로 바꾸어 버립니다. 안그러면 커널삽질할 때 불편한점이 너무 많습니다 :(
그리고 KLDPDoc:Kernel2.6Intro 에서 적은것과 같이 rusty아저씨 홈에 보면 modutils srpm과 rpm파일들이 있는데 이것은 module-init-tools와 modutils가 합쳐져있는 rpm입니다. rh 7.x라면 srpm을 받아서 리빌드하면 간편하게 쓸 수 있을것입니다.
----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러
source rpm받아서 설치했습니다.
http://www.kernel.org/pub/linux/kernel/people/rusty/modules/ 안에 있는 modutils-2.4.21-22.src.rpm 를 받아서 리빌드하여 설치하였습니다.
그리고 말씀하신 것과 같이
LABEL=/ ... 이런식으로 되어 있는 것을 모두
/dev/hdax 형식으로 바꾸었습니다만.. 마찬가지입니다.
문제는 기존의 커널 (2.4.23)에서는 전혀 이상이 없었습니다.
참고로 modprobe.conf 라는 파일은 생성이 되었습니다.
(앞서 말씀 드렸듯이 저는 커널안에 모듈(M)이 아니라 (*)로 아예 넣어 버렸기 때문에 특별히 모듈로 들어가는 것은 없습니다.
원래 mount에서 LABEL=형식이 지원되고 있었네요. 커널 param
원래 mount에서 LABEL=형식이 지원되고 있었네요. 커널 parameter로 그렇게 쓰는건만 안되는거군요. (rh는 initrd에 찌지고 볶아서 된듯..)
그리고 커널에 모듈 지원이 없다면 make modules modules_install 할 일이 없겠죠. depmod도 필요없고요.
그리고 파일시스템이 마운트가 안된다면 init대신 bash같은걸로 시스템을 시작한 후 직접 마운트 해보고 어디서 문제가 생기는지 확인해보는 것도 좋을 것 같습니다.
lilo.conf의 append에 init=/bin/bash 를 추가하면 시스템이 시작할 때 init대신 bash로 시작합니다. rc.sysinit같은건 전혀 실행되지 않습니다. 여기서 / 파일시스템을 rw로 리마운트한후 이것 저것 점검해보면 될 것 같습니다.
----
데스크탑 프로그래머를 꿈꾸는 임베디드 삽질러
댓글 달기