博主的新3路由器(newifi D2)刷入Openwrt固件之后,挂载的分区那里,一直显示剩余空间太低了。
所以,接上U盘之后,就想把它挂载到这些分区上去。这样,空间不足的问题就能解决了。
如是,就开始着手解决了:
文章目录
Openwrt挂载U盘到根目录
不知道是我技术问题,还是最新版的openwrt固件问题,挂载非常麻烦,个人固件默认支持ext3、ext4
大部分过程差不多。
PC端个人用的是windows系统自带的Powershell工具。
路由器端:
opkg install kmod-usb-storage kmod-usb-ohci kmod-usb2 kmod-usb-uhci #默认
opkg install block-mount #新版挂载已经集成了block-hotplug block-extroot
如图(输入完成之后,回车来执行命令):
我的不需要kmod-fs-ext3,也没有
opkg install e2fsprogs fdisk
2、 将U盘插到路由器上,再执行命令: fdisk -l
通过最下面一行可以知道我的u盘是/dev/sda
3、下面开始格式化U盘(U盘内的东西会全部清空,事先要做好备份)
mkfs.ext3 /dev/sda
4、将系统内所有文件同步到U盘:(备份配置和软件等)
不知道你固件有没有自动挂载u盘
先执行
umount /dev/sda
再(以下可参照大多数教程)
mount /dev/sda /mnt #挂载U盘第一个分区到/mnt
mkdir /tmp/root #在/tmp目录下创建名叫root的一个目录
mount -o bind / /tmp/root #挂载并同步系统根目录“/”到 /tmp/root
cp /tmp/root/* /mnt -a #拷贝/tmp/root下所有文件到 “/mnt”,这个其实就是你的U盘了
umount /tmp/root 卸载 /tmp/root#
如图:
修改/etc/config/fstab
vi /etc/config/fstab
ps: 进入文档的编辑状态之后,切换输入法为英文,然后,按一下A键,就切换到输入输入字符状态了。输入或是修改完内容之后,按一下 冒号+wq 即可保存并退入文档的编辑状态。
注意系统有没有自动挂载,并生成配置
把你的修改或添加成这个样:
config mount
option enabled '1'
option device '/dev/sda'
option uuid '3bf045ff-cd4a-4bdd-ac2b-dacad14b46b3' #这个可以作为参考,具体#请百度获取uuid的方法,我这里用了自己U盘的uuid
option fstype 'ext4' #我的是ext4
option options 'noatime' #感觉没什么影响
option target '/overlay' #感觉是我一直不成功的关键,我没参考网上,一定不能注释
5、重启路由器,路由器将会从U盘启动系统
reboot
重启之后,powelshell连接就自动断开了。
再进路由器后台,就会发现,挂载设置当中的那些分区大小,几乎已经同U盘大小一致了:
至此,openwrt挂载u盘启动成功。
PS: 如果不成功,请自行寻找原因,请恕我无能为力,我的尝试了很多次,发现就是 option target加上后就成功了.
这时,博主发现这个/rom的分区几乎没有剩余空间了。如是,就把它也挂载到U盘上去:
因为U盘的/dev/sda已经挂载到/mnt当中了,如是,就在/mnt/sda目录下再创建一个空目录rom,并把这个空目录挂载到原本的/rom当中即可。
代码如下:
mkdir /mnt/sda/rom
mount /mnt/sda/rom /rom
执行完之后,就变成这样了:
是不是很简单?!
评论