자체 컴파일된 Linux 커널(3.4.1)이 "Unpacking initramfs"에서 중단되지만 더 많은 RAM을 사용하면 성공하는 이유는 무엇입니까?

자체 컴파일된 Linux 커널(3.4.1)이 "Unpacking initramfs"에서 중단되지만 더 많은 RAM을 사용하면 성공하는 이유는 무엇입니까?

Parallels Desktop을 실험적인 환경으로 사용하기 위해 Debian7.11의 Linux 커널을 새로운 3.4.1 버전(원래 버전은 3.2.0)으로 교체하려고 합니다. /boot/에 있는 이전 구성 파일을 사용하고 3.4.1의 새로운 기능에 대한 기본값을 사용하여 새 커널을 구성했습니다.

업그레이드를 마치고 새 커널로 재부팅했는데 "Unpacking initramfs"에서 멈췄습니다. 그러나 RAM(1024MB, 원래 RAM은 512MB)을 더 주자 성공적으로 부팅되었습니다. 그래서 내 질문은메모리가 부족하면 왜 시작할 수 없나요? 커널의 일부 구성 옵션으로 인해 발생합니까? 그렇다면 이를 가능하게 하려면 커널을 어떻게 구성해야 합니까?

커널의 구성 옵션을 살펴보았지만 답변을 얻을 수 없었습니다. 어떤 도움이라도 대단히 감사하겠습니다 :)

답변1

빌드 프로세스에 대한 세부 정보가 부족하여 모듈에 디버그 기호가 포함되어 있기 때문에 모듈이 크다고 추측할 수 있습니다. CONFIG_DEBUG_INFO커널 구성의 설정을 확인 하고INSTALL_MOD_STRIP환경 변수. 에서 Documentation/kbuild/kbuild.txt:

INSTALL_MOD_STRIP, 정의된 경우 설치 후 모듈이 제거됩니다.

관련 정보