免费注册 查看新帖 |

Chinaunix

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

关于crontab不执行的问题,急! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-05 18:40 |只看该作者 |正序浏览
应客户要求,做oracle的exp和imp的脚本自动备份和恢复测试,单独运行脚本可以执行(虽然有warnings),但是加入到crontab后,始终无法自动执行,后来查看/var/cron/log发现如下错误:

! *** cron started ***   pid = 185 Mon Dec  4 15:15:12 2006
! bad user (oracle) Tue Dec  5 01:00:00 2006
>  CMD: /export/home/oracle/exp.sh
>  oracle 1048 c Tue Dec  5 01:00:00 2006
<  oracle 1048 c Tue Dec  5 01:00:00 2006 rc=1
>  CMD: [ -x /usr/sbin/rtc ] && /usr/sbin/rtc -c > /dev/null 2>&1
>  root 1057 c Tue Dec  5 02:01:00 2006
<  root 1057 c Tue Dec  5 02:01:00 2006 rc=1
>  CMD: /usr/sbin/logadm
>  root 1068 c Tue Dec  5 03:10:00 2006
<  root 1068 c Tue Dec  5 03:10:00 2006
>  CMD: [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
>  root 1082 c Tue Dec  5 03:30:00 2006
<  root 1082 c Tue Dec  5 03:30:00 2006
>  CMD: /export/home/oracle/sys_imp.sh
>  oracle 1811 c Tue Dec  5 17:10:00 2006
! bad user (oracle) Tue Dec  5 17:10:00 2006
<  oracle 1811 c Tue Dec  5 17:10:00 2006 rc=1
! bad user (oracle) Tue Dec  5 18:00:00 2006
>  CMD: su - oracle -c "/export/home/oracle/sys_exp.sh"
>  oracle 1877 c Tue Dec  5 18:00:00 2006
<  oracle 1877 c Tue Dec  5 18:00:00 2006 rc=1
! bad user (oracle) Tue Dec  5 18:10:00 2006
>  CMD: su - oracle -c "/export/home/oracle/sys_imp.sh"
>  oracle 1888 c Tue Dec  5 18:10:00 2006
<  oracle 1888 c Tue Dec  5 18:10:00 2006 rc=1

如何解决这bad user....?请高手赐教,很着急,十分感谢!

论坛徽章:
0
21 [报告]
发表于 2007-02-26 21:16 |只看该作者

忘记说了

感谢 zhoujm1976 (james)  !!!

论坛徽章:
0
20 [报告]
发表于 2007-02-26 21:14 |只看该作者

是密码过期导致crontab不能执行

首先这个问题和环境变量没有关系,这个问题是一个特定的用户的crontab不能执行,而不是Oracle数据库相关脚本不能执行。

我遇到的问题是:

oracle9i 用户,sun solaris8 下的用户的crontab 不能执行,但root中的crontab可以执行,测试脚本
在oracle9i用户:
* * * * * date>/tmp/oracle9i.log

在root用户:
* * * * * date>/tmp/root.log

发现root正常,而oracle9i的crontab不正常,没有执行。

第一怀疑 cron 进程没有启动,或有问题,检查,用/etc/init.d/cron stop

/etc/init.d/cron start启动后问题依然如此。

第二步检查   /etc/cron.d/cron.deny  /etc/cron.d/cron.allow,正常。

上google查,发现可以看http://dbforums.com/t808379.html

检查  /var/cron/log,过一分钟,出现 ! bad user信息。
>  sys 1688 c Mon Feb 26 20:43:00 2007
! bad user (oracle9i) Mon Feb 26 20:43:00 2007

不知如何处理,检查 /etc/passwd 和 /etc/shadow无异常。

后来欢迎密码过期,经过检查确实如此:我们为了搞IT内控,设置了用户密码90天需要修改,

但过了90天没有修改Oracle9i用户的密码,平常用root登录,su - oracle9i使用系统,

没有发现这个问题。

用 passwd -sa 可以看出:


root@xxxxx # passwd -sa
root  PS
daemon  LK
bin  LK
sys  LK
adm  LK
lp  LK
uucp  LK
nuucp  LK
listen  LK
nobody  LK
noaccess  LK
nobody4  LK
oracle9i  PS    02/26/07    0  3000  90


用 passwd -x 3000 oracle9i,修改密码后定时正常,准备不要求经常改oracle9i密码。


因为定时没有执行导致一个空间监控脚本没有执行,从而导致告警短信没有收到,又遇到 omni backup

磁带库故障,archlog 文件很多,未备份走,差一点出问题。


总结:定时不执行,应检查 /var/cron/log文件,看有没有 bad user,有的话应检查密码是否失效。

      环境变量的问题是crontab有执行,但执行不了,和这个问题无关。

论坛徽章:
0
19 [报告]
发表于 2007-02-16 10:20 |只看该作者
passwd oracle
重设一下密码应该就可以了

论坛徽章:
0
18 [报告]
发表于 2006-12-09 03:41 |只看该作者
Few things to check.

1. can you post your /etc/nsswitch.conf file?
2. check your /etc/shadow file and make sure oracle user is in there and the entry is similar to the others. Do not post your shadow file here since it is security sensitive. If necessary, you can sync the two files by using pwconv. Before running it, make sure oracle user exist in /etc/passwd file

论坛徽章:
0
17 [报告]
发表于 2006-12-08 18:54 |只看该作者
我以前碰过和你一样的错误。。是因为oracle的密码过期了
我看了你的操作。一直都没有让你输入oracle密码

你可以试一下先用oracle用户登陆。。是不是密码有问题

论坛徽章:
0
16 [报告]
发表于 2006-12-08 16:19 |只看该作者
你现在的问题是oracle这个用户不能用crontab吧?你可以先试试看先执行一个简单的脚本比如`date看能不能执行。在提示符下crontab -l查看一下,把你的sys_exp.sh这个文件和相关的文件贴出来看看

[ 本帖最后由 yuio654 于 2006-12-8 16:21 编辑 ]

论坛徽章:
0
15 [报告]
发表于 2006-12-06 21:20 |只看该作者
是在/var/spool/cron/crontabs下多了个文件oracle,里面就是你做的内容,但是到点儿执行的时候就。。。唉

论坛徽章:
0
14 [报告]
发表于 2006-12-06 20:32 |只看该作者
对了默认情况下,用哪个用户建立crontab,那么/etc/cron.d目录下的文件就是哪个用户名
如果用oracle用户建立crontab,那/etc/cron.d/目录下就多一个oracle的文件,好像是哦,会不会是因为文件名&用户名不一致

论坛徽章:
0
13 [报告]
发表于 2006-12-06 20:31 |只看该作者
那真抱歉了。。。。偶也不知道
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP