Crontab使用ubuntus停止断管

2024-10-01 19:27:39 发布

您现在位置:Python中文网/ 问答频道 /正文

第一次使用AWS/EC2/ubuntu。我在使用crontab的ubuntu服务器上运行python脚本(web scraper,使用chromedriver、selenium、beautifulsoup等)时遇到了一个问题。这是AWS上的EC2实例。 我让crontab做一个简单的测试,创建一个简单的txt文件,上面写着“hello”。但是,当前的cronjob不断失败:

很简单,每天中午12:17执行一个脚本:

    ubuntu@ip-172-31-31-200:~$ crontab -l
17 12 * * * python3 BandsInTown_Scraper_SF.py

作业不执行。我的crontab状态为:

    ubuntu@ip-172-31-31-200:~$ sudo service cron status
● cron.service - Regular background program processing daemon
   Loaded: loaded (/lib/systemd/system/cron.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-11-02 00:18:36 UTC; 1 weeks 0 days ago
     Docs: man:cron(8)
 Main PID: 830 (cron)
    Tasks: 1 (limit: 1152)
   CGroup: /system.slice/cron.service
           └─830 /usr/sbin/cron -f

Nov 09 16:17:01 ip-172-31-31-200 CRON[27857]: pam_unix(cron:session): session opened for user root by (uid=0)
Nov 09 16:17:01 ip-172-31-31-200 CRON[27858]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Nov 09 16:17:01 ip-172-31-31-200 CRON[27857]: pam_unix(cron:session): session closed for user root
Nov 09 17:17:01 ip-172-31-31-200 CRON[27908]: pam_unix(cron:session): session opened for user root by (uid=0)
Nov 09 17:17:01 ip-172-31-31-200 CRON[27909]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Nov 09 17:17:01 ip-172-31-31-200 CRON[27908]: pam_unix(cron:session): session closed for user root
Nov 09 18:15:01 ip-172-31-31-200 cron[830]: (ubuntu) RELOAD (crontabs/ubuntu)
Nov 09 18:17:01 ip-172-31-31-200 CRON[28242]: pam_unix(cron:session): session opened for user root by (uid=0)
Nov 09 18:17:01 ip-172-31-31-200 CRON[28243]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Nov 09 18:17:01 ip-172-31-31-200 CRON[28242]: pam_unix(cron:session): session closed for user root

而且,当我深入查看过去失败的cron作业的日志时,我得到:

    Nov  5 02:17:01 ip-172-31-31-200 CRON[14524]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Nov  5 02:26:58 ip-172-31-31-200 systemd[1]: Starting Message of the Day...
Nov  5 02:26:58 ip-172-31-31-200 50-motd-news[14532]:  * Kata Containers are now fully integrated in Charmed Kubernetes 1.16!
Nov  5 02:26:58 ip-172-31-31-200 50-motd-news[14532]:    Yes, charms take the Krazy out of K8s Kata Kluster Konstruction.
Nov  5 02:26:58 ip-172-31-31-200 50-motd-news[14532]:      https://ubuntu.com/kubernetes/docs/release-notes
Nov  5 02:26:58 ip-172-31-31-200 systemd[1]: Started Message of the Day.
Nov  5 02:36:28 ip-172-31-31-200 systemd-timesyncd[577]: Network configuration changed, trying to establish connection.
Nov  5 02:36:28 ip-172-31-31-200 systemd-timesyncd[577]: Synchronized to time server 91.189.89.198:123 (ntp.ubuntu.com).
Nov  5 03:06:28 ip-172-31-31-200 systemd-timesyncd[577]: Network configuration changed, trying to establish connection.
Nov  5 03:06:28 ip-172-31-31-200 systemd-timesyncd[577]: Synchronized to time server 91.189.89.198:123 (ntp.ubuntu.com).
Nov  5 03:17:01 ip-172-31-31-200 CRON[14621]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Nov  5 03:36:28 ip-172-31-31-200 systemd-timesyncd[577]: Network configuration changed, trying to establish connection.
Nov  5 03:36:28 ip-172-31-31-200 systemd-timesyncd[577]: Synchronized to time server 91.189.89.198:123 (ntp.ubuntu.com).
Nov  5 03:39:01 ip-172-31-31-200 CRON[14646]: (root) CMD (   test -x /etc/cron.daily/popularity-contest && /etc/cron.daily/popularity-contest --crond)
Nov  5 04:06:27 ip-172-31-31-200 systemd-timesyncd[577]: Network configuration changed, trying to establish connection.
Nov  5 04:06:27 ip-172-31-31-200 systemd-timesyncd[577]: Synchronized to time server 91.189.89.198:123 (ntp.ubuntu.com).
Nov  5 04:17:01 ip-172-31-31-200 CRON[14675]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Nov  5 04:27:25 ip-172-31-31-200 systemd[1]: Started Session 144 of user ubuntu.
Nov  5 04:36:27 ip-172-31-31-200 systemd-timesyncd[577]: Network configuration changed, trying to establish connection.
Nov  5 04:36:27 ip-172-31-31-200 systemd-timesyncd[577]: Synchronized to time server 91.189.89.198:123 (ntp.ubuntu.com).
Nov  5 04:41:04 ip-172-31-31-200 systemd[1]: Started Session 145 of user ubuntu.
Nov  5 04:41:09 ip-172-31-31-200 crontab[14897]: (ubuntu) LIST (ubuntu)

Network configuration changed, trying to establish connection.行关注并怀疑这是否是造成这种情况的根本原因。为了让crontab正常工作,ubuntu服务器需要启动并运行吗?我这样问是因为当我在终端上登录到ubuntu,然后让它运行一段时间,我的电脑进入睡眠状态时,我得到以下错误:

ubuntu@ip-172-31-31-200:~/bandsintown$ packet_write_wait: Connection to 3.132.213.71: Broken pipe

这是我问题的根本原因吗?我认为在AWS上运行代码的全部意义在于它可以独立于我的本地机器运行(例如,如果互联网断开,如果终端从ubuntu注销,等等),非常感谢任何帮助!你知道吗


Tags: toipcmdsessionubuntuetcrootnov
2条回答

提供的答案都不起作用,但这确实起作用:

17 12 * * * /usr/bin/python3.6 /home/ubuntu/bandsintown/BandsInTown_Scraper_SF.py

可能是路径问题,我会尝试:

17 12 * * * cd /path/to/script && /path/to/python3 BandsInTown_Scraper_SF.py

可能会保存输出以供以后查看:

17 12 * * * cd /path/to/script && /path/to/python3 BandsInTown_Scraper_SF.py > /tmp/out 2>&1

相关问题 更多 >

    热门问题