如何把一个命令加入到某个用户sudo的列表中

有时候我们只需要执行一条root权限的命令也要suroot,是不是有些不方便?这时可以用sudo代替。默认新建的用户不在sudo组,需要编辑/etc/sudoers文件将用户加入,该文件建议使用visudo命令进行编辑(其使用方法跟vim基本一致)

1,首先进行visudo的当前用户必须是root用户,因此需要切换到root, su - (注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用乎的环境变量,用"su -"命令将环境变量也一起带过去,就象和root登录一样)

2,visudo移动光标,到一行root ALL=(ALL)<wbr><wbr> ALL</wbr></wbr>的下一行,按i,插入模式,输入
your_user_name ALL=(ALL)<wbr><wbr> ALL</wbr></wbr>

然后按Esc

输入

再输入:wq!

保存退出

这样就把自己加入了sudo组,可以使用sudo命令了。

3,默认5分钟后刚才输入的sodo密码过期,下次sudo需要重新输入密码,如果觉得在sudo的时候输入密码麻烦,把刚才的输入换成如下内容即可:
your_user_name ALL=(ALL) NOPASSWD: ALL

前面介绍的是如何把一个用户添加到sudo列表中,那么如何把一个命令添加到sudo列表呢,我们以/usr/bin/make这个命令为例子进行说明。首先需要了解该命令是需要添加到哪个用户组,比如用户user_00,对应的用户组是users,所有属于该users用户组的用户都可以通过sudo命令使用/usr/bin/make,则:

1,执行visudo,找到如下的用户组:

%users ALL=NOPASSWD:/usr/sbin/tcpdump, \
/usr/local/apache/bin/*, \
/usr/local/apache/admin/*, \
/usr/local/php/admin/*,/usr/local/nginx/admin/*,/usr/local/pws/admin/*, \
/usr/local/qza_restaurant/admin/*,/usr/local/agw_workshop/admin/*,/usr/local/squid*/admin/* , \
/usr/local/stat/admin/*,/usr/local/services/cmagent-1.0/admin/*

2,在最后添加:/usr/bin/make,如下:

%users ALL=NOPASSWD:/usr/sbin/tcpdump, \
/usr/local/apache/bin/*, \
/usr/local/apache/admin/*, \
/usr/local/php/admin/*,/usr/local/nginx/admin/*,/usr/local/pws/admin/*, \
/usr/local/qza_restaurant/admin/*,/usr/local/agw_workshop/admin/*,/usr/local/squid*/admin/* , \
/usr/local/stat/admin/*,/usr/local/services/cmagent-1.0/admin/*,/usr/bin/make

3,保存退出

4,验证:sudo /usr/bin/make, ok,如果想看当前用户可以sudo操作的命令列表,可以执行如下命令:sudo -l 进行查看。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值