我正在使用Yocto和它的wic
工具来构建我的嵌入式Linux映像。
wic
配置文件如下所示:
part /boot --source bootimg-partition --ondisk mmcblk --fstype=msdos --label boot --align 1024 --fixed-size 64
part / --source rootfs --ondisk mmcblk --fstype=ext4 --label root_a --fixed-size 256 --active
part / --source rootfs --ondisk mmcblk --fstype=ext4 --label root_b --fixed-size 256
part /permanent-storage --ondisk mmcblk --fstype=ext4 --label permanent-storage --fixed-size 300
part swap --ondisk mmcblk --size 64 --label swap --fstype=swap
我将生成的映像刻录到我的SD卡并成功引导,出现了一个意外的小(1K(分区:
root@eval:/dev# ls -lrt /dev/mmcblk0*
brw-rw---- 1 root disk 179, 0 Feb 27 21:55 /dev/mmcblk0
brw-rw---- 1 root disk 179, 4 Feb 27 21:55 /dev/mmcblk0p4
brw-rw---- 1 root disk 179, 2 Feb 27 21:55 /dev/mmcblk0p2
brw-rw---- 1 root disk 179, 3 Feb 27 21:55 /dev/mmcblk0p3
brw-rw---- 1 root disk 179, 5 Feb 27 21:55 /dev/mmcblk0p5
brw-rw---- 1 root disk 179, 1 Feb 27 21:55 /dev/mmcblk0p1
brw-rw---- 1 root disk 179, 6 Feb 27 21:55 /dev/mmcblk0p6
root@eval:/dev# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 59.6G 0 disk
|-mmcblk0p1 179:1 0 64M 0 part
|-mmcblk0p2 179:2 0 256M 0 part /
|-mmcblk0p3 179:3 0 256M 0 part
|-mmcblk0p4 179:4 0 1K 0 part
|-mmcblk0p5 179:5 0 300M 0 part
`-mmcblk0p6 179:6 0 64M 0 part
为什么wic要创建这个分区,我如何用我的wic文件来消除它?谢谢
mmcblk0p4
(1K(分区是一个扩展分区。当使用主启动记录(MBR(将存储分区为4个以上分区时,必须使用3个主分区和1个扩展分区。这是因为最多有4个主分区。扩展分区可以容纳多个逻辑分区。
mmcblk0 <- Entire Storage
|--mmcblk0p1 <- Primary Partition 1
|--mmcblk0p2 <- Primary Partition 2
|--mmcblk0p3 <- Primary Partition 3
|--mmcblk0p4 <- Extended Partition
|--mmcblk0p5 <- Logical Partition 1
|--mmcblk0p6 <- Logical Partition 2
这不是Yocto特有的。我使用Buildroot并有类似的布局。共同点是磁盘分区方法,而不是Linux发行版。
- 维基百科:磁盘分区
- Serverfault:Linux上的主分区与扩展分区