Chapter 3. Przegląd struktury katalogów

Table of Contents
Wstęp
Główny system plików
Katalog /etc
Katalog /dev
System plików /usr
System plików /var
System plików /proc

" Dwa dni później Pooh siedział na swej gałęzi i machał nóżkami, obok niego stały cztery garnki pełne miodu... " (A.A. Milne)

Rozdział opisuje ważniejsze części standardowej hierarchii katalogów, która oparta jest na standardzie FSSTND. Opisuje normalny sposób podziału na oddzielne systemy plików oraz cel takiego podziału. Różne alternatywy są omówione.

Wstęp

Rozdział powstał na podstawie Standardu Systemu Plików Linuxa, FSSTND, wersji 1.2 (zobacz bibliografię). Standaryzacja hierarchii katalogów ma na celu ułatwienie życia administratorom i programistom - łatwiej coś znaleźć jeżeli jest umieszczone w odpowiednim miejscu. Używanie standardu nie jest przez nikogo wymagane, jednak większość dystrybucji tworzona jest zgodnie z nim. FSSTND definiuje podobną hierarchię jak w innych systemach Unix.

Rozdział nie zawiera szczegółów, po nie sięgnij do FSSTND. Administrator powinien rozumieć i znać ten standard.

Całe drzewo stworzone jest w sposób ułatwiający rozłożenie go na kilku dyskach, lub partycjach. Głównymi częściami są: katalog główny, /usr, /var, /home (zobacz Figure 3-1). Każda z części ma inne przeznaczenie. Niektóre z części mogą znajdować się w sieci, na urządzeniach wyłącznie odczytywalnych.

Figure 3-1. Części drzewa katalogów Unixa. Linie oznaczają limity partycji.

Poniżej znajduje się opis przeznaczenia danej części.

Wszystkie te części mogą znajdować się fizycznie na jednym systemie plików. Jeżeli jest to komputer domowy nie ma potrzeby stosować takiego podziału, jednak w większych systemach uniknięcie go jest niemożliwe. Ważne jest aby wszystkie te nazwy działały; np. powiedzmy, że /var i /usr są aktualnie na tej samej partycji, ścieżka /usr/lib/libc.a i /var/log/messages musi działać, w tym przykładzie możnaby przenieść /var do /usr/var i utworzyć odpowiednie łącze symboliczne - /var -> /usr/var.

Hierarchia katalogów w Uniksie grupuje pliki odpowiednio do ich przeznaczenia - wszystkie polecenia są w jednym miejscu, dane w innym, itd. Alternatywnie możnaby tworzyć katalogi dla poszczególnych programów. Drugie podejście ma kilka wad - trudno dzielić pliki (programy często zawierają części statyczne i wykonywalne), znalezienie programu może stać się trudne (np. zmuszenie programu man do zaglądania w odpowiednich katalogach może stać się koszmarem).