crontab 只运行多个 python 脚本中的前 2 个(ubuntu)?

crontab 只运行多个 python 脚本中的前 2 个(ubuntu)?

我在 ubuntu (EC2 AWS 实例)中有一个 crontab。它每小时运行一个不同的 python 脚本。每个 python 脚本都以一个在/home/ubuntu/bandsintownvia 中被覆盖的文件结束writeJSON.write。脚本执行完操作后,我调用pkill chrome(它是硒脚本并且占用大量内存)。下面的定时任务:

0 15 * * * /usr/bin/python3.6 /home/ubuntu/bandsintown/SF.py ; pkill chrome ; pkill -f "(chrome)?(--headless)" >> /home/ubuntu/bandsintown/cron.log 2>&1
0 16 * * * /usr/bin/python3.6 /home/ubuntu/bandsintown/NYC.py ; pkill chrome ; pkill -f "(chrome)?(--headless)" >> /home/ubuntu/bandsintown/cron.log 2>&1
0 17 * * * /usr/bin/python3.6 /home/ubuntu/bandsintown/Austin.py ; pkill chrome ; pkill -f "(chrome)?(--headless)"  >> /home/ubuntu/bandsintown/cron.log 2>&1
0 18 * * * /usr/bin/python3.6 /home/ubuntu/bandsintown/Chicago.py ; pkill chrome ; pkill -f "(chrome)?(--headless)" >> /home/ubuntu/bandsintown/cron.log 2>&1
0 19 * * * /usr/bin/python3.6 /home/ubuntu/bandsintown/Denver.py ; pkill chrome ; pkill -f "(chrome)?(--headless)" >> /home/ubuntu/bandsintown/cron.log 2>&1

只有前两个脚本SF.py and NYC.py通过 crontab 运行 (),并且所有 py 脚本实际上都是相同的。

我尝试过的:

  1. 确保所有脚本都手动运行 - 它们确实如此。

  2. 确保光标位于 cron 脚本之后(按照建议这里)。

  3. 手动调用chmod 775.py脚本并输出JSON(python脚本的输出)。在目录中使用ls显示所有脚本和输出文件都突出显示为绿色,这似乎是积极的?

  4. 尝试将 cron 结果写入日志,但这只是输出一个空白文件?

  5. 再次检查了 ubuntu 上的存储空间,没有明显的问题:

       /dev/nvme0n1p1  7.7G  4.8G  3.0G  63% /
    
  6. 通过 , (见下文)调查 cron 日志journalctl -u cron.service,这不会给我带来任何危险信号。

谢谢。

    Jul 26 17:00:01 ip-172-31-31-200 CRON[2777]: pam_unix(cron:session): session opened for user ubuntu by (uid=0)
    Jul 26 17:00:01 ip-172-31-31-200 CRON[2778]: (ubuntu) CMD (/usr/bin/python3.6 /home/ubuntu/bandsintown/Austin.py ; pkill chrome ; pkill -f "(chrome)?(--headles
    Jul 26 17:07:06 ip-172-31-31-200 CRON[2777]: (CRON) info (No MTA installed, discarding output)
    Jul 26 17:07:06 ip-172-31-31-200 CRON[2777]: pam_unix(cron:session): session closed for user ubuntu
    Jul 26 17:17:01 ip-172-31-31-200 CRON[2896]: pam_unix(cron:session): session opened for user root by (uid=0)
    Jul 26 17:17:01 ip-172-31-31-200 CRON[2896]: pam_unix(cron:session): session closed for user root
    Jul 26 18:00:01 ip-172-31-31-200 CRON[3244]: pam_unix(cron:session): session opened for user ubuntu by (uid=0)
    Jul 26 18:00:01 ip-172-31-31-200 CRON[3245]: (ubuntu) CMD (/usr/bin/python3.6 /home/ubuntu/bandsintown/Chicago.py ; pkill chrome ; pkill -f "(chrome)?(--headle
    Jul 26 18:05:51 ip-172-31-31-200 CRON[3244]: (CRON) info (No MTA installed, discarding output)
    Jul 26 18:05:51 ip-172-31-31-200 CRON[3244]: pam_unix(cron:session): session closed for user ubuntu
    Jul 26 18:17:01 ip-172-31-31-200 CRON[3525]: pam_unix(cron:session): session opened for user root by (uid=0)
    Jul 26 18:17:01 ip-172-31-31-200 CRON[3525]: pam_unix(cron:session): session closed for user root
    Jul 26 18:44:01 ip-172-31-31-200 cron[826]: (ubuntu) RELOAD (crontabs/ubuntu)
    Jul 26 19:00:01 ip-172-31-31-200 CRON[3901]: pam_unix(cron:session): session opened for user ubuntu by (uid=0)
    Jul 26 19:00:01 ip-172-31-31-200 CRON[3902]: (ubuntu) CMD (/usr/bin/python3.6 /home/ubuntu/bandsintown/Denver.py ; pkill chrome ; pkill -f "(chrome)?(--headles
    Jul 26 19:03:02 ip-172-31-31-200 CRON[3901]: (CRON) info (No MTA installed, discarding output)
    Jul 26 19:03:02 ip-172-31-31-200 CRON[3901]: pam_unix(cron:session): session closed for user ubuntu
    Jul 26 19:17:01 ip-172-31-31-200 CRON[4013]: pam_unix(cron:session): session opened for user root by (uid=0)
    Jul 26 19:17:01 ip-172-31-31-200 CRON[4013]: pam_unix(cron:session): session closed for user root

更新:

我重新定向了输出,以便不仅pkill输出命令,而且问题似乎出在 python 脚本上:

Traceback (most recent call last):
  File "/home/ubuntu/bandsintown/LA.py", line 401, in <module>
    with open("/home/ubuntu/bandsintown/LA_events.json", "w") as writeJSON:
PermissionError: [Errno 13]

这个问题怎么解决啊,chmod有命令吗?

相关内容