QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2146|回复: 1

KanKer 的 sudo_add 脚本有问题,但不知道是不是 bash 版本原因

[复制链接]
发表于 2013-5-31 08:05:56 | 显示全部楼层 |阅读模式
bash-4.2.29
不知道是不是 bash 版本的原因,因为类似 $var = " var" 的判断都是错误的,要改成 “$var"="var"
不过我的确想不通为什么会在 mysql 和 postgresql 那里 line in $lines 分成了两个
  1. #lines=$(grep -E "bash|csh|ksh|bin/sh" /etc/passwd)
  2. #for line in $lines;do echo $line; done

  3. root:x:0:0:root:/root:/bin/bash
  4. shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
  5. mysql:x:27:27:MySQL
  6. Server:/var/lib/mysql:/bin/bash
  7. postgres:x:26:26:PostgreSQL
  8. Server:/var/lib/pgsql:/bin/bash
  9. haulm:x:1000:1002::/home/haulm:/bin/bash
复制代码
  1. #!/bin/sh
  2. #作者: KanKer
  3. #设置第一个普通用户的sudo权限

  4. gid=500
  5. lines=$(grep -E "bash|csh|ksh|bin/sh" /etc/passwd)
  6. for line in $lines;do
  7. tmpgid=$(echo "$line"|cut -f3 -d ":")
  8. if [ $tmpgid -ge $gid ];then
  9. tmpuser=$(echo "$line" |cut -f1 -d ":")
  10. if [ -n "$tmpuser" ];then
  11. echo "$tmpuser ALL=NOPASSWD:/bin/mount -t iso9660 -o loop\,ro\,nodev\,exec\,nosuid\,* */Mount-ISO*,/bin/umount */Mount-ISO*,/usr/sbin/pppoe-connect,/usr/sbin/pppoe-start,/usr/sbin/pppoe-status,/usr/sbin/pppoe-stop" >> /etc/sudoers
  12. fi
  13. fi
  14. done
复制代码
  1. #!/bin/sh
  2. #设置第一个普通用户的sudo权限
  3. gid=500
  4. cat /etc/passwd|while read line
  5. do
  6. if (echo $line|grep -E "x:[0-9]*"|grep -E "bash|csh|ksh|bin/sh">/dev/null)
  7. then
  8.   lines=$line
  9. tmpgid=$(echo "$lines"|cut -f3 -d ":")
  10. if [ "$tmpgid" -ge "$gid" ]
  11. then
  12. tmpuser=$(echo "$lines" |cut -f1 -d ":")
  13. if [ -n "$tmpuser" ]
  14. then
  15. echo "$tmpuser ALL=NOPASSWD:/bin/mount -t iso9660 -o loop\,ro\,nodev\,exec\,nosuid\,* */Mount-ISO*,/bin/umount */Mount-ISO*,/usr/sbin/pppoe-connect,/usr/sbin/pppoe-start,/usr/sbin/pppoe-status,/usr/sbin/pppoe-stop" >> /etc/sudoers
  16. fi
  17. fi
  18. fi
  19. done
复制代码
发表于 2013-5-31 09:47:36 | 显示全部楼层
把#!/bin/sh,改成#!/bin/bash -x,就可以调试脚本了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-2 00:26 , Processed in 0.037643 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表