둘 사이의 차이점은 무엇입니까?
initramfs.cpio만 사용할 수 있나요? 아니면 둘 다 사용해야 하나요?
실제로 내 rootfs.cpio 파일은 7MB이고 initramfs.cpio는 0.5MB에 불과하므로 initramfs.cpio를 사용해도 되는지 궁금합니다.
답변1
그것은 모두 당신이 달성하고자 하는 것에 달려 있습니다.
Rootfs는 ramfs(또는 활성화된 경우 tmpfs)의 특별한 인스턴스입니다. 대부분의 시스템은 rootfs에 다른 파일 시스템을 마운트하고 이를 무시합니다. ramfs의 빈 인스턴스는 매우 적은 양의 공간을 차지합니다.
Linux 커널에는 커널 부팅 시 rootfs로 추출되는 gzip으로 압축된 "cpio" 형식 아카이브가 포함되어 있습니다. 압축을 푼 후 커널은 rootfs에 "init" 파일이 포함되어 있는지 확인하고, 포함되어 있으면 PID 1로 실행합니다. 발견된 경우 init 프로세스는 실제 루트 장치(있는 경우) 찾기 및 마운트를 포함하여 시스템의 나머지 부분을 완료하는 작업을 담당합니다. 내장된 cpio 아카이브를 rootfs로 추출한 후 rootfs에 init 프로그램이 없으면 커널은 레거시 코드를 사용하여 루트 파티션을 찾아 마운트한 다음 여기에서 /sbin/init의 일부 변형을 실행합니다.