'initrd'에 해당되는 글 2건

  1. 2011.11.23 SATA 와 IDE 하드 순서 인식 뒤바뀌는 문제
  2. 2010.09.19 mkinitramfs
Linux2011. 11. 23. 10:52
IDE 80GB / sda
SATA 500GB / sdb 에 붙어야 하는 시스템인데
(아래는 정상부팅시 mount 상태)

어떤 이유인지 가끔 부팅시에
SATA 500GB / sda
IDE 80GB / sdb
로 붙고 sda는 그나마
파티션도 제대로 인식을 못하는 경우가 있다.



검색을 하다 포기했는데 또 같은일이 벌여져서 우씨! 하고 BIOS 옵션 뒤져봐도 안나오고 -_-
포기한 마음에 한글로 검색해봤는데 똭~!

흐음.. initrd를 공부해 봐야하나?

fedora 9의 커널 버전별로 인식되는 순서가 달라져서
각 커널의 /var/log/dmesg를 비교해보니
nforc4 메인보드라서 libata가 로드되면서 pata_amd와 sata_nv가 로드되는데 
문제가 일어나는 경우는 부팅시 sata_nv가 pata_amd보다 먼저 로드되더군요.
그래서 pata_amd가 sata_nv보다 먼저 로드되도록 /boot/initrd 이미지를 새로 만들었습니다.
mkinitrd --preload=pata_amd initrd-$(uname -r).img_new $(uname -r)
새로 만들어진 initrd 이미지로 부팅하니 문제가 해결됬네요.

[링크 : http://www.ubuntu.or.kr/viewtopic.php?p=1888



음.. 내 시스템에서는 initrd가 문제가 아니고.. SATA 컨트롤러 문제인가?
순서가 바뀌는건 아닌데 하드 인식을 제대로 못하는군...

2011/11/23 - [프로그램 사용/SMB(Samba)] - samba에 갑작스러운 "엑세스 거부"

'Linux' 카테고리의 다른 글

iptables MASQUERADE (공유기 만들기?)  (0) 2011.12.04
리눅스를 라우터로 만들기  (0) 2011.12.02
vlan과 ip alias  (0) 2011.11.05
xz 압축프로그램  (2) 2011.10.28
리눅스에서 파일 복구  (0) 2011.10.24
Posted by 구차니
Linux2010. 9. 19. 14:04
mkinitramfs는 initrd.img 파일을 만드는 스크립트이다.
$ whereis mkinitramfs
mkinitramfs: /usr/sbin/mkinitramfs /usr/share/man/man8/mkinitramfs.8.gz

$ ll mkinitramfs*
-rwxr-xr-x 1 root root 9588 2010-04-27 00:16 mkinitramfs*
-rwxr-xr-x 1 root root 1931 2010-04-27 00:16 mkinitramfs-kpkg*

$ file mkinitramfs*
mkinitramfs:      POSIX shell script text executable
mkinitramfs-kpkg: POSIX shell script text executable

이 녀석의 인자로는 [version] 이라는 값이 들어가는데,
이 값은, /lib/modules/[version] 값의 경로에서 필요한 데이터를 추출한다.
$ mkinitramfs

Usage: /usr/sbin/mkinitramfs [OPTION]... <-o outfile> [version]

Options:
  -d confdir  Specify an alternative configuration directory.
  -k          Keep temporary directory used to make the image.
  -o outfile  Write to outfile.
  -r root     Override ROOT setting in mkinitrd.conf.

See mkinitramfs(8) for further details.

아무튼 나의 경우에는, apt-get으로 받은 우분투 커널 소스를 컴파일 하여 설치된 경로가
/usr/src/linux-source-2.6.32 였고, 컴파일 하여 생성되는 모듈들의 경로는
/lib/modules/2.6.32.15+drm33.5/ 였다. 이런 이유로, uname 으로 출력되는 경로와 다르게 되어
기본값으로 생성되는 initrd.img의 내용에는 modules.dep 파일이 없어서 구동이 되지 않는다.

물론, initrd.img의 크기는 실제 장착된 메모리의 용량을 넘어서지만 않으면 된다고 하지만,
내가 생성해낸 이 파일의 용량은 65M가 되어서 부팅에 조금 오래 걸리고,
약간의 설정상 문제가 있는지 Xwindow가 구동하지 않았다 -_-

기본적인 우분투의 initrd.img의 크기는 7.6M 정도이다.



'Linux' 카테고리의 다른 글

커널의 종류(kind of kernels)  (0) 2010.09.21
bash - 이전 디렉토리로 이동하기 move to previoud directory  (2) 2010.09.19
top (1) - load average ?  (4) 2010.09.12
curl  (0) 2010.09.11
verbose가 모야?  (4) 2010.07.29
Posted by 구차니