ディスク容量がなくなり、ディスクを消費するものがなくなりました。なぜでしょうか?

ディスク容量がなくなり、ディスクを消費するものがなくなりました。なぜでしょうか?

ディスク使用率は100%でした

/dev/xvda1

これはシステムパーティションなのでマウントすることにしました

/var/lib

別のパーティション

/dev/xvdf

/var/lib の下の docker ファイルが多くのスペースを消費していたためです。

ルート パーティションは常に 100% 使用されています。

udev            2.0G   12K  2.0G   1% /dev
tmpfs           396M  336K  395M   1% /run
/dev/xvda1       99G   99G     0 100% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
none            100M     0  100M   0% /run/user
/dev/xvdf       296G  765M  280G   1% /var/lib

そして

lsof | grep deleted

何も表示されない

そしてこれが出力ですdu -sh

52M /admin
9.6M    /bin
25M /boot
12K /dev
5.9M    /etc
11M /home
0   /initrd.img
61M /lib
4.0K    /lib64
16K /lost+found
4.0K    /media
4.0K    /mnt
4.0K    /opt
du: cannot access '/proc/3945/task/3945/fd/4': No such file or directory
du: cannot access '/proc/3945/task/3945/fdinfo/4': No such file or directory
du: cannot access '/proc/3945/fd/4': No such file or directory
du: cannot access '/proc/3945/fdinfo/4': No such file or directory
0   /proc
15M /root
336K    /run
9.4M    /sbin
4.0K    /srv
0   /status
0   /sys
8.5M    /tmp
1016M   /usr
877M    /var
0   /vmlinuz

inode の使用法:

Filesystem       Inodes  IUsed    IFree IUse% Mounted on
udev             504621    397   504224    1% /dev
tmpfs            505859    315   505544    1% /run
/dev/xvda1      6553600 684402  5869198   11% /
none             505859     10   505849    1% /sys/fs/cgroup
none             505859      1   505858    1% /run/lock
none             505859      1   505858    1% /run/shm
none             505859      1   505858    1% /run/user
/dev/xvdf      19660800    202 19660598    1% /var/lib

何か解決策は見つかりますか?

答え1

他の人が示唆しているように、元のファイルはおそらくその下にあります/var/lib。システムをシングル ユーザー モードで起動しない場合 (または起動できない場合) は、「バインド マウント」を使用してこれらのファイルにアクセスすることもできます。

mkdir -p -m700 /mnt/dsk
mount --bind / /mnt/dsk
cd /mnt/dsk/var/lib

現在、/var/lib「新しい」フォルダの下に隠れている「古い」フォルダに移動しており/var/lib、必要に応じてここからファイルを削除したり移動したりすることができます。

重要下のファイル/mnt/dsk同じファイル下記の通りです/。これらはコピーではありません。これらのファイルを削除すると、実際にはルート ファイルシステム上のファイルが削除されます。

答え2

これは、/var/lib別のパーティションに「移行」しても、元のファイルが自動的に消去されないためです。

秘訣は、別のシステム (おそらくライブ CD) から起動し、そこからマウントして/dev/xvda1、そこにあるファイルを削除することです。

これを試す前に、新しいパーティション内のすべてのファイルが実際に使用可能であることを確認してください。

答え3

/ ( ) の合計はいくらですかdu -sh /? 99G と同じですか? のファイルはパーティションにまだあるとdf思います。それらはマウントされたパーティションの下に「隠されています」。ライブ CD (例: sysrescure) を起動する必要があります。その後、次の操作を行います。/var/lib/dev/xvda1/dev/xvdf

mkdir /test 
mount /dev/xvda1 /test

そして試してみる

du -sh /test/var/

「隠し」領域が表示されるはずです。このファイルを削除する必要があります。

関連情報