オペレーティングシステムサービスを使って、Backup ログファイルのサイズを自動的に管理できます。
Solaris ソフトウェアには、syslog メッセージファイル (/var/log/syslog) を管理するために、2 つの要素で構成されるメカニズムが用意されています。この 2 つの要素とは、シェルスクリプト (/usr/lib/newsyslog) と、このスクリプトを定期的に呼び出すためのスーパーユーザー用の crontab エントリです。
newsyslog スクリプトを変更して、Backup サーバーのログファイルを管理し、保持できます。次に示すようにスクリプトを変更すると、Backup サーバーの daemon.log ファイルが過去 3 ファイルにわたって保持されます。
Backup ログファイルを管理するには、次の操作を行います。
適当なテキストエディタを使って、/usr/lib/newsyslog に以下の行を追加します。
LOGDIR=/nsr/logs LOG=daemon.log if test -d $LOGDIR then cd $LOGDIR test -f $LOG.1 && mv $LOG.1 $LOG.2 test -f $LOG.0 && mv $LOG.0 $LOG.1 test -f $LOG && mv $LOG $LOG.0 cp /dev/null $LOG chmod 644 $LOG fi |
Backup デーモンを終了させ、再起動させるまで、新しいログファイルは使用できません。nsr_shutdown コマンドを直接入力するか、あるいは newsyslog スクリプトにこのコマンドを追加して、デーモンを終了します。スケジュールされた保存操作の過程でこのスクリプトが実行されることがないように注意します。その後、次のコマンドを使って Backup を手動で再起動します。
# /etc/init.d/networker start |
newsyslog スクリプトを実行する頻度を制御するためのエントリをスーパーユーザー用の crontab に追加します。
次の例に示すエントリは、newsyslog スクリプトを毎日曜日の 4:05 a.m. に起動します。
5 4 * * 6 /usr/lib/newsyslog |
Solaris システムに newsyslog スクリプトとそれを呼び出す crontab エントリがない場合は、newsyslog スクリプトを手動で作成し、これに crontab エントリを追加します。詳細は、crontab(1) のマニュアルページを参照してください。