Rozbieżność w wyszukiwaniu i liczeniu wszystkich plików w systemie

0

Badałem różne metody zliczania wszystkich plików w moim systemie. W moim przypadku chcę, aby wszystkie pliki zaczynały się od / i przechodziły do ​​podfolderów. Oto, co do tej pory wymyśliłem:

Metoda nr 1

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

Tutaj zajmuję się ( myślę ) kolumną IUsed. 71756.

Metoda nr 2

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

Oto pierwsza rozbieżność. Rozumiem, że każdy i-węzeł reprezentuje plik i powinna to być najdokładniejsza liczba. Jednak w drugim poleceniu nie jestem pewien, co jeszcze można znaleźć.

Metoda nr 3

# find . -type f | wc -l
127470

Uruchomiłem to z /. Spodziewałem się uzyskać coś zbliżonego do powyższych liczb, ale jak widać, nie było nawet blisko. Czy ktoś może wyjaśnić te rozbieżności i powiedzieć, która z trzech podanych przeze mnie metod daje mi najbardziej dokładną i całkowitą liczbę plików w moim systemie w /. ?? Lub zaproponować lepsze podejście?

użytkownik53029
źródło

Odpowiedzi:

1

Cóż, jeśli chodzi o twoje ostatnie polecenie, to ono również przeszukuje w / dev, / proc, / cgroup, / sys. Którego nie chcesz liczyć.

Edycja: także w każdym innym zamontowanym fs

Cristi
źródło