crontab 不执行问题,网上找了一个小时都没找到解决方法,醉了

2018-04-21 17:14:27 +08:00
 Hopetree

先说我的系统,是 Ubuntu 16.04

然后我要运行一个定时任务,所以为了测量定时任务是否执行,先运行一个最基本的测试,但是发现根本没运行。

我的做法:

1 * * * * echo 111 >> /home/alex/Desktop/mycodes/k.txt
service cron restart

但是我发现这个定时任务并没有启动啊

而且我还发现,网上都是说 crond,但是我把 cron 改成 crond 就报错,根本没有这个服务,请问我哪里没有作对?

贴一下 /var/log/cron.log 的日志:

Apr 21 17:04:01 VirtualBox crontab[6460]: (alex) BEGIN EDIT (alex)
Apr 21 17:05:18 VirtualBox crontab[6460]: (alex) END EDIT (alex)
Apr 21 17:05:23 VirtualBox crontab[6473]: (alex) LIST (alex)
Apr 21 17:07:04 VirtualBox cron[6489]: (CRON) INFO (pidfile fd = 3)
Apr 21 17:07:04 VirtualBox cron[6489]: (CRON) INFO (Skipping @reboot jobs -- not system startup)
Apr 21 17:08:41 VirtualBox cron[6510]: (CRON) INFO (pidfile fd = 3)
Apr 21 17:08:41 VirtualBox cron[6510]: (CRON) INFO (Skipping @reboot jobs -- not system startup)
Apr 21 17:10:07 VirtualBox crontab[6526]: (alex) LIST (alex)
Apr 21 17:10:44 VirtualBox crontab[6534]: (alex) BEGIN EDIT (alex)
Apr 21 17:11:01 VirtualBox crontab[6534]: (alex) END EDIT (alex)

11147 次点击
所在节点    Linux
42 条回复
chanssl
2018-04-21 20:21:02 +08:00
推荐这个工具
https://tool.lu/crontab/
TheKiller
2018-04-21 20:22:28 +08:00
不执行九成是环境变量的问题
Nick2VIPUser
2018-04-21 20:22:56 +08:00
同样的程序换一台机器试一下
infun
2018-04-21 20:22:56 +08:00
@yingfengi 我也是,然后查了一会没找到问题,一气换装了 centOS
Hopetree
2018-04-21 20:38:07 +08:00
@chanssl 厉害了,工具很实用,我刚才写了一个以为是每天 3 点执行,然后用这个工具才发现是 3 点的每 1 分钟执行一次,然后改了过来,挺好的,可以帮助理解
Hopetree
2018-04-21 20:38:38 +08:00
@torbrowserbridge 好的,感谢,刚开始用这个功能不熟悉,感谢各位支招
Hopetree
2018-04-21 20:41:16 +08:00
我还发现了一个问题,就是运行用 sh 来运行 Python 代码然后设置成定时任务的时候,sh 中要把 python 的绝对地址放上去才行,比如下面这种:

```
#!/usr/bin/bash
cd /home/alex/Desktop/mycodes
/usr/bin/python3 timer_test.py
```
xratzh
2018-04-21 20:46:10 +08:00
*和*/1 和 1 的不一样哈哈哈
lhpshaohan4
2018-04-21 20:54:17 +08:00
/etc/pam.d/crond
#session required pam_loginuid.so #注释此行
fantastM
2018-04-21 22:08:08 +08:00
lance6716
2018-04-22 01:04:06 +08:00
@Hopetree 孔乙己:shell 有四种登录方式
q397064399
2018-04-22 11:52:16 +08:00
:doge:
q397064399
2018-04-22 11:52:51 +08:00

关爱楼主
yujieyu7
2018-04-22 13:51:54 +08:00
已经歪成搞笑贴了,楼主还是要细心点啊😄
8bit
2018-04-22 14:19:26 +08:00
:doge
:doge:
ls2110609
2018-04-22 16:44:37 +08:00
...多看书不好吗
Hopetree
2018-04-22 20:44:59 +08:00
@lance6716
@fantastM
@q397064399
@ls2110609
好的,是我开始没有理解这个时间设置,现在时间问题我已经搞清楚了,然后另外一个问题有点疑问,就是如果用脚本执行文件的时候,比如用 shell(或者 Python 脚本)来写文件,这个文件的地址可以是相对路径,直接执行 shell (或者 Python )可以成功,但是如果把这个 shell ( Python 脚本)设定成定时任务就发现文件不会在指定地方生成(我不确定是不是生成到其他地方去了),所以,我只能把所有涉及到文件的地方都写成绝对路径,即使这个文件是在 Python 脚本中的页写成绝对路径,请问,我这种做法是唯一的解决方法吗?
lance6716
2018-04-23 09:20:44 +08:00
@Hopetree 你只需要导入$HOME/.profile 或者 bashrc 那些配置就好
balamiao
2018-04-23 11:19:51 +08:00
额,ubuntu 表示不背这个锅~
ThirdFlame
2018-04-23 12:48:12 +08:00
@Hopetree
#!/bin/bash
cd 路径
python a.py

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/448726

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX