GNU/Linux >> Linux の 問題 >  >> Linux

Linuxインスタンスのディスクスペースをクリーンアップするにはどうすればよいですか?

運が良ければ、ディスク使用量はすでに監視されており、時間どおりに警告されています。それ以外の場合は、すでに手遅れであり、一部のアプリが機能しなくなっています。できるだけ早く軌道に戻るために、インスタンス/サーバーにすばやく安全にスペースを確保するために、私が何年にもわたって見つけた便利なコマンドをいくつか紹介します。

まず、もちろんSSH経由で接続し、sudo su -でrootになります

次に、ケースを指定して、 Dockerを使用している場合 コンテナを実行するには:

  • アプリがまだ実行中の場合は、Dockerリソースをスムーズにクリーンアップします
docker images -q | xargs docker rmi
docker container prune -f
docker image prune -a -f
docker system prune -a -f
  • アプリがすでにダウンしている場合は、すべてのDockerリソースを一度にクリーンアップします
docker system prune
  • コンテナがログをローテーションしない場合(巨大なファイルを表す可能性があります)、クリーンアップしてください
cd /var/lib/docker/containers/<container_id>/ # a file <container_id>-json.log is supposed to be there
truncate -s 0 <container_id>-json.log

systemdでLinuxディストリビューションを使用している場合 、ログをクリーンアップできます。

cd /var/log/journal # they are here
journalctl --disk-usage # have a look at how much you can reclaim
journalctl --vacuum-time=7d # reclaim it (7d = keep logs from last week only)

Ubuntu20.04LTSでのDockerインストールNO_PUBKEYエラーを修正

さらにスペースが必要な場合は、インスタンスの他の場所を探してください:

du -sh * | grep "G" # travel around to find most imposant directories
  • ログファイルの場合は、切り捨てることができます:truncate -s 0 YOUR_LOGFILE.log
  • 不要になった古いファイルを含むディレクトリを見つけた場合:
pwd # DOUBLE CHECK that you are inside the right directory to clean
find * -type f -mtime +100 -exec rm -rf {} \; # remove files not modified since 100 days for example

これで問題がなくなり、アプリが再び実行されるようになります。そのためには、アプリを再デプロイ/再起動する必要があります。

最後に、継続的な改善の時が来ました:

  • このインスタンスのディスク容量が十分に監視されており、適切なしきい値が介入するのに十分な時間を残していることを確認してください
  • あなたの目標は、二度とそれを行わないことです。たとえば、このインスタンスのcrontabに配置できる簡単なクリーニングコマンドを見つけてください。

この記事が何らかの形で役に立ったかどうかをお知らせください。このユースケース(決して面白くない)に関するストーリーや、個人的なヒントや提案もお聞かせください。

素晴らしい一日をお過ごしください!


Linux
  1. Linuxでディスクをパーティション分割する方法

  2. Linuxでスナップパッケージのバージョンをクリーンアップする方法[クイックヒント]

  3. Linux –ディスクスペースの使用を最小限に抑える方法は?

  1. Linux でスワップ領域を追加する方法

  2. BTRFS のバランスを再調整してディスク領域を解放する方法

  3. Linux でディレクトリの空きディスク領域をプログラムで取得する方法

  1. Linuxでディスク容量を確認する方法

  2. Linuxでパーティションを削除する方法

  3. Linux で空きディスク領域を消去するには?