我不敢相信没有简单的解决方案(因为这对我来说似乎是一个非常有用的功能),但到目前为止我找不到任何解决方案。
我希望能够(暂时)关闭我自己对正在使用的文件系统的写入权限。比方说,我登录了一个敏感系统,我只想查看文件,但我想避免错误地进行任何更改。
更轻的版本:
如果我拥有的所有写入权限都是由于我所属的组(我现在忽略我的主目录),我可以通过某种方式暂时将自己从这些组中删除来关闭这些权限(newgrp 仅更改我的默认组而不是整个组)组列表)?
当然,在任一版本中,我都要求在没有 root 权限的情况下执行此操作。
答案1
我建议您执行一个脚本,该脚本将覆盖您通常用于编辑文件的所有命令,因此它会使用less
以下命令:
#!/bin/bash
export EDITOR=less
alias vi=less
alias vim=less
alias nano=less
alias pico=less
alias rm=less
这只是一个例子,但通过执行这样的脚本,你修改任何文件的机会肯定会减少(你可能可以完成列表)你甚至可以将这些修改集成到你的.bashrc
或配置文件中,你可以参考这个答案取决于你的外壳所以它将是永久性的,并构建一个脚本来恢复您的别名,这样修改您的系统只是有意的:
#!/bin/bash
export EDITOR=vi
alias vi=vi
alias vim=vim
alias nano=nano
alias pico=pico
alias rm=rm
答案2
如果你确实想保护整个文件系统,那么你可以以只读方式重新挂载它(通常需要 root 权限)。
mount -o remount,ro /file-system/mountpoint