Rozdział VIII Struktura katalogów i pliki systemowe
8.1. Przegląd katalogów systemowych
System Unix posiada rozbudowany układ swojego hierarchicznego systemu plików. Jego zawartość zależy zarówno od odmiany Unixa, jak i zainstalowanych jego składowych, jednakże zawsze można w nim spotkać te same elementy podstawowe. Część z wymienionych poniżej katalogów jest dostarczana tylko wraz z odpowiednimi odmianami systemu:
/ — katalog główny;
/bin — katalog często używanych poleceń, w tym wymaganych w fazie ładowania systemu, odtwarzania zapasowych kopii systemu plików i/lub „reperowania" systemu;
/dev — katalog plików specjalnych;
/etc — katalog plików konfiguracyjnych i poleceń przeznaczonych dla administratora;
/etc/conf — SCO UNIX: katalog informacji konfiguracyjnych;
/etc/default — SCO UNIX: katalog domyślnych opcji poleceń i parametrów
konfiguracyjnych;
/etc/newconfig — katalog nowych (uaktualnionych) wersji plików
konfiguracyjnych i skryptów shellowych, umieszczanych
tutaj aby nie przykrywać od razu ich bieżących wersji;
/lib — katalog bibliotek procedur systemowych;
/lost+found — katalog informacji systemowych i odnotowywanych przez polecenie fsck (na przykład zagubionych fragmentów plików);
/net — SCO UNIX: katalogi narzędzi sieciowych;
/network — SCO UNIX: katalogi narzędzi sieciowych;
/rbin — odpowiednik katalogu /bin dla użytkowników pracujących w okrojonym środowisku shella rsh;
/shlib — katalog bibliotek z dzielonym kodem procedur (ang. sharedlibrwy code)',
/tcb — SCO UNIX: katalog z podkatalogami zawierającymi narzędzia do kontroli logicznej integralności systemu plików (od ang. Trusted Compuling Buse);
/tmp — katalog na chwilowo używane pliki robocze, które mogą być usuwane bez uprzedzenia;
/u — SCO UNIX: katalog dodatkowego systemu plików;
/users (/bonie) — w niektórych systemach (np. HP-UX) domyślny katalog macierzystych („domowych") katalogów użytkowników;
/users/guest — domyślny katalog dla użytkowników typu „gość" oraz dla początkujących użytkowników; może być usunięty;
/usr — katalog poleceń i innych elementów systemu, używanych szczególnie w trybie wielodostępu. Jest to katalog, w którym standardowo instalowane jest oprogramowanie użytkowe; ponadto w wielu systemach (na przykład SCO UNIX/XENIX) jest to domyślny katalog macierzystych katalogów użytkowników;
/usr/adm — katalog dla administratora systemu — są w nim zapisywane informacje rozliczeniowe i raportujące historię pracy systemu;
/usr/bin — katalog poleceń nie wymaganych w fazie ładowania, odtwarzania i/lub weryfikowania systemu plików;
/usr/contrib — HP-UX: katalog przeznaczony na rozpowszechniane przez użytkowników (oficjalnie nie dystrybuowane przez HP) polecenia, pliki itp.; rozpowszechniane przez różne grupy użytkowników, organizacje oraz serwis techniczny HP;
/usr/include — pliki nagłówkowe wysokiego poziomu dla języka C;
/usr/include/sys — pliki nagłówkowe niskiego poziomu dla języka C (związane z jądrem);
/usr/lib — katalog bibliotek narzędziowych oraz związanych z nimi poleceń, różnych plików danych itp.;
/usr/lib/acct — katalog ewidencji wykorzystania systemu;
/iisr/lib/cron — katalog informacji dla poleceń: at, batch, cron i crontab;
/usr/lib/custom — SCO UNIX: katalog używany przez polecenie CUStom;
/usr/lib/keyboard — SCO UNIX: opisy klawiatur;
/usr/lib/lang — SCO UNIX: opisy cech narodowych;
/usr/lib/lang.src — SCO UNIX: opisy cech narodowych;
/usr/lib/mapchan — SCO UNIX: opisy sposobów konwertowania znaków wejścia/wyjścia;
/iisr/lib/mail — katalog plików konfiguracyjnych polecenia maił;
/usr/lib/mkdev — SCO UNIX: opisy procedur instalacji urządzeń;
/usr/lib/mkuser — SCO UNIX: katalog różnych danych, wykorzystywanych przy otwieraniu sesji pracy użytkowników oraz przy otwieraniu ich kont (stąd pobierane są wzorce plików startowych dla rejestrowanych użytkowników);
/usr/lib/nlio — HP-UX: informacje o wejściu/wyjściu dla języków narodowych (ang. Native Language I/0);
/usr/lib/nis — HP-UX: wsparcie dla języków narodowych (ang. Native Language Support);
/usr/lib/nis/config — HP-UX: lista numerycznych identyfikatorów języków i ich nazw;
/usr/lib/nls/$LANG — HP-UX: definicje językowe (zestaw znaków, symboli i komunikatów dla języków narodowych). Zmienna środowiskowa SLANG powinna wskazywać podkatalog zawarty w /usr/lib/nis, w którym umieszczono plik Iocale.def zawierający tablicę definiującą język narodowy:
/usr/lib/spell — pliki danych dla polecenia Spell:
/usr/lib/sysadm* — SCO UNIX: katalogi plików informacyjnych i poleceń wykorzystywanych przez programy administracyjne;
/usr/lib/tabset — pliki opisujące pozycje tabulacji dla wybranych typów terminali;
/usr/lib/terminfo — katalog z opisami terminali;
/usr/lib/uucp* —polecenia, pliki konfiguracyjne i katalogi robocze dla UUCP, służące do komunikacji pomiędzy komputerami;
/usr/local — HP-UX: katalog zbiorczy, zawierający w kolejnych
podkatalogach wersję systemu przystosowaną językowo dla
danego kraju. Przeznaczony również na polecenia,
dokumentację itp. — pochodzące z lokalnych organizacji.
Patrz: /usr/contrib;
/usr/mail — HP-UX: katalog „skrzynek pocztowych" użytkowników;
/usr/man — dokumentacja systemu obsługiwana poleceniem mań;
/usr/man/cat* — opcjonalnie sformatowana wersja dokumentacji dla
polecenia man;
/usr/man/man* — niesformatowana wersja dokumentacji (źródłowa.
w formacie wejściowym polecenia nrołf);
/usr/man/$LANG — HP-UX: dokumentacja oniine dla zainstalowanego języka
narodowego, gdzie SLANG określa nazwę języka;
/usr/net* — SCO UNIX: katalogi narzędzi sieciowych;
/usr/news — nowe informacje dla użytkowników, obsługiwane przez
polecenie news;
/usr/preserve — miejsce, w którym edytory ex i vi zapamiętują i skąd
pobierają informacje o stanie edycji plików podczas
odtwarzania sesji edycji;
/usr/pub — SCO UNIX: katalog ogólnie dostępny, zawierający między
innymi tabelę znaków ASCII;
/usr/rbin — analog katalogu /usr/bin dla użytkowników używających
rsh (tworzony przez administratora);
/usr/spool — katalog zbiorczy, zawierający poniżej opisane podkatalogi;
/usr/spool/cron — katalog dla poleceń: cron, crontab i at;
/usr/spool/lp/*/ — pliki konfiguracyjne Podsystemu Zarządzania Wydrukami (rozdział 11);
/usr/spool/mail — SCO UNIX: „skrzynki pocztowe" użytkowników;
/usr/spool/uucp — różne pliki do komunikacji środkami UUCP;
/usr/spool/uucppublic — ogólnodostępne katalogi dla usług UUCP;
/usr/src — katalog zbiorczy zawierający podkatalogi z źródłami niektórych elementów systemu (głównie bibliotek); dostępny jedynie w systemach dostarczanych z kodami źródłowymi;
/usr/sys — SCO UNIX: katalog systemowy;
/usr/tmp — katalog roboczy.
8.2. Przegląd plików systemowych
Pliki systemowe zawierają informacje wykorzystywane przez programy systemowe i usługowe. Poszczególne odmiany i wersje Unixa mogą się różnić liczbą, nazewnictwem i treścią używanych plików systemowych, jednakże obowiązują w tym zakresie duże podobieństwa. Większość plików systemowych znajduje się w katalogu /etę. Do poszukiwania potrzebnej informacji można wykorzystać między innymi następujące polecenia:
find — szukanie plików w drzewie systemu plików;
cd, Is, .. — wybór katalogu i wyświetlanie jego zawartości;
grep — przeszukiwanie zawartości plików;
man — wyprowadzanie opisu poleceń;
whereis — szukanie lokalizacji pliku o podanej nazwie;
f ile, test — testowanie rodzaju pliku.
Ewidencja (rejestr) użytkowników
/etc/passwd — rejestr użytkowników;
/etc/group — rejestr grup użytkowników.
Opis łączy terminalowych
/etc/inittab — opis procesów inicjowanych przy przechodzeniu systemu do poszczególnych poziomów pracy; między innymi opisy procesów do obsługi zainstalowanych terminali;
/etc/gettydefs — opisy parametrów pracy łączy terminalowych;
/etc/ttytype — opisy trybów pracy terminali dla wymienionych łączy terminalowych;
/etc/ttys — SCO XENIX: dane inicjujące terminale.
Opis własności terminali
/etc/termcap — opisy funkcjonalne licznego zestawu terminali;
/etc/lib/terminfo — katalog zawierający podkatalogi z plikami opisującymi własności znanych w systemie terminali.
Inicjowanie i kończenie pracy systemu
/unix (/hp-ux) — jądro systemu w SCO UNIX (HP-UX);
/etc/rc — skrypt shellowy opisujący działania wykonywane w chwili ładowania systemu;
/etc/rc2 — SCO UNIX: skrypt opisujący działania wykonywane przy przechodzeniu systemu do pracy w trybie wieloużytkownikowym;
/etc/rcZ.d/* — SCO UNIX: skrypty shellowe opisujące działania uzupełniające, wykonywane przy przechodzeniu systemu do trybu pracy wieloużytkownikowej (można dodawać własne skrypty);
/etc/issue — plik z tekstem poprzedzającym komunikat login:;
/etc/motd — plik, którego treść jest wyświetlana na ekranie terminala każdego użytkownika w chwili otwierania przez niego sesji
procy;
/etę/profile — plik wykonywany przed plikiem $HOME/.profile; zawiera definicje obowiązujące dla wszystkich użytkowników;
/etc/powerfail — polecenie wykonywane po stwierdzeniu zaniku zasilania komputera;
/etc/shutdown — polecenie służące do zamknięcia pracy systemu lub przejścia w jednoużytkownikowy tryb pracy;
/etc/haitsys — polecenie natychmiastowego zatrzymania pracy systemu;
/etc/reboot — polecenia natychmiastowego zatrzymania pracy systemu i ponownego jej wznowienia.
Opis systemu plików
/etc/mnttab — tablica aktualnie „dołączonych" systemów plików;
/etc/checklist — HP-UX: wykaz systemów plików do „dołączenia" w chwili uruchamiania systemu oraz do kontroli ich integralności (na przykład po nieprawidłowym zakończeniu pracy systemu). SCO UNIX/XENIX: wykaz systemów plików podlegających kontroli integralności, gdy polecenie fsck zostanie wykonane w trybie „automatycznej" weryfikacji lub bez podania opcji.
Opis zagadnień sieciowych
/etc/exports — opis katalogów dostępnych dla innych komputerów, połączonych środkami NFS;
/etc/hosts — opis internelowy komputerów dostępnych przez sieć (ang. hosis compulers); używany przez usługi ARPA (polecenia:
telnet, ftp);
/etc/inetd.conf — sieciowe parametry konfiguracyjne:
/etc/netconfig — polecenie do konfigurowania sieci;
/etc/netlinkrc — startowe procedury sieciowe;
/etc/netutii — SCO UNIX: interakcyjne polecenie do konfigurowania sieci:
/etc/services — sieciowe parametry konfiguracyjne.
Otwieranie sesji i informacje rozliczeniowe
/usr/adm/messages — komunikaty wyprowadzane przez system;
/etc/adm/pacct — informacje rozliczeniowe (ang. uccounting);
/usr/adm/sulog — informacje o otwarciach sesji pracy przez użytkownika uprzywilejowanego;
/etc/btmp — informacje o nieudanych otwarciach sesji procy (tylko w niektórych odmianach systemu, na przykład w HP-UX);
/etc/wtmp — informacje o udanych otwarciach sesji pracy użytkowników;
/etc/utmp — wykaz aktualnie aktywnych użytkowników.
Informacje domyślne
/etc/d.xxxxxx — HP-UX: domyślne wersje plików startowych;
/etc/default/* —SCO UNIX/XENIX: pliki z domyślnymi parametrami i opcjami dla typowych poleceń.