Linuxで「デバイスに空き容量がありません」エラーを修正する方法

ほとんどの場合、Linuxはエラーメッセージが非常に具体的です。「これがうまくいかなかった - このパッケージをインストールしてみてください。」しかし、特に役に立たないものが1つあります:「デバイスに空き容量がありません。」これは何が原因なのでしょうか? 2TBのストレージがあると思っていたのに、どうして満杯になるのでしょうか? どこから探し始めればいいのでしょうか? 今日は、Linuxで「デバイスに空き容量がありません」エラーを修正する方法についてのガイドを通じて、これらすべてを説明します。
さらに読む: Linuxでファイルを簡単にリネームする方法
デバイスの空き容量を確認する
先に進む前に、ディスクに本当に空き容量があるかどうかを確認するのが良いアイデアです。デスクトップ環境のツールは良いですが、コマンドラインから直接使用する方が速い場合があります。
デスクトップ環境のツールを使用したい場合、それらはこれらのツールで見つけられる情報の読みやすい表現を提供します。私はFedoraをGNOMEで使用しており、GNOMEディスク使用量アナライザーは次のように表示します。

まずはduを使います。問題のあるドライブのベースディレクトリを指し示します。ここでは、/のあるパーティションだと仮定しましょう。
sudodu-sh/
すべてを確認するのに少し時間がかかります。次に、dfを試してみてください。
sudodf-h
/とその下にマウントされているファイルシステムを追加します。たとえば、/homeが別のドライブにある場合、/の読み取りと一緒にそれを追加します。合計はduで得たものに近くなるはずです。そうでない場合、プロセスによって使用されている削除されたファイルがある可能性があります。
もちろん、ここでの主な関心事は、これらのコマンドの結果がドライブのサイズの下にあるかどうかです。もしそうであれば、明らかに何かが間違っています。
さらに読む: LinuxでバックグラウンドでBashコマンドを実行する方法
デバイスに空き容量がない可能性のある原因
ここにはいくつかの主な原因があります。duとdfの間に不一致があった場合は、ここで最初のオプションに飛び込むことができます。そうでなければ、2番目のオプションから始めてください。
プロセスによって予約された削除ファイル
時折、ファイルが削除されますが、プロセスがまだそれを使用しています。プロセスが実行中である限り、Linuxはファイルに関連付けられたストレージを解放しませんが、プロセスを見つけて再起動することができます。

プロセスを特定してみてください。
sudo lsof /|grep deleted問題のあるプロセスがリストされるはずです。それを再起動してください。
sudo systemctl restart service_nameすぐに明らかでない場合は、完全なデーモンリロードを行います。
sudo systemctl daemon-reloadさらに読む: Ubuntuで「ユーザー名はsudoersファイルにありません。このインシデントは報告されます」エラーを修正する
不十分なiノード
ファイルシステムには「iノード」と呼ばれるメタデータのセットがあります。iノードはファイルに関する情報を追跡します。多くのファイルシステムには固定数のiノードがあるため、ファイルシステム自体を満たさずにiノードの最大割り当てを埋めることが非常に可能です。dfを使用して確認できます。
sudodf-i/
使用されているiノードを総iノードと比較します。もしもう利用可能なものがなければ、残念ながら、これ以上は得られません。無駄なファイルや古いファイルを削除してiノードを解放してください。
不良ブロック
最後の一般的な問題は、不良ファイルシステムブロックです。ファイルシステムは時間とともに破損する可能性があり、ハードドライブは故障します。オペレーティングシステムは、特に別の方法でマークされていない限り、これらのブロックを使用可能として認識する可能性が高いです。これらのブロックを見つけてマークする最良の方法は、fsckを-ccフラグとともに使用することです。テストしているファイルシステムからfsckを使用できないことを覚えておいてくださいので、ライブCDを使用する必要があるでしょう。
sudo fsck -vcck/dev/sda2明らかに、確認したいドライブの場所を置き換えてください。これは、前に使用したdfコマンドを使用して見つけることができます。また、これにはかなりの時間がかかる可能性があるので、コーヒーを用意しておくことをお勧めします。
さらに読む: fsckでファイルシステムをチェックして修復する [Linux]
これらの解決策のいずれかがあなたの問題を解決したことを願っています。この問題は、すべてのケースで簡単に診断できるわけではありません。しかし、運が良ければ、問題を解決し、システムを通常通りに動作させることができるでしょう。
Linuxに関するさらなるヒントを探している場合は、LinuxでBluetoothを設定する方法に関するガイドをご覧ください。また、少し異なるものを探している場合は、LinuxにMacのSafariブラウザをインストールする方法をご覧ください。楽しんでください!
さらに読む: Linuxでハードドライブ全体をクローンする4つの方法