Räkna filer i Linux

Ibland kan det vara bra att hålla koll på hur många filer man har i sitt filsystem på Linux. Extrema mängder filer kan ge konstiga problem i olika sammanhang så det kan vara värt att kontrollera hur många filer man har.

Kommandot df ger en snabb överblick:
root@vps-xxxxx:~# df --inode
Filesystem Inodes IUsed IFree IUse% Mounted on
/dev/xvda1 2490368 622882 1867486 26% /
udev 120618 385 120233 1% /dev
tmpfs 126881 265 126616 1% /run
none 126881 2 126879 1% /run/lock
none 126881 1 126880 1% /run/shm

IUsed visar alltså antal inodes, vilket ungefär motsvarar antalet filer.

Lite svårare är det att veta vilken mapp filerna ligger i. Enklast är att använda en kombination av for och find, som visar hur många filer varje undermapp har:
root@vps-xxxxx:/mnt/persist/www/docroot# for f in *; do echo -n $f:; find $f|wc -l; done
gurka.gif:1
banan:517
äpple:2338
annanas.php:1
kiwi:2303
jordgubbe:1
blåbär:3639
päron:505538
uploads:4291

Här är det alltså mappen päron som är skyldig.