grub2-install이 chroot 감옥을 탈출할 수 있는 이유는 무엇입니까?

grub2-install이 chroot 감옥을 탈출할 수 있는 이유는 무엇입니까?

나는 이상한 경험을 했다. 시나리오: 저는 initrd(실제로는 initramfs)에서 실행되는 Linux 설치 프로그램(OpenSUSE 12.2 기반)을 작성 중이며 부트로더를 업데이트하려고 합니다. 새로 설치된 파일 시스템의 복사본이 /root에 설치됩니다.

그래서 이 명령을 실행하면 다음과 같은 결과가 출력됩니다.

+ echo 'Installing boot loader'
Installing boot loader
+ chroot /root bash -c '(ls -l /lib/modules/*/modules.dep; grub2-install /dev/sda)'
-rw-r--r-- 1 root root 45590 Apr 24 15:32 /lib/modules/3.4.47-default/modules.dep
modprobe: FATAL: Could not load /lib/modules/3.4.47-default/modules.dep: No such file or directory

오류가 여러 번 반복된 후 "설치가 완료되었습니다. 보고된 오류가 없습니다."라는 메시지가 표시됩니다.

명령 앞에 이 코드를 넣으면:

mkdir -p /lib/modules/
ln -s ../../root/lib/modules/3.4.47-default/ /lib/modules

잘 작동해요!

Installing boot loader
Installation finished. No error reported.

누구든지 이것을 설명할 수 있나요?

답변1

이것은 Linux 모듈 자동 로딩으로, grub2-installLinux가 모듈을 로드하고 실행할 수 있도록 다양한 유형의 파일 시스템을 마운트하려고 시도합니다.

관련 정보