扩展 OpenWrt SquashFS 固件的 Root 分区大小

由于 OpenWrt 官方 SquashFS 固件的文件系统大小是固定的,默认的 root 分区不会自动扩展到设备的所有可用空间。本问将介绍如何通过扩展 root 分区来充分利用设备的存储空间。

注意:此方法适用于尚未启动或写入磁盘的镜像文件。若系统已启动,squashfs 分区大小已确定,只能使用 losetup 挂载并使用 resize.f2fs 进行扩展。

环境准备

  • 操作系统:Ubuntu
  • 工具需求ddparted

以下是详细的操作步骤。


1. 安装必要工具

确保 Ubuntu 系统中已安装 parted 工具。大多数 Linux 发行版中默认自带 dd 工具。

sudo apt update
sudo apt install parted

2. 扩展镜像文件大小

使用 dd 命令在镜像文件 openwrt_squashfs_expanded.img 中添加空白空间,以便为后续的分区扩展提供空间。

dd if=/dev/zero bs=1M count=5120 >> openwrt_squashfs_expanded.img
  • if=/dev/zero:生成零字节数据。
  • bs=1M:数据块大小为 1MB。
  • count=5120:生成 5GB 的空白空间。
  • >> openwrt_squashfs_expanded.img:将空白数据追加到镜像文件末尾。

执行完后,镜像文件的大小将增加 5GB。

3. 使用 parted 查看并调整分区表

使用 parted 命令调整镜像文件的分区。

进入 parted 命令行界面

sudo parted openwrt_squashfs_expanded.img

查看当前分区信息

parted 命令行中使用 print 命令查看分区情况:

(parted) print

示例输出:

Model:  (file)
Disk /root/openwrt_squashfs_expanded.img: 5545MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      33.6MB  50.3MB  16.8MB  primary  ext2         boot
 2      67.1MB  176MB   109MB   primary

可以看到:

  • 分区 1(boot 分区):大小为 16.8MB,文件系统类型为 ext2
  • 分区 2(root 分区):大小为 109MB。

4. 扩展 Root 分区大小

parted 命令行中,使用 resizepart 命令将第 2 个分区的大小扩展到镜像文件的 100%:

(parted) resizepart 2 100%

5. 验证分区扩展情况

使用 print 命令再次查看分区信息:

(parted) print

可能的输出示例:

Model:  (file)
Disk /root/openwrt_squashfs_expanded.img: 5545MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:

Number  Start   End     Size    Type     File system  Flags
 1      33.6MB  50.3MB  16.8MB  primary  ext2         boot
 2      67.1MB  5545MB  5478MB  primary

可以看到分区 2 的大小已经扩展到 5478MB,成功扩展。

操作成功后,退出 parted

(parted) quit

6. 将镜像写入 SD 卡

分区扩展完成后,使用 Rufus 等工具或者使用 dd 命令将 openwrt_squashfs_expanded.img 写入 SD 卡。

7. 启动设备并验证分区扩展

将 SD 卡插入设备并启动后,使用以下命令检查 / 分区大小:

df -h /

如果显示的 / 分区大小接近 5GB,说明分区扩展成功。


总结

本文介绍了如何在 Ubuntu 系统中扩展 OpenWrt 的 SquashFS 固件的 root 分区。通过 dd 扩展镜像文件大小,并通过 parted 调整分区,可以让 root 分区充分利用设备的存储空间。这一操作对于大容量存储设备用户尤为有用,为后续使用 OpenWrt 提供了更充足的存储空间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值