はじめに
開発環境(Oracleを使っているLinuxサーバ)でshの動作確認の時動かず、調査した結果、容量圧迫…。
運用段階入っていて長い間改修等なかったので使用しないログがずっとたまってたりが原因
今回は、これらの不要なログファイルを整理して空き容量を確保した手順をまとめておきます。
(もし本番環境等作業の場合はどんなファイルでも消す前にすごく確認した方がいい)
環境
OS:Linux(RedHat系)
Oracle:Oracle 11~12c(構成によっては11~12c以外でも参考になります)
背景
df-hとかでさがすと/ディレクトリが使用率100%
他のディレクトリ見ると
/var/logやoracle/diag/rdbms/traceフォルダに使用してなさそうな古いログファイルがたくさんある
今回は動作確認できるくらいで空けばいいのでこの二つを対象に作業する
拡張子 | 意味 | 安全に削除できるか |
---|---|---|
.trc |
トレースファイル(診断用) | ✅ 実行中セッション以外は基本削除可 |
.trm |
トレースメタ情報 | ✅ 基本削除可 |
.1 |
ログの1世代前のバックアップ | ✅ 安全 logrotate で次回上書きされる |
.gz |
さらに古い圧縮ログ | ✅ 安全 見返す必要がなければ削除OK |
ログ削除方法
traceフォルダには.trcや.trmファイルがあるので古いのは削除
# 直近1日以内のファイル以外を削除(安全)
find /u01/app/oracle/diag/ -name "*.trc" -mtime +1 -exec rm -f {} \;
find /u01/app/oracle/diag/ -name "*.trm" -mtime +1 -exec rm -f {} \;
/var/logには以下のようなファイルがありそちらを削除
/var/log/syslog.1
/var/log/syslog.2.gz
/var/log/auth.log.1
/var/log/kern.log.3.gz
/var/log/messages.1
log削除コマンド
# ローテート済みの圧縮ログをすべて削除
sudo find /var/log -type f -name "*.gz" -delete
# 数字付きのバックアップログ(.1, .2, .3, etc.)
sudo find /var/log -type f -regex '.*\.[1-9]$' -delete
削除した後はもう一度df -hでディスク使用率を確認
自分はこれで1Gほど開けることに成功し、shの動作確認ができるようになった
まとめ
そのサーバの運用方法によるが比較的消しても問題ない場所を探したので
似たような人がいれば参考までに