Disk-Usage
什麼佔用overlayfs的空間
我有一個帶有隻讀根文件系統和安裝在其上的讀寫 overlayfs 的 linux:
# mount overlayfs on / type overlayfs (rw,relatime,lowerdir=/root_ro/,upperdir=/root_rw/) ...
overlayfs 快滿了
# df Filesystem 1K-blocks Used Available Use% Mounted on overlayfs 4003548 3995012 8536 99% / ...
如何辨識消耗overlayfs的讀/寫部分的文件?
du
不區分 ro 和 rw 介質上佔用的空間。我在其中找到了該選項-fstype type
,find
但我的 linux 有busybox,並且該查找不支持該選項。編輯:添加輸出
cat /proc/mounts
rootfs / rootfs rw 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 none /dev devtmpfs rw,relatime,size=1026976,nr_inodes=256744,mode=755 0 0 /dev/sda1 /root_rw ext4 rw,relatime,errors=remount-ro,data=ordered 0 0 ubi0:rootfs /root_ro ubifs ro,noatime,nodiratime 0 0 overlayfs / overlayfs rw,relatime,lowerdir=/root_ro/,upperdir=/root_rw/ 0 0 debugfs /sys/kernel/debug debugfs rw,relatime 0 0 devpts /dev/pts devpts rw,relatime,gid=5,mode=620 0 0
在覆蓋文件系統中並沒有真正的“什麼佔用空間”的概念。工會的每個分支都有自己的空間佔用。
du
在兩個分支上執行。如果它越來越滿,那麼讀寫分支就是罪魁禍首。由於覆蓋掛載遮住了它的分支(
/root_ro
並且/root_rw
被掛載隱藏/
),因此您需要訪問分支。您可以通過再次掛載塊設備來做到這一點(Linux 支持這一點,至少對於大多數塊設備類型):mkdir /media/root_ro /media/root_rw mount /dev/sda1 /mnt/root_rw mount ubi0:rootfs /mnt/root_ro du /mnt/root_ro /mnt/root_rw