Я исследовал различные методы подсчета всех файлов в моей системе. В моем случае я хочу, чтобы все файлы начинались с / и переходили в подпапки. Вот что я придумала до сих пор:

Способ № 1

# df --inodes /
Filesystem            Inodes IUsed   IFree IUse% Mounted on
/dev/mapper/sys-root 1602496 71756 1530740    5% /

Здесь меня интересует (я думаю) колонка IUsed. 71756.

Способ № 2

# find . -xdev -print | wc -l
74194

Вот первое несоответствие. Насколько я понимаю, каждый inode представляет файл, и это должно быть наиболее точным показателем. Однако во второй команде я не уверен, что еще ее нахождение.

Способ № 3

# find . -type f | wc -l
127470

Я запустил это из /. Я ожидал получить что-то близкое к цифрам выше, но, как вы можете видеть, это было даже не близко. Может кто-нибудь объяснить эти несоответствия и сказать мне, какой метод из трех предоставленных мною дает наиболее точное и общее количество файлов в моей системе в /. ?? Или предложить лучший подход?

1 ответ1

1

Что касается вашей последней команды, она также ищет в /dev, /proc, /cgroup, /sys. Который вы не хотите считать.

Редактировать: также в любой другой монтируемой фс

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .