关于存储空间的奇怪逻辑

2022-09-19 11:48:43 +08:00
 sadfQED2

想把 AdGuardHome 部署到路由器上面,于是按照官方文档操作,下载二进制文件,scp 到路由器,然后启动,一切正常。

结果某天,路由器重启了一下,路由器上面 AdGuardHome 、科学上网等,所有服务都不正常了,登陆进路由器排查了半天,最后发现整个磁盘全部变成 read-only 状态了,一脸懵逼,那我重新挂载呗,结果发现不能挂载。网上查资料后才知道,磁盘空间过小就会自动把整个磁盘挂载为 read-only ,而且似乎还没解决办法,只能重刷。

又搞了半天,把固件重刷了。这次装 AdGuardHome 前研究了一下其他插件。发现 ssrplus 是把文件放在 /var 路径的,于是我也照做,然鹅失败了,仔细一看,发现 /var 其实是链接到 /tmp 路径的。我淦,好家伙,居然是放到 /tmp 路径的(这里我还纳闷,这特么重启了咋办,但是心想别人重启都没问题,我也试试)。我又把文件放到 tmp 路径,再次部署完毕,尝试重启。我淦,我的文件没了,但是 ssrplus 居然是正常的,又进路由器一通排查,我淦,/var 路径是 /tmp 的链接,而 /tmp 里面的二进制文件又做了软链接,被链接到了 /usr/bin 里面,这特喵的链接了半天,好家伙回到原点。

我现在十分纳闷:

1 、为什么存储空间低,要把整个磁盘变成 read-only ,还不能恢复,这特喵的不是坑爹么,另外,空间多低会触发,也没找到相关说明

2 、为什么 openwrt 里面的文件都搞一大堆软链接,跳来跳去,结果最后回到原点,这特喵的逗我呢

3 、我 34MB 的二进制文件,为啥能传到 18MB 空间剩余的路径下面,而且最终空间还剩 3MB 。ls -alh看文件空间占用确实是 34MB 。但是df -h看,根路径总空间确实是 18mb ,且剩余 3mb 。(难道这还能压缩?那这读写性能岂不很差?)

412 次点击
所在节点    OpenWrt
1 条回复
Penguium
2022-10-16 15:03:51 +08:00
前一阵子我的 openwrt 也是变只读了 个人认为可能是那天停电导致的 我的固件是自己编译的分区大小设的是 64+2000 的空间 不可能不够
我按网上的教程检查了一下硬盘的错误在修复然后重启后就好了
e2fsck -y /dev/sda2
那天就是用的这个命令后面是分区的路径 改成你自己的再用

也许磁盘变只读是一种自我保护策略?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/881216

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX