Dlaczego foldery „proc” i „sys” mają rozmiar większy niż 100 TB? [Zamknięte]


10

Ktoś, kogo znam właśnie wydał następujące oświadczenie:

„Mam w systemie pliki o wartości 140,7 TB”

Ktoś inny powiedział coś w stylu „jak?” a odpowiedź brzmiała:

„Wirtualna pamięć RAM, Ubuntu ma swoje dziwactwa. /proc/corePlik”

Niewiele wiem o Linuksie i zastanawiałem się, czy ktoś mógłby wyjaśnić, o co w tym wszystkim chodzi. Nie rozumiem, jak ktokolwiek może mieć 140,7 TB wartości, chyba że ma bardzo dużą liczbę dysków twardych.


3
To, co wydaje się być plikiem, niekoniecznie musi być plikiem na dysku twardym. A rozmiar logiczny plików nie zawsze jest taki sam jak ich rozmiar fizyczny (tzn. Wymagana przestrzeń dyskowa).
— Daniel Beck

Mam również ten plik 140,7 TB. Rozmiar bajtu to 140737477881856. Zastanawiam się, co oznacza ta liczba.
— neverMind9,

Liczba ta jest bliska 2 ^ 47, czyli 140,737.488.355.328.
— neverMind9,

Odpowiedzi:


14

Te lokalizacje należą do wirtualnych systemów plików. Wszystko, co widzisz - foldery, pliki i ich zawartość - jest tworzone na miejscu za każdym razem, gdy próbujesz uzyskać do niego dostęp. Rzeczywisty rozmiar nie jest jeszcze znana dopiero po przeczytaniu plik (i to często nie mogą być przechowywane w różnych czytelnicy mogą także zobaczyć różne zawartości).

Same systemy plików w ogóle nic nie zajmują; to tylko widoki na jądro.

Czasami rozmiar jest znany, ale reprezentowane przez niego dane są ogromne. Na przykład corepliki reprezentują wirtualną przestrzeń adresową procesu - i ta przestrzeń adresowa jest tak duża, jak CPU może zaadresować; jest niezwiązany przez rzeczywisty rozmiar RAM / swap. Tak więc plik będzie miał około 2 48 do 2 64 bajtów w systemie „64-bitowym”.

Więc to normalne, że otrzymasz naprawdę dziwne liczby, jeśli uruchomisz narzędzia do korzystania z dysku na wirtualnych systemach plików, szczególnie jeśli liczą one „pozorny” (rzadki) rozmiar, a nie faktyczne użycie dysku.


5

Nie, nie dlatego. Pliki rzadkie wydają się mieć określony rozmiar, ponieważ w nagłówku pliku jest wymieniony, ale zawierają znacznie mniej danych.


5
I zdarzają się niesamowite rzeczy, gdy próbujesz wykonać kopię zapasową rzadkich plików za pomocą programu do ich tworzenia, który ich nie rozumie. Nauczyłem się tego na Xenix.
— Fiasco Labs

1

Jednym ze sposobów może być to, że mają dużą liczbę skompresowanych plików i liczą rozmiar, jaki mieliby po rozpakowaniu .

Oczywiście zależy to od typu pliku, ponieważ niektóre pliki kompresują się dalej niż inne (np. Pliki tekstowe), a innych nie można dalej kompresować (np. Jpg, mp3) bez utraty danych, ale teoretycznie może to dać liczby podane przez twojego znajomego.


2
Jasne, jeśli masz około 20 TB pamięci.
— Ignacio Vazquez-Abrams

@ IgnacioVazquez-Abrams - Nie twierdzę, że to prawdopodobne, po prostu możliwe.
— ChrisF

@ IgnacioVazquez-Abrams: To tylko dziesięć dysków 2 TB.
— user1686,

2
@grawity - pełen tekstu ...
— ysap

@ysap pełen skompresowanego tekstu.
— SplinterReality
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.