关于crontab执行shell失败的问题

jxdyzwh 2013-04-10 02:09:56
*/1 * * * * root /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh
我在crontab是这样设置的,但是报告不成功,也chmod +x test_cron.sh这个文件了,
test_cron.sh的内容如下
#!/bin/bash
echo `date`>>time.txt
但是手动执行是成功的
/bin/sh /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh
...全文
374 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuch 2013-04-14
  • 打赏
  • 举报
回复
3楼、5楼、17楼正解: 输出的 time.txt 没有使用写绝对路径,当脚本在crontab中运行时,会在当前路径直接写入文件,可能就会遇到权限问题。 可能楼主不知道什么是绝对路径,就是将test_cron.sh的内容更成如下即可: #!/bin/bash echo `date`>> /home/wwwroot/wanleke/websocket/ftpshell/time.txt
Linux-Torvalds 2013-04-13
  • 打赏
  • 举报
回复
*/1 * * * * root /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh 这个crontab是如何写如的?/etc/crontab当中么?还是手动crontab -e对当前用户的?
nemopang 2013-04-13
  • 打赏
  • 举报
回复
引用 6 楼 jxdyzwh 的回复:
[root@wanleke-data-server ftpshell]# /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh -bash: /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh: Permission denied
权限问题呀 你的写操作,都用绝对路径,指定有写权限的地方就可以了
wjcody 2013-04-11
  • 打赏
  • 举报
回复
time.txt用绝对路径看看... 虽然没看明白你到底是个什么情况,没执行成功 又会有结果...
jxdyzwh 2013-04-11
  • 打赏
  • 举报
回复
[root@wanleke-data-server ~]# ls -al /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh -rwxr-xr-x 1 root root 33 Apr 10 13:57 /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh
prohibit 2013-04-10
  • 打赏
  • 举报
回复
crontab里定义了一个PATH:PATH=/sbin:/bin:/usr/sbin:/usr/bin,保证你的脚本在这些path下,或把你脚本的路径加到这个path里去; 以前在ubuntu里遇到过,就是这样解决的
fdl19881 2013-04-10
  • 打赏
  • 举报
回复
ls -al /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh 把输出帖出来
justkk 2013-04-10
  • 打赏
  • 举报
回复
看了半天,都没看明白你的问题。

一会好了,一会正常了,一会有数据了,一会又失败了。。
jxdyzwh 2013-04-10
  • 打赏
  • 举报
回复
/home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh 这个也能正常执行了
linux-c 2013-04-10
  • 打赏
  • 举报
回复
你 sh 那个脚本,已经当作脚本在运行了没有执行权限也可以运行,但是crontab的时候,没有执行权限是不行的,这个可以直接输入脚本绝对路径看报错就看的出来。。。
linux-c 2013-04-10
  • 打赏
  • 举报
回复
引用 6 楼 jxdyzwh 的回复:
[root@wanleke-data-server ftpshell]# /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh -bash: /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh: Permission denied
Permission denied ---没有权限嘛。。。。
jxdyzwh 2013-04-10
  • 打赏
  • 举报
回复
执行失败,老大,手动输入 /bin/sh /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh 就没有问题
justkk 2013-04-10
  • 打赏
  • 举报
回复
执行失败?数据还写入了?!
jxdyzwh 2013-04-10
  • 打赏
  • 举报
回复
time.txt这个没有错,数据已经写入了
jxdyzwh 2013-04-10
  • 打赏
  • 举报
回复
[root@wanleke-data-server ftpshell]# /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh -bash: /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh: Permission denied
justkk 2013-04-10
  • 打赏
  • 举报
回复
引用 3 楼 erhou134 的回复:
time.txt 给它定个绝对路径呗
++
linux-c 2013-04-10
  • 打赏
  • 举报
回复
直接输入 /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh 看看报错吗?
空的 2013-04-10
  • 打赏
  • 举报
回复
time.txt 给它定个绝对路径呗
jxdyzwh 2013-04-10
  • 打赏
  • 举报
回复
楼上的,我试过了,没有用,都重/sbin/service crond restart了,5分钟过去还是没有用
fdl19881 2013-04-10
  • 打赏
  • 举报
回复
/usr/bin/root /home/wwwroot/wanleke/websocket/ftpshell/test_cron.sh

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧