毎日特定の時間(3時間30分)でlogRotateを実行する方法は?これを行う方法の具体的な詳細を教えていただきありがとうございます。
私はDebianを使用しています。
答え1
ステップ1 - スクリプトを作成する
次のファイルを作成できます。
$ sudo gedit /etc/cron.d/logrotate
ファイルに次の行を追加します。
#!/bin/bash
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0
ステップ2 - crontabファイルにスクリプトを追加する
次に、毎日 3:30 にこのスクリプトを実行するように crontab エントリを作成します。 2番目の手順を実行するには、ファイルを編集します/etc/crontab
。
$ sudo gedit /etc/crontab
そして次の行を追加してください:
# m h dom mon dow user command
30 3 * * * root /etc/cron.d/logrotate
メモ:場合によっては、以下のようにユーザーを省略する必要があります。
# m h dom mon dow command
30 3 * * * /etc/cron.d/logrotate
ステップ3 - スクリプトを実行可能にします。
logrotate
最後に、シェルスクリプト()を実行可能にします/etc/cron.d/logrotate
。
$ sudo chmod +x /etc/cron.d/logrotate