これは奇妙な質問で、答えは私が見落としている単純なものであることはわかっています...古いバージョンの Ubuntu 10.04 を実行している Linux サーバーの責任を引き継ぎましたが、バックアップ スクリプトが 1 時間ごとに実行されていますが、どこから実行されているのかわかりません。
認証ログには、バックアップが実行された時刻と正確に一致するエントリが 1 時間ごとに表示され、これが cron ジョブであることがわかります。
"pam_unix(cron:session): session opened for user root"
これに先行する SSH セッション エントリがないため、これは SSH 経由のリモート コマンドではありません。
すべてのユーザーの cron ジョブを一覧表示するために次のコマンドを実行しましたが、誰に対しても結果は生成されません。
"for user in $(cut -f1 -d: /etc/passwd); do crontab -u $user -l; done"
これも anacron ではありません... 他には何がありますか? 次にどこを調べればよいか、何か提案はありますか? おそらく GUI アプリがあり、認証ログ エントリが誤解を招くのではないかと考えています。
前もって感謝します
答え1
メッセージは、シェルが起動されるたびに参照される PAM から送信されます。 の内容/etc/pam.d
、特にファイル/etc/pam.d/common-session
と を参照してください/etc/pam.d/cron
。
このメッセージは、確かにどこかに root ユーザーによって実行される cronjob があることを意味します。これは、ジョブが何かを実行していることを意味するわけではありません (たとえば、特定のログファイルがローテーションできるほど大きいかどうかをチェックし、ローテーションせずに終了するだけかもしれません)。
cronjobs の定義は、複数のディレクトリとファイルに分散しています。root ユーザーの場合は、ファイル/etc/crontab
、ディレクトリ、、、およびcrontab -l -u root
の内容を確認する必要があります。最後のディレクトリには従来の cronjob 定義テーブルが含まれていますが、他のすべてのディレクトリには、ディレクトリ名にピリオドが含まれる cron によって実行される実行可能スクリプトまたはバイナリが含まれています (詳細については、を参照してください)。/etc/cron.hourly
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
/etc/cron.d
man run-parts