本来 html 文件默认是 Chrome 打开的,每次启动百度网盘后都会被它重新设置。在 Ubutu 上配置默认启动应用的文件位于 ~/.config/mimeapps.list
考虑如何阻止 /opt/baidunetdisk/baidunetdisk 修改这个文件,进一步引申到如何限制一个进程能够访问的文件?
在 Linux 上权限边界是 User 而不是应用,任何在当前用户下运行的应用都能获得当前登录用户的所有权限,所以 chmod 设置读写权限没用,它能改回来。
考虑利用 Sandbox 机制,对进程访问文件系统进行隔离,比如利用 chroot 或者 docker ,但是这这玩意只有通过 .deb 包的形式安装。另外 Ubuntu 上有一种 AppArmor 机制可以对进程的资源访问进行限制,可以配置进程允许访问资源的 profile 并让进程在此 profile 下运行。
另外就是直接把文件设置为 unmutable, 可以通过命令 chattr +i ~/.config/mimeapps.list 完成,这样除了 root 用户其他用户都不能修改此文件,但是这样正常默认应用设置也会受限制,也比较麻烦。
总之 Linux 上好像没有自带按照进程细分的文件访问权限管理办法,还有其他思路吗?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.