我的磁碟使用率為 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
索引節點的使用:
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
到另一個分割區不會自動清理您的原始檔案。
訣竅是從另一個系統(可能是 livecd)啟動,從那裡安裝/dev/xvda1
並刪除其中的檔案。
請小心,並確保在嘗試此操作之前,新分割區中的所有檔案實際上都可用。
答案3
/ ( ) 的總和是多少du -sh /
?和99G一樣嗎df
?我認為文件/var/lib
仍在/dev/xvda1
分區上。它們“隱藏”在已安裝的分割區下/dev/xvdf
。您必須啟動 live cd(例如 sysrescure),然後:
mkdir /test
mount /dev/xvda1 /test
並嘗試
du -sh /test/var/
您應該看到您的“隱藏”空間。您必須刪除該檔案。