openwrt系统32GTF卡分区问题

需求

在raspberry pi上跑openwrt的时候,需要把系统烧写到TF卡上,但如果TF卡比较大,就会比较浪费,因为openwrt的镜像默认rootfs分区只有不到60MB,而且在TF卡比较大的时候resize2fs会出现问题,比如我的32G卡就会出现问题,经过一系列的查找、验证得出下列解决办法。

正常扩展方法

在ubuntu终端下获取root权限

sudo -s

确定你新挂上去的磁盘文件对应的设备名是什么,我的是/dev/sda

修改磁盘分区

fdisk /dev/sda

p

查询到对应的磁盘分区表信息,里面的sda2中start信息需要记住!!!9216!!!
这里写图片描述

在fdisk中将原有第二个分区删掉

d [enter]

2 [enter]

这里写图片描述

在fdisk中重新创建第二分区,按w保存退出

n [enter]

p [enter]

2 [enter]

9216 [enter]

[enter]

w [enter]

这里写图片描述

使用resize2fs修改分区

resize2fs /dev/sda2

这里写图片描述

但是大容量TF卡在resize2fs的时候会遇到问题。

解决方案一

在resize2fs之前先使用e2fsck修复

e2fsck -f /dev/sda2

resize2fs /dev/sda2

解决方案二

有时候在resize2fs的时候,会出现如下之类的错误

resize2fs: Operation not permitted While trying to add group #6656”

这个问题是由于文件系统预留的Journal size太小导致,Journal size大小默认由e2fsprogs工具自动根据文件系统大小来计算,也可以人为指定。

删除现有Journal空间,重新创建一个新的Journal来解决这个问题。

umount /dev/sda2

e2fsck -C 0 /dev/sda2

tune2fs -O ^has_journal /dev/sda2

tune2fs -j /dev/sda2

e2fsck -C 0 /dev/sda2

上述操作结束后,再用fdisk、resize2fs的一系列操作,重新扩展全盘就OK了。

相关文章
相关标签/搜索
每日一句
    每一个你不满意的现在,都有一个你没有努力的曾经。