Metadane to dane o danych. Widoczny rozmiar to rozmiar danych, który ma znaczenie dla zwykłego użytkownika komputera. Treść (tekst) liter, obrazów, filmów, filmów itp., stanowić pozorny rozmiar. Dane te nie są dowolnie przechowywane w komputerze. Dane pozornie wielkości muszą być przechowywane w sposób kontrolny. Musi być zidentyfikowalny. To musi być kompletne. Istnieją inne wymagania. Potrzebne są dodatkowe dane, aby osiągnąć te dodatkowe wymagania, a te dodatkowe dane to meta-data.
Pamiętaj, że w tomie jest tylko jeden katalog. Reszta to subkwestie. Katalog główny powoduje podlewanie, które powodują, że spadają inne podwozie podwodne. Jednak podwodnicy są zwykle nazywane po prostu katalogiczne. I tak jest tylko jedno drzewo katalogu.
Tak więc „LS -s” nie jest przydatne do uzyskania wielkości katalogu. Które polecenie jest wówczas przydatne? - Polecenie du. „Du” oznacza użycie dysku. Wydrukuje zużycie dysku w katalogu.
W tym artykule wyjaśniono różne funkcje polecenia DU w Linux, która zawiera różne programy programisty do poznania rozmiarów katalogów i ich podwodnych. Bash to powłoka używana do próbek kodu tego artykułu.
Treść artykułu
DU bez opcji lub argumentu
Obecny katalog roboczy to katalog, w którym obecnie pracuje użytkownik. Poniższy normalnie pokazuje bieżący katalog roboczy. Pisanie du bez żadnej opcji i argumentu, jak więc:
du
a następnie naciśnięcie klawisza ENTER wyświetli użycie dysku dla wszystkich sub-dreaktorii bieżącego katalogu roboczego. Wyświetli te informacje dla podrestu bieżącego katalogu roboczego. Kropka na wyświetlaczu reprezentuje bieżący katalog roboczy.
Każda ścieżka podprzestrzeni jest reprezentowana w linii, na wyświetlaczu. Każda linia zaczyna się od wielkości katalogu (który jest nazwą na ścieżce). Wyświetlacz może być coś w stylu:
8 ./dir1/dir2/dir3/dir4
12 ./dir1/dir2/dir3
16 ./Dir1/Dir2
20 ./Dir1
Zauważ, że nie jest jasne, czy rozmiar jest w bajtach, kilobajtach, megabajtach czy gigabajtach. Kilobytes symbolu, k oznacza 1024 bajty; Megabajty symbolu, m oznacza 1 048 576 bajtów; Gigabajty symbolu, g oznacza 1 073 741 824 bajtów. Aby wielokrotności należy wskazać, należy użyć opcji -H (przełącznika), w następujący sposób:
du -h
Wyświetlacz wyglądałby tak:
8.0k ./dir1/dir2/dir3/dir4
12K ./dir1/dir2/dir3
16k ./Dir1/Dir2
20K ./Dir1
Gdy używana jest opcja -h, rozmiary są w czytelnej formie.
UWAGA: W przypadku opcji -wszystkie polecenie DU podaje również użycie dysku dla plików; Jednak użycie dysku dla plików nie zostanie rozwiązane w tym artykule.
Rozmiar innych katalogów
Typowa bezwzględna ścieżka dla objętości Linuksa jest następująca:
/home/john/dirone/dirtwo/dirthree/dirfour
Pierwszy / jest głównym katalogiem. Ten katalog ma natychmiastowe podwodne, w tym katalog domowy. Directory Home ma katalog użytkownika. Jeśli nazwa użytkownika to John, może on nazwać katalog użytkownika, John. Katalog użytkownika jest identyfikowany przez ~. Użytkownik może więc użyć polecenia „CD ~”, aby dotrzeć do swojego katalogu z dowolnego katalogu. Dirone to katalog utworzony przez użytkownika. Użytkownik może również tworzyć inne katalogi na tym poziomie. Dirtwo, DirThree i Dirfour to podwozie do ich poprzednich katalogów, stworzonych przez użytkownika.
Użytkownik może znać rozmiar dowolnego innego katalogu i jego podokrestancje (pod-drzewo) z dowolnego katalogu, omijając bezwzględną ścieżkę jako argument. Na przykład, jeśli potrzebne jest użycie dysku,
/Home/John/Dirone/Dirtwo
wtedy poleceniem byłoby:
du -h/home/John/dirone/dirtwo
Lub
du -h ~/dirone/dirtwo
gdzie ~ reprezentuje katalog użytkownika.
Aby użyć ścieżki względnej, użytkownik musi już znajdować się w odpowiednim katalogu nadrzędnym. Na przykład, jeśli wyświetla się monit,
John@host: ~/dirone $
Oznacza to, że użytkownik jest w katalogu/Home/John/Dirone, wówczas następujące polecenie da ten sam wynik, co powyższe polecenie:
du -h dirtwo
Ścieżki nadal byłyby względne. Aby wyświetlić te same informacje dla bieżącego katalogu, nie użyj żadnych argumentów lub użyj kropki.
Ten schemat można wykorzystać do uzyskania wielkości tylko jednego katalogu, ostatniego na ścieżce (poprzedzonej ścieżką). Możliwe jest uzyskanie rozmiaru katalogu na środku ścieżki - patrz „Exclude = wzór” poniżej.
Łączna suma
Można wyprodukować wielki całkowity rozmiar wszystkich zaangażowanych katalogów. W powyższej sytuacji poleceniem byłoby:
Du -h -Total
pozorna wielkość
Widoczny rozmiar jest zwykle mniejszy niż użycie dysku. Jednak w niektórych sytuacjach pozorny rozmiar jest większy niż użycie dysku; Powód - patrz później. Poleceniem uzyskania pozornych rozmiarów dla powyższej ścieżki względnej byłoby:
du -h -apparent wielkości brud
Maksymalna głębokość
Z -max -Depth = 0, DU drukuje rozmiar tylko bieżącego katalogu roboczego; Z DU-Max-Depth = 1, DU drukuje rozmiar obecnego katalogu roboczego i rozmiarów wszystkich jego pierwszego poziomu podlewającego; Z-Max-Depth = 2, DU drukuje rozmiar obecnego katalogu roboczego i rozmiary wszystkich jego pierwszego poziomu podwodne i wszystkich jego podwodnych drugiego poziomu; Z-Max-Depth = 3, DU drukuje rozmiar obecnego katalogu roboczego i wszystkich jego pierwszego poziomu podlewaństwa i wszystkich jego podwodniników drugiego poziomu i wszystkich jego podwodnic trzeciego poziomu; To trwa wraz ze wzrostem wartości maksymalnej. Przykładem jego użycia jest:
Du -h - -Max -Depth = 2
Polecenie sudo
Jednym z katalogów z własnymi subrektorami w katalogu głównym jest var. Jeśli typy użytkowników
du -h /var
i wchodzą naciski, zda sobie sprawę, że pozwolenia jest odrzucane na niektóre katalogi. Oznacza to, że nie może znać rozmiarów niektórych katalogów. Zezwolenie jest odrzucane, ponieważ użytkownik nie jest superuser. Superuser ma zaszczyt zobaczyć rozmiary (wykorzystanie dysku) tych katalogów. Tak więc, aby użytkownik zdobył ten przywilej, musi używać polecenia Sudo w następujący sposób:
sudo du -h /var
Jeśli powłoka poprosi użytkownika o jego hasło, użytkownik musi wpisać hasło i naciskać Enter. Za pomocą polecenia Sudo zwykły użytkownik (programista) może zobaczyć rozmiary wszystkich katalogów w katalogu Var i podobnych katalogach.
Z wyłączeniem wpisów według wielkości
Opcja „-Threshold = rozmiar” nie zezwoli na katalogi listy, których rozmiary są mniejsze niż rozmiar. Dla ścieżki,
/home/john/dirone/dirtwo/dirthree/dirfour
z monitem na „John@host: ~ $”
du -h -Thhreshold = 12K Dirone
gdzie 12k oznacza 12 kilobajtów, nie wyświetli linii dla żadnego katalogu, którego użycie dysku jest mniejsze niż 12k.
-exclude = wzór
Ta opcja i wartość mogą pominąć linie katalogu, których użytkownik nie chce na liście.
Pominąć linię ostatniego katalogu, Dirfour of the Path
/home/john/dirone/dirtwo/dirthree/dirfour
Poleceniem powinno być:
du -h --exclude = dirone/dirtwo/dirthree/dirfour dirone
Rezultat będzie coś w stylu,
4.0K Dirone/Dirtwo/Dirthree
8.0K Dirone/Dirtwo
12K Dirone
Uwaga: rozmiary nie obejmowały wielkości katalogu ostatniego poziomu (Dirfour) ścieżki.
Aby mieć tylko rozmiary górnych katalogów głębokości i ich podrzędnych, nie mają opcji niższych głębokich katalogów. Więc z poleceniem,
du -h --exclude = dirone/dirtwo/dirone dirone
Wyjście będzie coś w rodzaju,
4.0K Dirone/Dirtwo
8K Dirone
Uwaga: rozmiary wykluczyły rozmiary dolnych katalogów dźwigni drzewa.
Rozważ ponownie, absolutny link,
/home/john/dirone/dirtwo/dirthree/dirfour
Poniższe polecenie uzyska użycie dysku tylko z katalogu Dirtwo, który jest katalogiem na ścieżce. Polecenie to:
du -h --exclude =/home/John/dirone/dirtwo/*/home/john/dirone/dirtwo
Argument ma wszystkie poprzednie katalogi do tego, co dotyczy. Wartość wykluczenia ma wszystkie poprzednie katalogi, kończące się *, tuż po tym, o którym mowa. * oznacza wszystkie podwozie na tym poziomie (i ich podrzędne). Rezultat będzie coś w stylu,
5.0k/home/John/Dirone/Dirtwo
Wniosek
Próba poznania wielkości katalogu z poleceniem „LS -s” jest mylące. Dzięki temu uzyskuje się tylko meta-data katalogu. Aby poznać użycie dysku w katalogu, należy użyć polecenia DU. W przypadku użycia z opcją -h rozmiary katalogów są czytelne. Widoczny rozmiar można uzyskać za pomocą opcji pozornej wielkości. Bez żadnej opcji i argumentu polecenie DU wyświetla po prostu rozmiary wszystkich podkatalogów bieżącego katalogu, w tym rozmiaru bieżącego katalogu. Argument „du” jest ścieżką, która może zacząć od korzenia. Opcje i niektóre z ich wartości decydują dokładnie, które katalogi są adresowane. Polecenie sudo domyślnie daje zwykłe uprawnienia superuseru użytkownika.