WebサイトとWikiをホストするCentOS 7 VMでクローンエラーの問題を解決しようとしています。 cronのトラブルシューティングに関する多くの情報がオンラインにありますが、現在見ているものを理解できません(まだ説明が見つかりませんでした)。
クローンジョブ設定があります。
# ls -Al /etc/cron.daily/
total 24
-rwxr-x--- 1 root root 332 Nov 4 20:53 yum-daily.cron
-rwxr-x--- 1 root root 1206 Apr 12 2018 gdrive-backup
-rwx------ 1 root root 219 Oct 30 15:12 logrotate
-rwxr-x--- 1 root root 618 Oct 30 10:55 man-db.cron
-rwx------ 1 root root 208 Apr 10 2018 mlocate
しかし、cronは何もしません。
[root@ftpit ~]# whoami
root
[root@ftpit ~]# crontab -l
no crontab for root
そして:
[root@ftpit ~]# for user in $(cut -f1 -d: /etc/passwd); do crontab -l $user 2>/dev/null; done
[root@ftpit ~]#
cut -f1 -d: /etc/passwd
ユーザーのリストを返します(下記参照)。
cronが機能しないと主張するのはなぜですか?
# cut -f1 -d: /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody
dbus
saslauth
mailnull
smmsp
rpc
sshd
nscd
named
apache
tcpdump
mysql
postfix
<user XXXX>
<user yyyy>
tss
systemd-bus-proxy
systemd-network
ntp
答え1
このcrontab
コマンドはスプールのみ機能し、などで定義されている操作は考慮し/var/spool/cron
ません。/etc/cron.daily
すべてのクローン操作をリストする良い方法はありません。以下はいくつかのアイデアです。
head -n -0 /var/spool/cron/* /etc/crontab /etc/cron.d/*
ls /etc/cron.{hourly,daily,weekly,monthly}/
(すべてのcrontabを表示すると、削除されたユーザーに対応するファイルの誤検出が含まれる可能性があります。)
systemdを使用すると、タイマーを一覧表示することもできます。
systemctl list-timers
cronジョブをデバッグするときは、多くのシステムで毎日、毎週、毎月のジョブがcronではなくanacronによって実行されることを覚えておく価値があります。
また、見ることができます自分のコンピュータでスケジュールされたすべてのクローンタスクのリストを取得するにはどうすればよいですか?