Ubuntu 12.04 LTSに問題があります。過去3週間でこの問題に遭遇したのはこれが2回目です。最初は StackOverflowのこの閉じた質問 で説明されています。 TL; DRバージョンは、450G ext4システム上のすべてのiノードを使用してAndroidスタックをコンパイルおよびビルドし、 20回。
Iノードストレージが拡大できるように、ディスクをXFSとして再フォーマットして問題を解決していると思いました。
今朝、一晩ビルドを行った後、空き容量が1GB未満になりました。このマシンには、Androidのビルドに必要なもの以外に何もありません。プラットフォームソースで合計5つのビルドを行いました。ビルドは多数のファイルを作成し、make clean
ですぐにそれらを削除します。私は実際には1GB未満ではありませんが、ツールはそのように報告しています。多数の一時ファイルを削除し、約40GBを「解放」しました。数時間後、ただアイドリングして、1GB未満の空き容量に戻りました。
フラッシュドライブからUbuntuを実行すると、パーティションに対して次が返されます...
$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda5 468521456 468255460 265996 100% /media/f71c77eb-b4cc-
$ df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/sda5 1691760 624214 1067546 37% /media/f71c77eb-b4cc-
$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda5 447G 447G 260M 100% /media/f71c77eb-b4cc-
何かがおかしいという証拠があります。 du
(--apparent-sizeの有無にかかわらず)または視覚的なDisk Usage Analyzerを実行すると、実際に約35GBしか使用していないことがわかります。使用済みスペースの98.7%は/home/eric
にありますが、du
は合計されません。不一致は/home/eric
と/home/eric/Android
の間です
こことSOの関連する質問を読みましたが、通常は、開いているプロセスによって保持されている削除されたファイルであることを示唆しています。このテストを実行するためにフラッシュドライブを再起動したので、ファイルを開いてはいけません。 FWIW、/ tmpは空です。
「失われた」スペースを回復するために、フラッシュドライブにインストールできるツールはありますか?システムのメモリを解放して実行することもできますが、フラッシュドライブから実行する方が良いと考えています。
このシステムを別の方法で構成する必要がありますか?もう一回ワイプしてインストールしたくないのですが、持続可能なAndroidビルドシステムが必要です。
フォローアップ-作業を完了するには、先週インストールを破棄し、12.04を再インストールしなければなりませんでした。今週Androidビルドをもう一度行っていくうちに、ディスクの使用状況に注意を払い、詳細についてはこちらで情報を提供します。
ありがとう
Oracle Linuxでは、削除されているが実行中のプロセスによってまだ開かれている(大量の)ファイルがある場合に発生します。その後、プロセスの停止またはマシンの再起動が役立ちます。
最近、これに遭遇しました。私の場合、fsck
を実行する必要がありました。
touch /forcefsck && reboot
を実行しましたが、数分後にサーバーがオンラインに戻り、突然不足していた6 GBが解放されました。
遠くに行く前に.....システムをシングルユーザーモードに下げて、ファイルシステムのフルfsck(実際にはフルfsck -f /dev/sda5
を意味する)を実行し、表示される内容を確認します。ディスク上の問題領域の一部として、または割り当てられているものとディスク上に存在するものとの不一致としてスペースを見つける場合があります。
テストを行うことができます。du
は10GBの空き容量があると言い、df
は300MBと言います。たとえば、2GBのサイズのファイル(または複数のファイル)を書くことができますか?できれば、それはdfが単に間違っていることを意味します(実際には「スペースの損失」の問題はありません)。そうでない場合、du
は間違っています(これは興味深いことです)。
私はこの問題の原因を発見していませんが、ubuntu 12.04に固有のものです。
新しいサーバーをセットアップするだけで、Ubuntu 12.04から始めて、これに遭遇しました。 duは約111 GiBの使用を示しましたが、dfは約170 GiBでした。
Systemrescuecd 3.3.0を使用して起動し、再度チェックすると、1 GiB未満の差が示されました。
パーティションとファイルシステム(ext4)を変更せずに残して、ubuntuディレクトリを邪魔にならない場所に移動し、Debian 7.0をインストールしました。繰り返しますが、duとdfの差は1 GiB未満でした。
Ubuntu 10.04では、同じパーティションとext4 fsで:
df -m /
から、
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/sda2 2814679 407164 2264538 16% /
du -mx
から、
tail -1 /root/diskuse
406920 .
十分に近いです。
投稿した画像は、スペースが使用されている場所を示しています:/home/eric
。そこに非常に大きなファイルがあり、すべてのスペースを占有しているようです。または、多数の小さなファイルがある可能性があります。ホームディレクトリを開き、隠しファイルが表示されていることを確認します(Ctrl+H Nautilusで)、ファイルサイズで並べ替えます。
これは、ディレクトリ内のファイルが原因であることが多く、このファイルには異なるファイルシステムもマウントされています。一般的な修正方法は、レスキューディスクまたはシングルユーザーモードで起動し、ディレクトリを空にして、マウントポイント(cat /proc/mounts
またはdf -h
)として使用されていないことを確認することです。