如何在不给他root密码的情况下给予用户root权限

情况是这样的:

  • 我有一个开发机器,我想(需要)有访问权限
  • 我们的pipe理员使用他自己的凭据为root用户设置机器。 解释是如果出现问题或者他需要改变一些东西,他只需要记住一个密码
  • 然后他继续给每个用户访问“sudo”而不询问密码

现在我真的不喜欢sudo不会提示我input密码的事实。 如何使用户configuration看起来像给了我和pipe理员完整的根权限(2login),与sudo提示我为我的密码(而不是根)看起来像?

inputvisudo ,你会看到这样的东西:

 <your_user> ALL=(ALL) NOPASSWD:ALL 

如果你想让sudo提示input密码,只需删除NOPASSWD

 <your_user> ALL=(ALL) ALL 

UPDATE

正如@MikeyB提到的,默认情况下, sudo会提示input调用用户的密码。 但是如果你打开targetpw标志:

 Defaults targetpw 

sudo会询问目标用户的密码。

答案在于你使用visudo(8)编辑的sudoers(5)文件。

正如那里的exmaples向你展示的那样,你目前的sudoers设置将如下所示:

%wheel ALL = (ALL) NOPASSWD: ALL

您可以将其更改为:

%wheel ALL = (ALL) ALL

这只是一个评论…一些新的sudo可能会做以下的错误:sudo -u root -i或sudo -s或sudo -i – >这有效果要求你自己的密码,然后如果你重新成功给你一个全新的shell环境(/ bin / bash)以root权限运行… Wonderfull …是的,但是,那么“sudo-新手”想创build一个文件…他键入以下内容: sudo touch myEpicStoriesWithSudo.txt

– >当然,现在sudo会要求input密码,但不是你自己的! 根源之一,因为你不是你 – >你是根

你可以用你想要的任何通用用户来replaceroot,当我们去sudo“sudo -u oracle -i”时,我遇到了很多DBA的问题)

我希望这可以帮助你与sudo和伴随它的所有精神分裂症问题;)问候