Linux: 폴백을 사용하여 루트 파일 시스템 지정

Linux: 폴백을 사용하여 루트 파일 시스템 지정

필요한 모든 작업을 수행하기 위해 initrd/initramfs를 사용할 수 있다는 것을 알고 있지만 가능하다면 이 옵션은 사용하지 않고 싶습니다.

"정상적으로" 작동하는 rootfs가 필요합니다(중요한 경우 임베디드 시스템의 SD 카드에 있음). 어떤 이유로든 부팅이 성공하지 못하는 경우(예: 커널이 이 시스템을 완전히 마운트할 수 없는 경우) "정상" 파일 시스템 복원을 담당하는 "복구" rootfs(Flash의 SquashFS)에서 부팅을 시도해야 합니다. 재시작.

initramfs를 사용하지 않고도 이와 같은 기능을 사용할 수 있습니까?

initrd/initramfs를 원하지 않는 이유는 플래시 크기의 제한 때문입니다.

답변1

initramfs와 동일한 목적으로 "복구" 시스템을 사용할 수 있습니다. 거의 같은 것입니다.

물론 initramfs와 같은 방식으로 RAM에 로드되지는 않지만 이것이 유일한 차이점이며 여전히 동일한 목적을 수행할 수 있습니다. 실제 rootfs를 마운트하고 괜찮은지 확인하고 여기에 피봇루트를 연결한 후 실행합니다. /sbin/init. 마운트가 실패하면 복구를 수행합니다.

(그 반대로, 장치에 해당 도구를 보관할 만큼 충분한 RAM이 있는 경우 squashfs 파일 시스템을 제거하고 대신 모든 복구 도구를 initramfs에 넣을 수 있습니다.)

관련 정보