rootfs.squashfs가 포함된 ext4 형식의 SD 카드

rootfs.squashfs가 포함된 ext4 형식의 SD 카드

ext4 파일 시스템이 있는 SD 카드가 포함된 임베디드 시스템이 있습니다. ext4 파일 시스템에 rootfs.squasfs가 있고 이를 부팅하려고 합니다. SD 카드를 마운트한 다음 squashfs를 마운트할 수 있는 initramfs를 만들었습니다. 하지만 루트로 전환할 수는 없습니다. 시도하면 exec switch_root /newroot /linuxrc충돌이 발생합니다.

/ # mount
rootfs on / type rootfs (rw)
/dev/root.old on / type ext3 (rw,relatime,errors=continue,barrier=1,data=ordered)
/proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
/dev/mmcblk0p1 on /tmp type ext4 (rw,relatime,data=ordered)
/dev/loop0 on /newroot type squashfs (ro,relatime)

/ # exec switch_root /newroot /linuxrc
BusyBox v1.22.1 VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
0700          119920 loop0  (driver?)
b300         7634944 mmcblk0  driver: mmcblk
  b301          262144 mmcblk0p1 00000000-0000-0000-0000-000000000000
  b302          262144 mmcblk0p2 00000000-0000-0000-0000-000000000000
  b303         2202010 mmcblk0p3 00000000-0000-0000-0000-000000000000
b310            4096 mmcblk0boot1  (driver?)
b308            4096 mmcblk0boot0  (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[<c000eab4>] (unwind_backtrace+0x0/0xfc) from [<c041b0d4>] (panic+0x94/0x1c0)
[<c041b0d4>] (panic+0x94/0x1c0) from [<c0592c9c>] (mount_block_root+0x194/0x224)
[<c0592c9c>] (mount_block_root+0x194/0x224) from [<c0592f20>] (mount_root+0x108/0x110)
[<c0592f20>] (mount_root+0x108/0x110) from [<c0593b6c>] (initrd_load+0x270/0x360)
[<c0593b6c>] (initrd_load+0x270/0x360) from [<c0593010>] (prepare_namespace+0xe8/0x1d8)
[<c0593010>] (prepare_namespace+0xe8/0x1d8) from [<c0592970>] (kernel_init+0x1b4/0x1bc)
[<c0592970>] (kernel_init+0x1b4/0x1bc) from [<c0009ccc>] (kernel_thread_exit+0x0/0x8)
(2015-04-07 17:27:21 CDT) multi-call binary.

Usage: switch_root [-c /dev/console] NEW_ROOT NEW_INIT [ARGS]

누군가 내가 뭘 잘못하고 있는지 이해하도록 도와줄 수 있나요?

관련 정보