文件浏览器的挂载权限机制

文件浏览器的挂载权限机制

当我执行使用“mount”命令的脚本时,我需要输入我的 sudo 密码。但是,我可以启动像 nautilus 这样的文件浏览器并从该应用程序挂载文件系统,而无需输入密码。允许某些程序执行通常需要 root 权限的命令的机制是什么?

我的第一直觉是它是 suid,但我将脚本的所有者更改为 root 并设置了 suid 标志,即“chmod 4777”,但我仍然无法在脚本中执行需要 root 权限的操作。

答案1

尽管 suid shell 脚本始终被视为安全风险,但您需要指定-pshell 标志以防止 shell 将 uid 恢复为真实的 uid。

所以你应该添加:

#!/bin/sh -p

到脚本的开头

相关内容