You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

嵌入式Linux开发板运行时扩展eMMC rootfs根分区方案咨询

问题原因

你执行resize2fs失败的核心原因是:resize2fs只能调整分区内的ext4文件系统大小,而你当前/dev/mmcblk2p2分区本身的边界就只有4.3G,文件系统已经完全占满整个分区,因此会提示无需调整。你需要先修改磁盘分区表扩大/dev/mmcblk2p2的分区容量,再调整文件系统大小。

操作步骤

操作前请务必备份/dev/mmcblk2p2内的重要数据,避免误操作导致数据丢失:

  1. 确认分区关键参数,执行fdisk -l /dev/mmcblk2,再次核对/dev/mmcblk2p2的起始扇区为196608,这个参数全程不能修改,否则会导致分区数据完全损坏。
  2. 进入fdisk交互模式修改分区表:
    fdisk /dev/mmcblk2
    
    依次执行以下操作:
    • 输入p回车,打印当前分区表,二次确认/dev/mmcblk2p2的起始扇区为196608
    • 输入d回车,输入2回车,删除原有/dev/mmcblk2p2分区(该操作仅修改内存中的临时分区表,未写入磁盘,不会立即丢失数据)
    • 输入n回车,依次选择主分区、分区号2,起始扇区必须输入196608,结束扇区根据你的需求填写:要扩到12G就输入对应扇区数值,直接回车则默认使用eMMC所有剩余空间
    • 弹出是否删除ext4签名的提示时,必须输入N回车,否则会清空文件系统数据
    • 输入t回车,输入2回车,输入83回车,将新分区的类型设置为Linux
    • 输入p回车,核对新的/dev/mmcblk2p2起始扇区为196608,大小符合预期
    • 输入w回车,将分区表写入磁盘并退出fdisk
  3. 刷新内核分区表,执行partprobe /dev/mmcblk2,如果命令报错,重启一次系统确保内核识别到新的分区大小。
  4. 扩容文件系统,执行resize2fs /dev/mmcblk2p2即可,如果不需要占满整个分区,也可以指定目标大小,例如扩容到10G执行:resize2fs /dev/mmcblk2p2 10G。

量产场景优化

如果需要批量部署,你可以将上述流程封装为开机自启脚本,加入首次开机执行逻辑:第一次开机自动完成扩容,执行完成后写入标记文件,后续开机不再触发,既不会增大镜像体积,也不需要人工干预。

内容的提问来源于stack exchange,提问作者Talel BELHAJSALEM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 10:15:04