固件镜像生成的时候没有设置rootfs_data卷,为啥内核启动后可以查到呢,这个卷的创建过程和挂载过程分析和调整,有便于我们重新创建我们自己想要的卷。
1、rootfs_data卷的创建过程
我们在使用ubinfo -a查看卷信息的时候,可以看到最后面多出了一个rootfs_data的卷,可是我们生成镜像的时候没有设置,说明是代码自动创建的。
root@OpenWrt:~# ubinfo /dev/ubi0 -N rootfs_data
Volume ID: 5 (on ubi0)
Type: dynamic
Alignment: 1
Size: 1717 LEBs (218017792 bytes, 207.9 MiB)
State: OK
Name: rootfs_data
Character device major/minor: 251:6
rootfs_data卷其实是uboot建立的。
上面的章节我们分析过uboot如何启动kernel,其中还有一个流程就是uboot会自动创建rootfs_data卷,代码如下:
ubi_prepare_rootfs=
if ubi check rootfs_data ; then
else
if env exists rootfs_data_max ; then
ubi create rootfs_data $rootfs_data_max dynamic || u