免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2671 | 回复: 8
打印 上一主题 下一主题

[文本处理] cornd 无法正确执行 Shell [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-09-07 22:41 |只看该作者 |倒序浏览
本帖最后由 chinaweed 于 2014-09-07 22:45 编辑
  1. #!/bin/bash
  2. #name:user_add.sh
  3. for newuser in `cut -f 1 -d : /var/www/html/useradd/newUserList`
  4. do
  5. useradd -g netusers $newuser
  6. done
  7. #使用chpasswd命令,批量为新添加的用户创建密码
  8. chpasswd < /var/www/html/useradd/newUserList
  9. #清空newUserList文件
  10. > /var/www/html/useradd/newUserList
复制代码
  1. #权限设置
  2. groupadd -g 510 netusers
  3. chmod 755 user_add.sh
复制代码
PHP在newUserList中添加帐号密码

cornd任务每10分钟执行一次该脚本创建ssh用户
*/10 * * * * su root /var/www/html/useradd/user_add.sh

脚本被执行,但用户并没有被创建,直接在SSH中手工执行脚本可以正常添加用户,不知道怎么回事儿

论坛徽章:
5
未羊
日期:2014-08-04 16:15:21天秤座
日期:2014-08-13 13:52:372015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:112015亚冠之浦和红钻
日期:2015-06-29 15:30:48
2 [报告]
发表于 2014-09-07 22:57 |只看该作者
你su root不需要密码认证吗???

论坛徽章:
0
3 [报告]
发表于 2014-09-08 01:22 |只看该作者
回复 2# dn833


    */10 * * * * root /var/www/html/useradd/user_add.sh

这样写呢?

论坛徽章:
33
ChinaUnix元老
日期:2015-02-02 08:55:39CU十四周年纪念徽章
日期:2019-08-20 08:30:3720周年集字徽章-周	
日期:2020-10-28 14:13:3020周年集字徽章-20	
日期:2020-10-28 14:04:3019周年集字徽章-CU
日期:2019-09-08 23:26:2519周年集字徽章-19
日期:2019-08-27 13:31:262016科比退役纪念章
日期:2022-04-24 14:33:24
4 [报告]
发表于 2014-09-08 07:20 |只看该作者
回复 3# chinaweed


    你测试一下就知道了,没有这样的语法。

论坛徽章:
3
丑牛
日期:2014-09-13 18:19:22摩羯座
日期:2014-10-10 17:43:02水瓶座
日期:2014-10-16 01:00:22
5 [报告]
发表于 2014-09-08 08:42 |只看该作者
看了楼主对su安全不熟啊~
学生党:飘过~
*/10 * * * * su - -c  "/bin/bash /var/www/html/useradd/user_add.sh"

技巧:如果非要su无密码切换可以直接修改/etc/pam.d/su下把用户加入wheel组然后修改require为sufficient,只要验证成功立即返回这样就不需要su密码了,全自动化,但是不太安全,自己权衡吧

论坛徽章:
0
6 [报告]
发表于 2014-09-08 10:20 |只看该作者
回复 5# 李满满


Date: Mon, 8 Sep 2014 06:20:01 +0400
Message-Id: <201409080220.s882K1dL011402@baidu.com>
From: root@baidu.com (Cron Daemon)
To: root@baidu.com
Subject: Cron <root@usa2> su root /var/www/html/useradd/user_add.sh
Content-Type: text/plain; charset=UTF-8
Auto-Submitted: auto-generated
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>

/var/www/html/useradd/user_add.sh: line 8: chpasswd: command not found

提示我 chpasswd: command not found 该怎么处理呢,google不到。。。

论坛徽章:
14
15-16赛季CBA联赛之辽宁
日期:2019-06-16 15:47:3515-16赛季CBA联赛之广夏
日期:2016-08-13 21:24:352015亚冠之武里南联
日期:2015-07-07 17:37:372015亚冠之萨济拖拉机
日期:2015-07-06 17:07:482015亚冠之全北现代
日期:2015-06-04 13:54:272015亚冠之城南
日期:2015-05-21 15:43:212015年亚洲杯之伊朗
日期:2015-04-25 18:20:362015年亚洲杯之伊朗
日期:2015-04-20 16:06:052015年亚洲杯之科威特
日期:2015-03-07 12:51:26丑牛
日期:2014-12-30 10:26:38申猴
日期:2014-09-28 22:40:18金牛座
日期:2014-09-13 21:12:22
7 [报告]
发表于 2014-09-08 10:58 |只看该作者
本帖最后由 reb00t 于 2014-09-08 11:01 编辑

把脚本放到root文件的计划任务里执行,不需要权限转换。

/var/spool/cron/root 写这里(centos为例)

重启下crond进程。

/var/www/html/useradd/user_add.sh: line 8: chpasswd: command not found

加上命令的绝对路径。

论坛徽章:
3
丑牛
日期:2014-09-13 18:19:22摩羯座
日期:2014-10-10 17:43:02水瓶座
日期:2014-10-16 01:00:22
8 [报告]
发表于 2014-09-08 11:36 |只看该作者
和下面充气师父说的那样,用绝度路径或是用eval $(type -p chpasswd) 也可以或是把普通用户的PTH路径改一下再export也可以回复 6# chinaweed


   

论坛徽章:
0
9 [报告]
发表于 2014-09-14 23:27 |只看该作者
谢谢大家!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP