登录 立即注册

首页 > 绿虎论坛 > 电脑 > Linux/Unix (发帖)

标题: 原来 mount --bind 可以作用于单个文件

作者: @Ta

时间: 2020-06-09发布,2020-06-09修改

点击: 11038

mount --bind是Linux(包括root后的安卓)中非常有用的命令,它可以用一个文件夹的内容临时覆盖另一个文件夹的内容,在umount的时候内容就会还原。

因为mount本来是用来挂载设备到目录的,我一直以为mount --bind也只能作用于目录,直到我看到了这个:

opts_overwrite_resolv:如果设置为 true,则表示直接使用 I/O 重定向方式修改 /etc/resolv.conf 文件,这个操作是不可逆的,但是可移植性好;如果设置为 false,则表示使用 mount -o bind 魔法来暂时性修改 /etc/resolv.conf 文件,当 ss-tproxy stop 之后,/etc/resolv.conf 会恢复为原来的文件,也就是说这个修改操作是可逆的,但是这个方式可能某些系统会不支持,默认为 false,如果遇到问题请修改为 true;此选项留空则不操作 /etc/resolv.conf

来自 https://github.com/zfl9/ss-tproxy#%E9%85%8D%E7%BD%AE%E8%AF%B4%E6%98%8E

自己试了一下,果然可以,妙不可言:

这样一来,“想要临时修改某文件”、“分区是只读的没法修改”等各种问题都迎刃而解了。

而且我试了一下,在安卓上也是可用的。不过安卓会为每个app设置单独的挂载命名空间mount namespace),只有当前程序能看到mount --bind的更改,其他程序看不到。


[隐藏样式|查看源码]


『回复列表(6|隐藏机器人聊天)』

1.
用户被禁言,发言自动屏蔽。
(/@Ta/2020-06-18 12:34//
被禁言
)

2.
(/@Ta/2020-06-18 12:45//)

3. 这个厉害。
UOS安装的时候全盘安装就会搞出来好多文件夹是mount --bind的,/home /data/home之类的

顺便请教大家,b站的uos运维工程师视频删除了,哪位大神手里有,想学习。谢谢。
(/@Ta/2021-01-16 22:23//)

4. @Mycool,什么视频删除了.
(/@Ta/2021-01-16 23:00//)

5. @罐子,B站的UOS系列培训视频,有桌面管理员的,系统工程师的,以前还有运维工程师的,不过现在没有了。
(/@Ta/2021-01-20 14:43//)

6. 额。不清楚。
(/@Ta/2021-01-20 16:02//)

回复需要登录

5月11日 02:21 星期六

本站由hu60wap6华为CPU驱动

备案号: 京ICP备18041936号-1