我正在开发 Fedora 29(64 位),我们公司有一个安全的浏览器软件,我们为美国各地数百万学生提供标准化测试。现在我们陷入了困境。学生使用标准帐户登录 Fedora 笔记本电脑。他们应该安装安全浏览器,然后运行它来开始测试。
问题是:我们似乎无法找到一种方法让学生在不将标准帐户添加到 sudoers 文件中的情况下安装安全浏览器。每次尝试在标准帐户上安装安全浏览器时,我们都会收到错误 - 类似“此用户未添加到 sudoers 文件中”的错误。
因此我了解到,在标准帐户下安装任何软件的唯一方法是将标准帐户添加到 sudoers 文件中,从而使帐户成为管理员。我们正在努力避免这种情况,并找到一种方法来安装任何软件,而无需将标准帐户更改为管理员帐户。有没有办法做到这一点?当我们尝试在标准帐户下安装它并运行终端并使用 SU,然后使用另一个具有管理员权限的帐户(如 su admin)时,它会在该用户帐户下安装软件,而不是标准帐户。因此,安装任何软件(更不用说安全浏览器)的唯一方法似乎是将标准帐户提升为管理员,安装软件,然后将其恢复为标准。这是唯一的方法吗?
答案1
您可以使用 来做您想做的事情。您应该像这样sudo
在记录中定义/etc/sudoers
student1 ALL= NOPASSWD: /usr/bin/yum install special-browser
或者这是您希望用户提供密码
student1 ALL=/usr/bin/yum install special-browser
因此student1
用户只能执行(通过sudo
)命令 /usr/bin/yum install special-browser
(带有完整路径yum
)
如果学生都属于同一组,那么您可以使用特殊语法来管理单个 sudo 规则,而不是为每个用户名管理一个规则。如果“User_Spec”以百分号(%
)开头,则以下名称将被视为组名称:
%students ALL=/usr/bin/yum install special-browser
如果未yum
分发,请随意更改命令。