지정된 루트를 사용할 수 없을 때 initramfs에서 /는 무엇을 마운트합니까?

지정된 루트를 사용할 수 없을 때 initramfs에서 /는 무엇을 마운트합니까?

(initramfs)시스템이 완전히 부팅되지 않고 프롬프트 상태가 되는 문제를 조사하고 있습니다 . 시스템은 부트로더 x86역할을 합니다 .grub

문제는 어떤 이유로 하드 드라이브를 찾아 마운트할 수 없는 것 같습니다.

/그런데 하드디스크에 마운트할 수 없는데도 뭔가가 마운트되어 있습니다 /.

(initramfs) mount
rootfs on / type rootfs (rw)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,realtime)
proc on /proc type proc (rw,nosuid,nodev,noexec,realtime)
udev on /dev type devtmfs (rw,nosuid,realtime,size=2016684k,nr_inodes=504171,mode=755)
devpts on /dev/pts type devpts (rw,suid,noexec,realtime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,realtime,size=404616k,mode=755)

따라서 명시적으로 설치된 디렉토리 이외의 디렉토리는 모두 어딘가에서 온 것입니다.

(initramfd) ls
dev    bin    etc    lib    var    run    scripts    proc
root   init   conf   lib64  sbin   sys    tmp 

질문:

  • 이 경우 무엇이 설치되어 /있으며 어디에서 왔습니까?
  • /boot/initrd.img-4.9.0부팅 가능한 시스템에 있는 initramfs 이미지입니까?
  • initramfs의 스크립트가 완료된 후 grub하드 드라이브 파티션에서 스크립트를 읽습니까?/

답변1

실제로 루트로 마운트되는 것은 initramfs.

initramfs이러한 혼란은 그것을 일을 수행하는 실체로 취급하는 데서 발생하는 것 같습니다 .그렇지 않다, 커널 다음에 로드되며 파일 시스템인 콘텐츠 홀더에 지나지 않습니다. :)

일단 설치되면 initramfs하나의 거대한 바이너리 블록이 되지 않고 커널이 최대 잠재력을 발휘하도록 돕는 커널 모듈과 스크립트가 포함됩니다.

initramfs이를 "연결"되어 grub초기화를 위해 커널에 전달되는 USB 스틱으로 생각할 수 있습니다 /.

관련 정보