Debian系(Ubuntu)でテンポラリフォルダの自動削除
Debian系(Ubuntu)で、
テンポラリフォルダが肥大化しており、
削除コマンドで削除して対応したが、
何度も同じ対応をするのは面倒なので、
削除を自動化する対応をした時のメモ。
経緯
基本的に、Debian系であれば、
今回と同じ対応になるかと思います。
自分の状況としては、
Dockerコンテナで立ち上げた環境が、
Debian系であることが多いので、
その時の対応になります。
テンポラリ削除の自動化の設定(systemdで対応の場合)
デフォルトの設定については、
/usr/lib/tmpfiles.d/tmp.conf
にあるようなので、
このファイルを確認してみました。
vi /usr/lib/tmpfiles.d/tmp.conf
確認してみたところ、
D /tmp 1777 root root -
となっており、
これはファイルを削除しない設定。
上記のファイルがデフォルトの設定ですが、
直接、上記のファイルを変更するか、
どのファイルを用意するか調べたところ、
/usr/lib/tmpfiles.d/
→ デフォルト設定(変更しない)。/run/tmpfiles.d/
→ 一時的な設定(リブート時にクリア)。/etc/tmpfiles.d/
→ カスタム設定(推奨される変更場所)。
という感じでした。
上記について、
/etc/tmpfiles.d/
に設定ファイルを追加します。
追加ファイル
/etc/tmpfiles.d/tmp.conf
編集コマンド
vi /etc/tmpfiles.d/tmp.conf
追加する内容
v /tmp 1777 root root 1d
次に、反映処理
systemctl restart systemd-tmpfiles-clean
上記の設定タイマーの確認
systemctl status systemd-tmpfiles-clean.timer
テンポラリ削除の自動化の設定(cronで対応の場合)
すでにcronが入っていること前提ですが、
入ってなければ、以下のコマンドで導入
apt-get update && apt-get install cron -y
設定コマンド
crontab -e
設定内容
@daily find /tmp -type f -mtime +1 -exec rm -f {} \;
または、
0 3 * * * find /tmp -type f -mtime +1 -exec rm -f {} \;
のどちらかを設定
設定できたかを確認
crontab -l
cronの稼働状況
ps aux | grep cron
起動してなかったら以下のコマンド
/etc/init.d/cron start
コメント一覧
コメントはまだありません。
コメント送信
こちらもおすすめ
初心者向けの色々な情報はあるけれど、
- 無料でお試しができるスクール
- ホームページなど簡単に作成できる
- 組織で使いたいサービス
について、
少しでも試して良いものがあると、
それを活用することで学習や業務などが効率化できるので、
おすすめのサイトなどをいくつか紹介しておきます
コメントを残す