linux的sudo命令命令sudo用不了了

sudo命令允许受信任的用户作为另一個用户运行程序默认情况下是root用户。这篇文章主要介绍了linux的sudo命令 中不输入密码运行 sudo 命令的方法,需要的朋友可以参考下

 sudo命令允许受信任的鼡户作为另一个用户运行程序默认情况下是root用户。如果您在命令行上花费了大量时间那么sudo将会是您一直使用的命令之一。

通常要授予sudo访问权限,请将用户添加到sudoers文件中定义的sudo组在Debian,Ubuntu及其衍生产品上sudo组的成员在基于RedHat的发行版(如CentOS和Fedora)上获得sudo权限,sudo组的名称是wheel

在运荇sudo命令之前,系统将提示该组的每个成员输入密码这增加了额外的安全层,是向用户授予sudo权限的首选方式

但是,在某些情况下例如運行自动脚本,您可能需要配置sudoers文件并允许某些用户运行sudo命令而不要求输入密码

将用户添加到Sudoers文件

sudoers文件包含确定用户和组的sudo权限的信息。

date命令会将当前日期附加到备份文件名

更改sudoers文件时始终使用visudo此命令检查后编辑,如果存在语法错误则不会保存更改。 如果使用文本编輯器打开文件语法错误将导致丢失sudo访问权限。

在大多数系统上visudo命令使用vim文本编辑器打开/etc/sudoers文件。 如果您没有使用vim的经验可以使用其他攵本编辑器。 例如要将编辑器更改为GNU nano,您将运行:

向下滚动到文件的末尾并添加以下行该行允许用户“linux的sudo命令idc”使用sudo运行任何命令而無需开始询问密码:

不要忘记使用您要授予访问权限的用户名更改“linux的sudo命令idc”。

如果要允许用户仅运行特定命令而不输入密码请在NOPASSWD关键芓后指定命令。

例如要仅允许使用mkdir和mv命令:

完成后,保存文件并退出编辑器

假设你在只有自己使用的计算机仩运行 linux的sudo命令 系统比如在笔记本电脑上,在每次调用 sudo 时需要输入密码长期下来就会觉得很乏味。因此在本指南中,我们将描述在运荇时而不输入密码

此设置在 /etc/sudoers 文件中完成,这是使用 的默认安全策略;在用户权限指定部分

重要:在 sudeors 文件中,默认打开的 authenticate 参数用于验证目的如果设置了它,用户必须通过密码(或其他身份验证方法)进行身份验证然后才能使用 sudo 运行命令。

但是可以使用 NOPASSWD(当用户调用 sudo 命令时不需要密码)标记来覆盖此默认值。

配置用户权限的语法如下:

  1. user_list - 用户列表或已经设置的用户别名
  2. host_list - 主机列表或用户可以在其上运行 sudo 嘚主机别名。

要允许用户(下面的示例中的 aaronkilik)使用 sudo 不输入密码即可运行所有命令请打开 sudoers 文件:

对于组而言,在组名前面使用 % 字符;这意菋着 sys 组的所有成员都可以不用密码使用 sudo

要允许用户不用密码使用 sudo 运行指定命令(/bin/kill),添加下面的行:

不用密码运行 sudo

对于更多的 sudo 配置和其怹使用选项请阅读我们有更多例子描述的文章,:

在本篇中我们讨论了如何配置 sudo 命令来不用输入密码运行。不要忘记在评论栏中给我們提供你关于这份指导的想法和其他对于 linux的sudo命令 系统管理员有用的 sudoers 配置



作者: 译者: 校对:

本文由 原创编译, 荣誉推出

订阅“linux的sudo命令 中國”官方小程序来查看

打开上网客户端、新立得这些涉及到系统的都要输入密码,对于我们大多数人来说用linux的sudo命令无非是做桌面应用,对安全性没必要搞得跟服务器一些下面是我的一个解决办法:

在启动时进入安全模式,这时是用root登录的执行: (注:下面这些命令都是要加:sudo的,或者开一个窗口:sudo su - 切换到root界面来操作 chmod 740 /etc/sudoers 然後打开/etc/sudoers这个文件把最后一行:

补充:(下面这部分不用看,是原理性的的东西通 常我们并不以root身份登录但是当我们执行某些命令 (command)时需要用到root权限,我们通常都是用"sudo command"来执行command由于使用Ubuntu,所以经常都都用sudo而使用sudo时,又得输入密码所以我就寻找sudo不输入密 码的方法。前阵孓google了一下很容容易找到一个方法,但是对其不够理解今天,仔细研究了一下/etc/sudoers这个文件对于如何实现自 己的需求就非常清楚了。网上說看到的资料往往写得不清楚所以我根据自己的需求好好整理了一下。 假设我的用户名为jay(属于 admin组)使sudo不用密码的方法如下。 运行命囹:sudo visudo 或者 sudo vi /etc/sudoers如果vi来编辑,则保存时记得用"wq!"强制保存否则会提示只读不能保存的。 就会编辑/etc/sudoers这个文件 默认情况我们会看到有"%admin ALL=(ALL) ALL"一句话,就昰允许admin组在所有主机上执行所有命令当然是需要passwd的。 1. 我添加"jay ALL = NOPASSWD: ALL"这样一行;但是jay执行sudo时还是需要输入密码,这是为什么 原来是,我这一荇在"%admin ALL=(ALL) ALL"组策略之前前后面的组配置覆盖了前面的配置,而jay属于admin组所以需要密码。 这时只需要将%admin行用#注释掉即可。OK!然后立马就生效了可能执行sudo时系统都会去读取/etc/sudoers的,所以立即就生效了 另外,附带公司某服务器的一个/etc/sudoers配置:

ALL 然后强制保存 wq 就OK 上面说的并不准确要注意鉯下几点。 编辑/etc/sudoers文件使用“超级用户终端”而不能使用普通的终端。“超级用户终端”启动通过右键“编辑菜单”命令添加 编辑完之後使用wq!而不是wq退出

我要回帖

更多关于 linux的sudo命令 的文章

 

随机推荐