我正在使用 buildroot 为我的 raspi A+ 构建自定义 linux 系统。
使用 genimage,我在1 GB 的 sdcard上创建了两个分区。第一个分区是引导分区。它是 vfat 并且是32 MB。第二个分区是 ext4,它是 rootfs,它是512 MB。
一旦我用新刻录的 sdcard 启动我的 raspi 并输入,df -h
我就会在输出中得到这个:
Filesystem Size Used Available Use% Mounted on
/dev/root 17.1M 14.0M 1.8M 89% /
devtmpfs 200.6M 0 200.6M 0% /dev
tmpfs 200.7M 0 200.7M 0% /dev/shm
tmpfs 200.7M 0 200.7M 0% /tmp
tmpfs 200.7M 4.0K 200.7M 0% /run
如您所见,/dev/root
是 17.1 MB 而不是 512 MB。
然后,我发出cat /proc/partitions
:
major minor #blocks name
1 0 4096 ram0
1 1 4096 ram1
1 2 4096 ram2
1 3 4096 ram3
1 4 4096 ram4
1 5 4096 ram5
1 6 4096 ram6
1 7 4096 ram7
1 8 4096 ram8
1 9 4096 ram9
1 10 4096 ram10
1 11 4096 ram11
1 12 4096 ram12
1 13 4096 ram13
1 14 4096 ram14
1 15 4096 ram15
179 0 969728 mmcblk0
179 1 32768 mmcblk0p1
179 2 524288 mmcblk0p2
我们清楚地看到 sdcard (mmcblk0) 为 1 GB,引导分区 (mmcblk0p1) 为 32 MB,rootfs 分区 (mmcblk0p2) 为 512 MB。
因此,为了说服自己 mmcblk0p2 分区可能安装不当,我再次安装它mount -t ext4 -o rw /dev/mmcblk0p2 /mnt
,然后df -h
再次发出:
Filesystem Size Used Available Use% Mounted on
/dev/root 17.1M 14.0M 1.8M 89% /
devtmpfs 200.6M 0 200.6M 0% /dev
tmpfs 200.7M 0 200.7M 0% /dev/shm
tmpfs 200.7M 0 200.7M 0% /tmp
tmpfs 200.7M 4.0K 200.7M 0% /run
/dev/mmcblk0p2 17.1M 14.0M 1.8M 89% /mnt
同样,我看到 mmcblk0p2 大小为 17.1 MB。
所以,我的问题是为什么cat /proc/partitions
返回我的 rootfs 分区的预期大小,而df -h
返回完全不同的虚假大小?