Jak poruszać się w tych systemach? Co jest gdzie?
Paradoksalnie najpierw napomknę trochę o Windows. Obecne wersje (takie jak XP, Vista czy 7) wywodzą się z Windows NT oraz linii Windows 9x opartej na MS-DOS. Przez wiele lat użytkownicy zostali przyzwyczajeni do tego, że:
- wielkość liter nie ma znaczenia w nazwach plików i katalogów
- kolejne partycje i urządzenia (dyski twarde, napędy optyczne, itp.) są oznaczane literami alfabetu i dwukropkiem. I tak stacja dyskietek to zazwyczaj "A:" lub "B:", pierwsza partycja dysku twardego to "C:", itd.
- pełna ścieżka do katalogu czy pliku zazwyczaj składa się z nazwy urządzenia i kolejnych katalogów oddzielonych wyłącznie "\"
- uprawnienia do katalogów i plików są teraz (na partycjach NTFS) określane z użyciem tzw. list dostępu (ACL)
- w nazwie pliku może być tylko jedna kropka, a fragment nazwy po niej jednoznacznie określa format
Nie jest to obecnie częściowo prawda - wielkość liter może mieć znaczenie, urządzenia mogą być udostępniane również jako kolejny "katalog", ścieżki mogą zawierać także "/", kropek może być już wiele. Dzieje się tak częściowo właśnie ze względu na zgodność z POSIX.
W systemach uniksopodobnych wygląda to następująco:
- wielkość liter ma znaczenie
- pełna ścieżka składa się z kolejnych katalogów oddzielonych wyłącznie "/"
- w klasycznych rozwiązaniach dany plik czy katalog ma swojego właściciela (najczęściej użytkownika, który go stworzył) oraz jest przypisany do tzw. grupy, w której mogą się znaleźć dowolni użytkownicy systemu. Uprawnienia określa się dla właściciela, grupy i pozostałych
- kropek może być wiele
Nie ma dowolności w umieszczaniu plików gdziekolwiek (do tego dąży także obecnie Windows). Podam kilka przykładów:
- "/boot" - skompilowane jądro
- "/dev" - pliki, które plikami nie są :-). Wszystkie widoczne tam "zbiory" są bowiem tworzone dynamicznie przez jądro i zawierają dane związane z kolejnymi fizycznymi urządzeniami, takie jak np. zawartość ich pamięci (Unix próbuje wprowadzić ideę, aby dosłownie wszystko móc obsługiwać podobnie jak plik)
- "/etc" - pliki konfiguracyjne
- "/home" - katalogi kolejnych użytkowników systemu, w których mogą oni składować swoje dokumenty (jego odpowiednikiem jest windowsowy "Documents and Settings", w Viście i Windows 7 zaś "Users")
- "/mnt" lub "/media" - najczęściej w nich możemy znaleźć zawartość dyskietki czy CD-ROM
- "/proc" - zawiera tworzone dynamicznie przez jądro "pliki" z informacjami o wszystkich uruchomionych w systemie programach
- "/root" - pliki administratora
- "/tmp" - pliki tymczasowe
Pełna ścieżka do katalogu z plikami użytkownika zwanych ich katalogiem domowym (w "/home" albo "/root") bywa skrótowo oznaczana przez "~/", pliki o nazwach rozpoczynających się od kropki są traktowane przez wiele programów jako ukryte. Prawda, że jest to proste?