LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: zonzi

请问怎么写个定时运行某命令的脚本?

[复制链接]
发表于 2004-4-3 21:05:03 | 显示全部楼层
看样子作为一个普通用户的你($)有权限执行crontab,且能手工创建haha文件,可见对/home/zhong/有写权限(你的用户目录嘛)。
ps -ax看看你的cron进程是否存在。

或者,你用root帐号登录后创建root用户的crontab试试看。
 楼主| 发表于 2004-4-3 21:08:14 | 显示全部楼层
567 ?        S      0:00 /usr/sbin/crond -l10
bash-2.05b$ more haha

bash-2.05b$
用root的crontab也没用....:confused::confused:
怎么办啊????
多谢帮住!!!!
发表于 2004-4-3 21:23:57 | 显示全部楼层
真是很奇怪喔~~

bash-2.05b$
你的提示符怎么会这样呢(你安装lfs时新装了bash而没有调整PS1吗,呵呵)?
帖出id命令的输出来看看。我想是权限的问题吧。
 楼主| 发表于 2004-4-3 21:27:17 | 显示全部楼层
bash-2.05b$ id
uid=1000(zhong) gid=100(users) groups=100(users)
不过567 ? S 0:00 /usr/sbin/crond -l10这个东西不知道到底是不是cron...
我用的bash是slackware9.1里的,没有经过任何改动....
最有问题的是:
bash-2.05b$ cron
bash: cron: command not found
发表于 2004-4-3 21:33:08 | 显示全部楼层
因为你是普通用户,你的$PATH变量值不包含一些管理命令所在的路径如/sbin等;bash当然就不能搜索到cron命令。这就是多用户泾渭分明的特色。

另外,请参阅楼上引用的北南老大的转贴。
一般的用户没有运行该命令的权限,虽然超级用户可以手工启动cron,不过还是建议将其放到shell脚本中由系统自行启动。
 楼主| 发表于 2004-4-3 21:38:32 | 显示全部楼层
bash-2.05b# whoami
root
bash-2.05b# cron
crond    crontab
bash-2.05b$ whoami
zhong
bash-2.05b$ echo $PATH
/sbin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/games:/usr/lib/java/bin:/usr/lib/java/jre/bin:/opt/kde/bin:/usr/lib/qt-3.2.1/bin:/usr/share/texmf/bin:.
就是root用户也没cron命令....
发表于 2004-4-3 21:39:35 | 显示全部楼层
这个提示符跟单用户的一样呀~,
步骤
1,启动crond服务,这是必须的!
/sbin/service crond start
2,一般用户可以直接用
crontab -e
来编写自己的crontab文件
3,一般建议crontab里的命令用绝对路径
像你无法正常执行的原因,我想是home_king说的!
发表于 2004-4-3 21:41:27 | 显示全部楼层
(真的不好意思,今天回家了,家里没有装Linux,而且又没有安装光盘,所以不能实践来帮兄弟解决问题。):sorry:

不过我依然觉得是权限问题。
1.注销后用root帐号登录,编辑好filename.cron文件后,用crontab -u zhong filename.cron为zhong帐号安装crontab,最好还把zhong添加到/etc/cron.allow里。
2.再次注销后用zhong登录,看看设置是否生效。
 楼主| 发表于 2004-4-3 21:45:32 | 显示全部楼层
能不能用超级用户可以手工启动cron?没有cron命令怎么启动?
不过还是建议将其放到shell脚本中由系统自行启动:是不是做个脚本,放到/etc/rc.d/里去?
真是感激两位大哥的帮助!!!
发表于 2004-4-3 21:50:39 | 显示全部楼层
bash-2.05b# cron
crond crontab

可见你有cron命令啊。chkconfig --list看看有没有安装cron服务。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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