Co tak naprawdę oznacza standard hierarchii systemu plików przez „dane lokalne”?


14

Zgodnie ze standardem hierarchii systemu plików / usr / local będzie oznaczać „dane lokalne specyficzne dla tego hosta”. Ale nie do końca to rozumiem, ponieważ cały system plików nie jest zwykle lokalny dla hosta? tzn. / bin zawiera pliki binarne, a te pliki binarne będą używane tylko do wywoływania procesów na tym hoście, ogólnie mówiąc. Drugi host miałby własną kopię plików binarnych, chociaż mogą one być takie same, jeśli je różnicujesz.

Czy możesz wyjaśnić znaczenie „danych lokalnych”? W jakim sensie jest lokalny?


Na przykład moje miejsce pracy ma niektóre /varfoldery jako dyski sieciowe. Pozwala to na udostępnianie rzeczy, których każdy potrzebuje i upraszcza proces zapewniania, że ​​każdy ma te same pliki. Posiadanie folderu osobistego na dysku sieciowym ułatwia tworzenie kopii zapasowych i pracę z klastrami. Ale dysk sieciowy jest wolniejszy i lokalne dyski SSD są preferowane do „regularnego” użytkowania.
Kat

Myślę, że opis jest po prostu zły. Z mojego doświadczenia wynika, że ​​prawie zawsze oznaczało coś bardziej „specyficznego dla tej organizacji”, a nie konkretnej maszyny.
Barmar,

Odpowiedzi:


21

skoro cały system plików nie jest zwykle lokalny dla hosta?

Nie, udostępnianie części tylko do odczytu (np. /usrCałej lub nawet całej /) w sieci było w rzeczywistości dość powszechne.

Chociaż myślę, że nie o to chodzi. „Specyficzny dla tego hosta” może również oznaczać, że nie jest dostarczany przez dystrybucję - jest to oprogramowanie, które zbudowałeś i zainstalowałeś ręcznie, w przeciwieństwie do reszty / usr zawierającej ogólne spakowane pliki (które faktycznie byłyby takie same na wielu hostach).

Na przykład wiele systemów kompilacji kodu źródłowego używa /usr/localjako domyślnej lokalizacji instalacji. Jeśli po prostu uruchomisz ./configure && make && make install, zrzuci wszystko do / usr / local / bin i tak dalej.


10

Rozwinięcie odpowiedzi przez @grawity:

Termin „lokalny” pochodzi z czasów, gdy istniał tylko jeden system UNIX. W tym kontekście wszystkie systemy z tą samą wersją miałyby duży zestaw plików identycznych między wszystkimi hostami, a zatem tylko niewielka liczba innych plików różni się między hostami.

Te nie-uniwersalne pliki byłyby albo danymi konfiguracyjnymi /etc, albo plikami opcjonalnymi /optlub „czymś innym, lokalnym dla hosta” - tj */local.

W dzisiejszych czasach, gdy istnieją (dziko) różni członkowie drzewa genealogicznego i wymagań UNIX dotyczących pamięci masowej dla systemu operacyjnego, stanowiących niewielki ułamek całkowitej dostępnej pamięci, zwykle wielu w różnych odmianach (* BSD, dystrybucje Linuksa), termin „ lokalny ”został rozwodniony, może nawet w relikt historyczny.


Myślałem, że z pewnością było wiele różnych Uniksów, zanim zaczęli wrzucać pliki binarne i takie tam/usr
user1686,

5
(Z drugiej strony ... wszystkie systemy działające w tej samej wersji Debiana również mieć duży zestaw plików identycznych pomiędzy wszystkimi hostami Tam nie musi być „jeden UNIX” na to.).
user1686

@grawity Właśnie o to chodzi: „wszyscy Debianie” to nie to samo co „wszystkie dzisiejsze systemy operacyjne UNIX-y”. Ale w momencie, gdy powstał standard, było to bardzo zbliżone do rzeczywistości.
Eugen Rieck
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.