ImmortalWrt 的默认镜像只有 300MB 的磁盘空间,安装插件后很容易空间不足。本教程将帮助你解决这个问题

环境

本教程仅适用于以下条件:

  • 系统平台:ImmortalWrt x86/64
  • 镜像版本:ext4-combined(这点非常重要!)

    • 如果不是该类型镜像,请不要继续操作

扩容步骤

1.增加磁盘空间

如果你使用的是独立的软路由设备,且 ImmortalWrt 只是没有利用上所有的磁盘空间,可以跳过这一步。

PVE中增加磁盘空间
PVE中增加磁盘空间

2.安装必要软件包

首先,我们需要安装一些工具来帮助我们完成扩容操作:

opkg install cfdisk resize2fs e2fsprogs losetup

这些工具分别用于:

  • cfdisk: 磁盘分区管理
  • resize2fs: 调整ext文件系统大小
  • e2fsprogs: ext文件系统工具包
  • losetup: 设置和控制循环设备

3.扩容

通过 df -hTfdisk -l /dev/sda 确认当前的分区信息,我这里的 /dev/root/dev/sda2,接下来对 /dev/sda2 进行扩容。

分区信息查看
分区信息查看

执行以下命令进入分区调整界面:

cfdisk /dev/sda

使用键盘上的方向键选择 /dev/sda2 和 下方的 Resize 功能

选择分区
选择分区

选择调整大小功能
选择调整大小功能

输入扩容后的大小后,切换到 Write 功能保存并退出。

现在分区表已经更改,但文件系统还没有扩展。执行以下命令完成扩容:

losetup /dev/loop0 /dev/sda2
resize2fs -f /dev/loop0
reboot

这些命令的作用是:

  1. 将 /dev/sda2 挂载到循环设备
  2. 强制调整该循环设备上的文件系统大小
  3. 重启系统使更改生效

重启后,你可以再次运行 df -hT 来确认扩容是否成功:

扩容成功
扩容成功