Zła wydajność du?


12

Myślę, że moje du dowództwo jest zdezorientowane.

% du -shc DIR ...
...
6123941496      total

% du -shc DIR ...
...
6.1G    total

% du -sc --si DIR ...
...
6.6G    total

Próbowałem podać LANG=Ci dwukrotnie sprawdzić wynik w arkuszu kalkulacyjnym. Wygląda na to, że -h już wypisuje dane używając mocy 1000 (--si), a --si daje złą odpowiedź. Myślę, że poprawna odpowiedź powinna wynosić 5,7G dla -h i 6,1G dla --si. Co się tu dzieje?

% du --version
du (GNU coreutils) 8.20
...

% uname -a
Linux XXX 3.9-1-amd64 #1 SMP Debian 3.9.8-1 x86_64 GNU/Linux

3
Podaj rzeczywiste polecenia. Co ...reprezentują? Wygląda na to, że dwukrotnie wykonałeś dokładnie to samo polecenie i uzyskałeś inne wyjście, prawda? Czy przeczytałeś wyjaśnienie modyfikatorów rozmiaru man du?
terdon

Odpowiedzi:


18

Powtórz testy za pomocą --apparent-sizeprzełącznika.

$ du -shc --apparent-size DIR ...

fragment strony du man

--apparent-size
       print  apparent sizes, rather than disk usage; although the apparent size is
       usually smaller, it may be larger due to holes in (`sparse') files, internal 
       fragmentation, indirect blocks, and the like

1
Ach, więc najwyraźniej -b jest równoważne z '--apparent-size --block-size = 1'. Tęsknie za tym. Prawidłowe użycie „du -shc --apparent-size” daje teraz 5.7G. Dzięki!
Gerry Lufwansa,

@GerryLufwansa - tak, kiedy zaczynasz miksować w różnych systemach plików lub montowanych CIFS, staje się to naprawdę zauważalne. Zawsze używam albo -balbo --apparent-size.
slm

... a różnica może być naprawdę ogromna w przypadku systemów HSM, w których migrowane pliki zgłaszają 0 (lub coś w rodzaju kilku kB) bez --apparent-size.
Ansgar Esztermann

Jakieś rozwiązanie dla dusystemu Mac OS X?
Alec Jacobson,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.