在 redis 服务器上工作时,我发现有一个选项可以重命名 scracy 命令以避免意外更新。是否有任何适用于 bash 的选项,即 Ubuntu Linux,尤其是关机、rm 和重启命令。在 Google 上搜索时,我发现了一些选项,例如更新 .bashrc 等,但我想要一种全局方法,因为可以有许多用户或一个人可以编辑他的 .bashrc 文件。
答案1
关机、重启和重启命令
rm
是 POSIX 环境所必需的。如果您不希望用户删除文件,请删除他们对包含该文件的目录的写权限,并且不要授予他们 root 用户访问权限。
可以编辑他的 .bashrc 文件
如果您要启动强制菜单或受限环境,请不要允许用户编辑其 .profile 或 .bashrc 文件。相反,通过 ssh 访问,强制某人仅运行一个命令的更安全方法是使用ForceCommand
。
为了防止任何用户在“解锁”之前重新启动,请考虑更改 systemd 服务以插入未满足的依赖项。RHEL KB 中有一个示例实现:systemd:如何防止 root 重新启动,直到采取规定的操作 还有另一个实现称为 reboot-guard。
如果正在使用 polkit(它可能用于 GUI),则另一种方法是编写规则以抑制非特权用户发生的事件(如“org.freedesktop.consolekit.system.restart”)。
如果您的用户可以在受限环境中运行,请强制他们使用容器或 chroot 执行所有操作。您必须在此处提供软件环境,因此它对主机而言不是全局的。但它是隔离的。
答案2
不要直接修改系统命令。为避免此类冲突,您可以为关机命令创建别名。
$ sudo vi .bashrc
别名 anyname='shutdown'
[保存并退出]
$ . .bashrc
$ 任意名称