[电脑] [分享] 给你的openwrt根分区扩容

当你安装较多插件时,默认的根目录容量实在有些捉襟见肘,或是默认根分区不符合硬盘的大小,此时你可以增加根目录的容量。

扩展虚拟硬盘,实体硬盘可忽略此步骤。

vmware
在你需要操作的虚拟机点击编辑按钮进入虚拟机设置,选择硬盘,点击扩展,然后输入你需要的容量后点击确定。
hyper-v
使用bootice打开虚拟硬盘,点击vhd信息,然后点击重设容量,输入你需要的容量后点击确定,关闭bootice。

分区和转移根目录

使用ssh工具连接路由器,然后安装以下软件。
lsblk 用于列出硬盘。
cfdisk 用于硬盘分区,支持EFI带有容易操作的文本菜单。
block-mount 用于在luci界面控制设备挂在和分区调整。
可输入以下命令
opkg update && opkg install cfdisk lsblk block-mount
安装完成后输入cfdisk /dev/sda打开cfdisk界面,注意此处的/dev/sda应输入你硬盘的位置,可使用lsblk查看硬盘,一般主板识别的第一个sata硬盘可能是sda,第一个nvme硬盘可能是nvme0n1,第一个emmc闪存盘可能是mmcblk0。
在此界面,上下箭头是选择分区或选择文件系统,左右箭头是选择菜单向,回车确定。
使用上下箭头移动到 create partition并回车,在partition size输入框输入你需要的大小,如果保持默认,就是所有容量,回车确认。
设置完大小后,使用左右箭头移动到 change partition type菜单项回车,在分区类型中选择linux file system,如果你只听到了uuid而不是分区类型,你可以选择                       0FC63DAF-8483-4772-8E79-3D69D8477DE4                     菜单项,选择完成后回车确认。
选择好分区类型后,选择write回车,然后输入yes回车,然后选择quit回车离开cfdisk。
创建好分区后你需要格式化才能使用,你可以使用各种linux支持的文件系统,一般使用ext4或f2fs,如果你是大容量固态硬盘或者闪存盘或者存储卡建议使用f2fs,否则使用ext4。
再次使用lsblk命令,查看新分区的设备文件位置,了解之后输入格式化命令。
如果你的新分区是/dev/sda4,想要使用ext4文件系统,可输入以下命令格式化。
mkfs.ext4 /dev/sda4
如果你的新分区是/dev/nvme0n1p4,想要使用f2fs文件系统,可输入以下命令。
mkfs.f2fs /dev/nvme0n1p4
格式化完成后,登陆路由器后台,选择挂载点选项,点击生成配置,然后找到你的新分区,点击编辑,然后选择作为跟文件系统使用,然后选择保存并应用。
改变跟文件系统分区后,在之前ssh连接的命令行界面输入以下命令转移你的根目录。
mkdir -p /tmp/introot
mkdir -p /tmp/extroot
mount --bind / /tmp/introot
mount /dev/sda4 /tmp/extroot
tar -C /tmp/introot -cvf - . | tar -C /tmp/extroot -xf -
umount /tmp/introot
umount /tmp/extroot
注意,挂在命令需要替换为你的分区位置。
转移完成后,输入reboot重启。
重启完成后再次登陆路由器后台查看存储空间,或用ssh登陆命令行界面,输入df -h查看变化。
至此,路由器根分区扩容结束。



2022-11-28 21:33:10 查看数:1088     回复数:0 只看该作者
社区游客