我收到此信息:Cron 不会列出当前作业,即sudo cron -l
失败。它返回:
can't lock /var/run/crond.pid, otherpid may be 468110: Resource temporarily unavailable
我尝试了以下步骤:
sudo kill -9 $(cat /var/run/crond.pid)
$ ps aux | grep $(cat /var/run/crond.pid)
root 1322 0.0 0.0 9412 3096 ? Ss Feb15 0:00 /usr/sbin/cron -f
$ sudo service cron stop
$ sudo service cron start
$ sudo cron -l
cron: can't lock /var/run/crond.pid, otherpid may be 468110: Resource temporarily unavailable
cron的状态:
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 Tue 2021-02-16 18:20:06 PST; 1min 40s ago
Docs: man:cron(8)
Main PID: 467956 (cron)
Tasks: 1 (limit: 38312)
Memory: 484.0K
CGroup: /system.slice/cron.service
└─467956 /usr/sbin/cron -f
该任务会立即用新 PID 锁定,因此某些东西会立即获取它。我自己实际上也没有添加任何 cron 任务,但是我确实安装了 clamav,并且它有一个与之关联的 freshclam 任务。有什么想法吗?
答案1
问题是这cron -l
不是列出 cron 作业的正确命令。请参阅 cron 的手册页。我认为你把它和 混淆了crontab -l
。
无法列出cron
其配置的所有作业。有些存在于文件(如/etc/crontab
和 )中,位于 目录、 下的文件中/etc/cron.d/
。/etc/cron.{hourly,daily,weekly,monthly}/
其他则与特定用户相关联。后者可以通过crontab -u <user> -l
或 查看 下的文件来显示/var/spool/cron/crontabs/
。
没有命令可以列出这两种类型的每一个