Linux下如何不输入密码执行sudo命令

作为ubuntu等桌面系统,默认登录的帐号是没有root权限的,为了提升权限来执行任务,我们一般用到sudo+命令来执行,但是不难发现我们一般都要输入密码。那么有没有什么方法可以让我们执行sudo的时候不输入密码呢?当然有咯。那就是对sudoers文件进行修改。

如何修改sudoers?直接修改/etc/sudoers么?不,那样子修改很容易造成权限错乱。奶牛手动修改的时候,由于对于格式并不是那么了解,所以编辑的时候报错很多次,因此不建议用直接修改法。我们可以用visudo来进行编辑。

进入终端,执行sudo visudo

在#User privilege specification下面会罗列一些规则,我们现在需要做的是对我们的用户进行一些操作。假如我们的用户名为nenew

在文件的最后一行添加:

nenew    ALL=(ALL) NOPASSWD: ALL

然后保存退出,执行

sudo usermod -aG admin nenew

重启下看看nenew帐号执行sudo还需要密码么?这里我们需要了解顺序这个问题,在ubuntu的wiki上有比较详细的介绍。

%admin ALL=(ALL) ALL
这行只是让admin组的用户拥有可以像任何帐号一样执行命令的能力,但是还是需要有密码的,因此我们需要把我们的nenew用户加入到admin组中,所以有sudo usermod -aG admin nenew ,然后是对其进行NOPASSWD定义,这行一定要在%admin ALL=(ALL) ALL 这行后面,才会生效。

文章发玩之后很多朋友提出不安全问题来,确实,这样是存在安全隐患的。奶牛此文的目的也只是想让各位了解下sudoers的那个生效的顺序,当然,我们可以把最后的

nenew    ALL=(ALL) NOPASSWD: ALL 更改为对于命令进行限制,例如对于关机命令取消密码

nenew    ALL=(ALL) NOPASSWS: /sbin/shutdown, /sbin/halt, /sbin/reboot

时间: 2024-11-05 16:31:39

Linux下如何不输入密码执行sudo命令的相关文章

Linux下普通用户执行sudo命令不需要密码问题的解决

环境:VirtualBox4.1 + RedHat Linux 6 + Putty0.62 问题:当普通 用户执行sudo命令时,会提示你输入当前用户的密码.使用这个命令目的就是为 了安全.方便,每次输入密码就会显得麻烦.所以提供如下的解决办法.只需要 以前的基础上添加NOPASSWD就行. 解决: 1.添加可以执行root命 令的用户,详情参考XXX is not in the sudoers file解决. 2.在以前的 基础上添加代码 user_name ALL=(ALL) NOPASSW

Linux下非交互式远程执行命令脚本

  Linux下非交互式远程执行命令脚本(比ssh更好的方式) openssh在每台机器上都有,ssh与scp经常出现在我们的生活中. 然而当要管理的机器规模越来越大时,ssh登陆到目标机器进行管理就变得不现实了. 虽然可以直接在ssh后面接命令的方式,进行命令的执行. 但是ssh的严格的权限认证使得我们不得不输入密码,或是建立信任关系,很难去自定义一个特定的认证方式. 基于ssh的这种不足.于是笔者就写了一个jetfire,这个工具.比ssh多的一个重要的功能就是可以自定义认证方式,顺便避免了

linux下Mysql的启动关闭的命令

 下面我来为各位介绍linux下Mysql的启动关闭的命令,有需要了解的朋友不防进入看看吧.     linux下Mysql的启动关闭(本文基于centos6.4.mysql5.7.3),mysql安装在/usr/local/mysql目录下: [root@lnmp ~]# /usr/local/mysql/bin/mysql --version /usr/local/mysql/bin/mysql  Ver 14.14 Distrib 5.7.3-m13, for Linux (x86_64)

linux下查看动态链接库依赖关系的命令 x86: ldd *.so arm: arm-linux-readelf -d *.so 实际例子: 以项目中用到的库librtsp.so分析: lijun@ubuntu:~/workspace$ arm-hisiv100nptl-

linux下查看动态链接库依赖关系的命令 x86:ldd    *.so arm:arm-linux-readelf    -d    *.so 实际例子:以项目中用到的库librtsp.so分析:lijun@ubuntu:~/workspace$ arm-hisiv100nptl-linux-ld -d librtsp.so arm-hisiv100nptl-linux-ld: warning: liblog.so, needed by librtsp.so, not found (try u

Linux 下dmidecode查看内存条数的命令介绍_Linux

在linux下有很多命令,可以查看机器的硬件信息. 这里介绍一个查看内存的条数等信息的方法. 相看硬件信息,仅适合ubuntu系列发行版: lshw Linux 下查看内存条数: dmidecode |grep -A16 "Memory Device$" 有关dmidecode命令的详细用法,请参考这篇文章:linux查看主板内存槽与内存信息的命令dmidecode . 以上就是小编为大家带来的Linux 下dmidecode查看内存条数的命令介绍全部内容了,希望大家多多支持~ 以上是

如何在Linux中不输入密码运行sudo命令

假设你在只有自己使用的计算机上运行 Linux 系统,比如在笔记本电脑上,在每次调用 sudo 时需要输入密码,长期下来就会觉得很乏味.因此,在本指南中,我们将描述如何配置 sudo 命令在运行时而不输入密码. 此设置在 /etc/sudoers 文件中完成,这是使用 sudo命令的默认安全策略;在用户权限指定部分. 重要:在 sudeors 文件中,默认打开的 authenticate 参数用于验证目的.如果设置了它,用户必须通过密码(或其他身份验证方法)进行身份验证,然后才能使用 sudo

如何在 Linux 中不输入密码运行 sudo 命令

假设你在只有自己使用的计算机上运行 Linux 系统,比如在笔记本电脑上,在每次调用 sudo 时需要输入密码,长期下来就会觉得很乏味.因此,在本指南中,我们将描述如何配置 sudo 命令在运行时而不输入密码. 此设置在 /etc/sudoers 文件中完成,这是使用 sudo 命令的默认安全策略:在用户权限指定部分. 重要:在 sudeors 文件中,默认打开的 authenticate 参数用于验证目的.如果设置了它,用户必须通过密码(或其他身份验证方法)进行身份验证,然后才能使用 sudo

linux下使用ssh远程执行命令批量导出数据库到本地_linux shell

前天正在跟前端的同事调试功能.服务器开好,模拟的玩家登录好,就在倒计时.这时突然运营的同事跑过来说要统计几个服务器玩家的一些情况,也就是需要从几个服的数据库导出部分玩家的数据.好吧,我看了一下时间,11:47.心想,跟前端调试完,去吃个饭再午休一下那就下午再给吧.没想对方来一句"就导个数据库而已,要这么久么?",而且还是直接跟我上司说的.我嚓,好吧,我导.可问题来了,平时的统计是由php做的,批量部署这些是由运维做的.服务端完全没有对应的工具.而且服务器是在阿里云上的,数据库的用户是限

Linux下容易被忽视的那些命令用法

本文适合在linux下开发的同学阅读,需要具备基本的linux操作命令. 一.前言 工作中发现很多同学对于Linux下的命令不太熟悉,尤其是一些功能强大的工具,使用者很少.正所谓工欲善其事,必先利其器.本文总结了Linux下常用命令的用法,希望能够帮助大家提升日常开发的效率. 二.命令 1.strace strace用于跟踪程序执行过程中的系统调用,如跟踪test进程,只需要: strace -p [test_pid] 或直接strace ./test  但如果需要: 跟踪进程内的线程: -f