Linux
來自busybox的df顯示的inode數量與tune2fs不同
我們有基於 Beaglebone 黑色的定制板,
我們有busybox shell,包括coreutils。
busybox 版本是 BusyBox v1.20.2 (2017-10-16 16:39:36 EDT)
現在我們想檢查每個分區中的 inode 使用情況,
所以當我執行時,
df -i
我得到以下輸出# df -i Filesystem Inodes Used Available Use% Mounted on rootfs 125 9 116 7% / /dev/root 125 9 116 7% / tmpfs 62 0 62 0% /tmp tmpfs 62 0 62 0% /dev/shm tmpfs 62 0 62 0% /var/run tmpfs 62 0 62 0% /var/spool/cron tmpfs 62 0 62 0% /var/sftp /dev/mmcblk0p18 15 0 15 0% /var/db /dev/mmcblk0p19 64 0 64 0% /var/firmware
現在當我執行 tun2fs 來獲取 inode 計數時,我得到以下輸出
# tune2fs -l /dev/mmcblk0p18 | grep -i inode Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse Inode count: 15360 Free inodes: 15346 Inodes per group: 1920 Inode blocks per group: 240 First inode: 11 Inode size: 128 Journal inode: 8 Journal backup: inode blocks # tune2fs -l /dev/mmcblk0p19 | grep -i inode Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse Inode count: 65536 Free inodes: 65525 Inodes per group: 8192 Inode blocks per group: 512 First inode: 11 Inode size: 256 Journal inode: 8 Journal backup: inode blocks
我不明白為什麼它不同。由busybox通知的分區的inodes,例如mmcblk0p18是
15
tune2fs 報告的
15*1024 = 15360
相同內容與分區 mmcblk0p19 相同。我不明白為什麼在busybox中以這種方式報告,因為分區18和19的分區128和256的inode大小也不同。
有人可以幫助或提供任何指示嗎?
我查看了busybox的錯誤列表,但沒有找到任何關於我的錯誤的參考。
事實上,busybox df 在我的 ubuntu 機器上按預期工作,我查看了 busybox 配置。最初我只啟用了以下兩個配置,
CONFIG_DF=y CONFIG_FEATURE_DF_FANCY=y
因此,我無法獲得預期的輸出。但是,一旦我啟用了以下配置
df -i
,就開始按預期工作。# # Common options for df, du, ls # CONFIG_FEATURE_HUMAN_READABLE=y
所以罪魁禍首是busysbox配置中的這個常見配置。