通常我们并不以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.
如果想把admin组的用户都sudo不用密码那么可以将这一行换为:"%admin ALL=(ALL) NOPASSWD: NOPASSWD
ALL
"即可。
  2. 如果仅仅想让jay用户sudo不需密码,则可添加"jay ALL = NOPASSWD:
ALL"这样一行。
  3. 如果让jay用户sudo不用密码即可执行某几个命令,可这样写"jay ALL = NOPASSWD:
/usr/bin/abc.sh, /usr/sbin/adduser
"
  4. 欲知其他更多配置方式,请运行"man
sudoers"看帮助文档吧。
注意:我自己的一个配置没生效,找原因还找了阵子,写到这里吧。
我添
加"jay ALL = NOPASSWD: ALL"这样一行;但是,jay执行sudo时还是需要输入密码,这是为什么?
原来是,
我这一行在"%admin ALL=(ALL) ALL"组策略之前前,后面的组配置覆盖了前面的配置,而jay属于admin组,所以需要密码。
这时,
只需要将%admin行用#注释掉即可。
OK!然后立马就生效了,可能执行sudo时系统都会去读取/etc/sudoers的,所以立即就生效了。
--------------------------------------------------------
另外,附带公司某服务器的一个/etc/sudoers配置:
Defaults    env_reset
Defaults
syslog=auth
Defaults
log_year,logfile=/var/log/sudo.log
User_Alias ABC = abc
Cmnd_Alias

DEFAULT=/bin/*,/sbin/ldconfig,/sbin/ifconfig,/usr/sbin/useradd,/usr/sbin/userdel,/bin/rpm,/usr/bin/yum,/sbin/service,/sbin/chkconfig,sudoedit

/etc/rc.local,sudoedit /etc/hosts,sudoedit
/etc/ld.so.conf,/bin/mount,sudoedit /etc/exports,/usr/bin/passwd
[!-]*,!/usr/bin/passwd root,/bin/su - [!-]*,!/bin/su - root,!/bin/su
root,/bin/bash,/usr/sbin/dmidecode,/usr/sbin/lsof,/usr/bin/du,/usr/bin/python,/usr/sbin/xm,sudoedit

/etc/profile,sudoedit /etc/bashrc,/usr/bin/make,sudoedit
/etc/security/limits.conf,/etc/init.d/*,/usr/bin/ruby
ABC
ALL=(ALL)NOPASSWD:DEFAULT
转自:http://renyongjie668.blog.163.com/blog/static/1600531201066102017514/

 
 
================================================
通过修改/etc/sudoers
sudo vi /etc/sudoers
把/etc/sudoers里面最后一行
%admin ALL=(ALL)
改为
%admin ALL=(ALL) NOPASSWD: NOPASSWD: ALL
编辑完之后使用wq!而不是wq退出
 
--------------------------------------------
ubuntu 13.04:
 
#%sudo    ALL=(ALL:ALL) ALL
%sudo    ALL=(ALL:ALL) NOPASSWD: NOPASSWD: ALL

Linux/Ubuntu sudo不用输入密码的方法的更多相关文章

  1. [转]Linux/Ubuntu sudo不用输入密码的方法

      通常我们并不以root身份登录,但是当我们执行某些命令 (command)时需要用到root权限,我们通常都是用"sudo command"来执行command.由于使用Ubu ...

  2. sudo: /etc/sudoers is mode 0777, should be 0440 单用户 sudo不用输入密码的方法

    sudo权限问题考察一题  su -   sudo su -    sudo su - test [root@localhost ~]# su - zzx   #root用户进行切换不需要输入密码 [ ...

  3. 远程登录linux不用输入密码的方法

    原创文章,欢迎阅读,未经博主允许禁止转载. ssh免密登录,使用密钥认证.执行以下命令,一路回车,就生成了密钥认证.然后,ssh登录,scp等都不用密码了. $ ssh-keygen -t rsa $ ...

  4. sudo 不用输入密码

    3. 设置当前登陆用户免密 使用visudo打开sudoers并编辑 sudo visudo 在刚才编辑的内容中加上NOPASSWD: linuxidc ALL=(ALL:ALL) NOPASSWD: ...

  5. Linux ssh 不需要输入密码的方法

    采用证书的方法可以解决ssh不需要输入密码的问题. 本文采用CentOS的操作系统,创建SSH的key,并在两台或多台机器间实现信任.从而实现SSH登录不需要输入密码的功能. 首先,在一台机器上创建S ...

  6. Linux(ubuntu)下固定IP的方法

    写在前面,问:为什么要固定ip.答:要知道固定IP的好处多多,随意搬动,固定共享地址,不怕断网等等 首先,我们要选取一个局域网内的IP,方法如下: 1.选取IP号段,一般是路由器DCHP以外的IP地址 ...

  7. Linux Ubuntu 开机自动启动项设置方法 例:svn服务

    在init.d目录建立一个脚本文件svnd.sh # cd /etc/init.d # vim svnd.sh 输入svnd.sh内容如下(/kaifa/svn 为svn仓库目录): #!/bin/b ...

  8. linux普通用户权限设置为超级用户权限方法、sudo不用登陆密码

    以用户zato为例 普通用户权限设置为超级用户权限 进入有超级用户权限的账号 添加文件可写(w)权限 sudo chmod u+x /etc/sudoers 编辑/etc/sudoers文件 添加语句 ...

  9. windows远程连接Linux(Ubuntu)的方法

    需要做的工作: 1.在Linux(Ubuntu)端安装.设置好SSH 2.下载putty,并通过putty的SSH连接登录Linux 一 .如何在Linux(Ubuntu)端安装.设置好SSH,获取I ...

随机推荐

  1. DDD Example

    PART 1: http://www.infoq.com/presentations/model-to-work-evans PART 2: http://www.infoq.com/presenta ...

  2. Html 字体大小单位 px em pt

    网页上定义字体大小有常见三种单位,px.em.pt px px是pixel缩写,是基于像素的单位.在浏览网页过程中,屏幕上的文字.图片等会随屏幕的分辨率变化而变化,一个100px宽度大小的图片,在80 ...

  3. IE11下Forms身份认证无法保存Cookie的问题

    ASP.NET中使用Forms身份认证常见的做法如下: 1. 网站根目录下的Web.config添加authentication节点 <authentication mode="For ...

  4. 浅谈压缩感知(三十):压缩感知重构算法之L1最小二乘

    主要内容: l1_ls的算法流程 l1_ls的MATLAB实现 一维信号的实验与结果 前言 前面所介绍的算法都是在匹配追踪算法MP基础上延伸的贪心算法,从本节开始,介绍基于凸优化的压缩感知重构算法. ...

  5. 一键QQ聊天与一键加群QQ功能

    最新有项目要求,点击页面上的一个按钮,实现直接启动QQ聊天,添加QQ群的功能. 开始以为会很复杂,百度后发现QQ已经有考虑到这方面的需求,只需进入:QQ推广 -> 推广工具 就能看到如下界面

  6. paip.日志中文编码原理问题本质解决python

    paip.日志中文编码原理问题本质解决python 默认的python日志编码仅仅gbk...保存utf8字符错误..输出到个eric5的控制台十默认好像十unicode的,要是有没显示出来的字符,大 ...

  7. ecshop2.72文件结构说明

    ECShop 2.7.2 的结构图及各文件相应功能介绍 ECShop 2.7.2 upload 的目录┣ activity.php 活动列表┣ affiche.php 广告处理文件┣ affiliat ...

  8. Speech两种使用方法

    COM组件使用speech: public class Speach { private static Speach _Instance = null ; private SpeechLib.SpVo ...

  9. tbb flow graph node types

  10. Initializing a collection

    Before Java 1.7, only this one is permitted: ArrayList<String> a = new ArrayList<String> ...