【问题标题】:Make user account a sudo account使用户帐户成为 sudo 帐户
【发布时间】:2015-04-20 14:31:34
【问题描述】:

不幸的是,互联网对这个查询没有多大帮助,希望这里的人有一些见解。

我希望将我的 OSX (Yosemite) 用户帐户设为 sudo 帐户,但我似乎找不到方法。我可以打开 sudo 帐户,它只会在登录屏幕上给我一个“其他...”帐户,这对任何人都没有用 - 我想避免在 shell 中一直使用sudo,有登录专用帐户更麻烦。

真的没有办法简单地将 sudo 分配给帐户,就像您将 Windows 用户设置为管理员一样?

这似乎是你可以在 Debian 中做的事情,所以这显然不是一个疯狂的请求……

【问题讨论】:

标签: macos admin sudo


【解决方案1】:

sudo (Super User Do) 是一个命令行程序,而不是帐户的属性。

正如@alexwlchan 建议的那样,有一个 sudoers 文件控制谁可以使用 sudo 命令以及他们调用它时的作用。

根据您的问题,我认为问题在于您不想在终端中重复使用该命令。

一种选择是使用 sudo 打开一个新的 bash shell。这将以 root 身份运行,允许执行所有命令,而无需在它们前面放置 sudo。为此,只需键入:-

sudo bash

当然,为了提高安全性,建议您改用 sudo。通过确保您必须调用 sudo,它还使用户知道该操作将由具有管理权限的人执行,并让用户更多地考虑他们的操作。

【讨论】:

  • 啊有趣。我的同事可以在不使用sudo 的情况下启动与我相同的命令,这可能是由于模块安装不正确或类似原因造成的吗?基本上使用npm 很痛苦。
  • @NathanHornby 如果只是使用导致问题的 npm,这些说明(将 npm 设置为对非 root 用户可用)可能有用:stackoverflow.com/q/16724259/1558022
  • 抱歉,我不了解 npm,但听起来您的同事对其访问或使用的文件的权限设置不同。检查两台机器上 npm 的所有者和组。
【解决方案2】:

在“系统偏好设置”的“用户和组”窗格中使用户(您自己?)成为“管理员”用户(您可以通过单击“允许用户管理此计算机”框来实现;是的,只有管理员用户可以更改它)。

没有“sudo 用户”之类的东西,但允许 sudo 是特定用户的属性,OS X 将其称为“管理员用户”。

详细信息: 底层属性是用户是admin unix 组的成员,如果您有兴趣查看血淋淋的详细信息,那就是/etc/sudoers 文件(可见仅限管理员用户),这表示admin 组中的每个人都可以 sudo 任何东西。

【讨论】:

  • 那我不明白你的问题——你应该已经可以sudo了;你的“sudo 帐户”。如果问题是您不想经常重新输入密码,那么您可以延长 sudo 超时时间(请参阅man sudoers,尽管这是一个令人困惑的手册页)。如果您希望对特定资源进行非 root 访问(npm?),那么您可以调查更改该资源的权限,例如使其归您所有,或者您所属的组。
猜你喜欢
  • 1970-01-01
  • 2020-05-13
  • 2013-12-06
  • 2014-06-08
  • 1970-01-01
  • 1970-01-01
  • 2019-01-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多