Linux:Adresářová struktura: Porovnání verzí
Smazaný obsah Přidaný obsah
oprava kódu |
typo |
||
Řádek 1:
= Základní vlastnosti =
* V operačních systémech unixového typu je jen jedna velká stromová struktura začínající v kořenovém adresáři, Linux/Unix rozlišuje velká a malá písmena (standardně se u názvů souborů i adresářů používají malá písmena), jména souborů jsou dlouhá max. 255 znaků (ext2 fs), v názvu souboru se nesmí vyskytnout znak NUL (binární nula) a znak lomítko "/", celé jméno souboru včetně cesty je dlouhé max. 4 kB, a k oddělování adresářů a souborů používá normální lomítko "/".
* Soubory začínající tečkou "." jsou skryté a nevidíme je pokud je extra nevyžádáme (přepínač "-a" u
== Souborové systémy ==
Řádek 22:
* Základní adresáře OS mají pevné názvy a použití - viz FHS - Filesystem Hierarchy Standard (norma hierarchie souborového systému) pro OS Unixového typu (Unix-like).
* Každý adresář obsahuje automaticky 2 položky: "." představuje běžný adresář, ".." představuje nadřazený adresář.
* Rozlišujeme pojem relativní a absolutní cesty: absolutní začíná lomítkem, tj. od kořenového adresáře; relativní začíná od aktuálního adresáře.
* Speciální adresáře - výjimečné svým obsahem a použitím. Nejznámější jsou tyto:
:; <code>'''/etc'''</code> : globální (systémová) konfigurace celého počítače (uživatelská nastavení jsou vždy v domácích adresářích jednotlivých uživatelů). Veškeré chování systému je řízeno konfiguračními soubory v tomto adresáři a jeho podadresářích. Vždy zálohovat alespoň tento adresář (komprimovaný se vejde na disketu).
Řádek 77:
:: <code>'''/var/spool'''</code> - různé systémové fronty:
::: <code>'''at/*'''</code> - fronty spouštění úloh v budoucnu démonem atd
::: <code>'''cron/*'''</code> - fronty opakovaného
::: <code>'''lpd/*'''</code> - fronty různých tiskových služeb (lpr, LPRng, cups, ...
::: <code>'''mail/*'''</code> - nevyzvednutá pošta lokálních uživatelů počítače.
Řádek 95:
| /mail || Adresář cfg souborů pro transport pošty
|-
| /pam.d ||
|-
| /ppp || konfigurace démona "pppd" - spojení přes PPP protokol (např. připojení do Internetu telef. linkou
Řádek 194:
</pre>
; <code>/dev/stdin</code>, <code>/dev/stdout</code> a <code>/dev/stderr</code> : Jsou zařízení standardního
<pre>
Řádek 214:
Pro potřeby síťové komunikace mezi procesy mají systémy Unix/Linux implementován koncept tzv. "'''[[soket]]ů''' (angl. '''sockets''')
'''Pozn. 2:''' Podobně jako rozhraní SCSI (Small Computer Systems Interface -
'''Pozn. 3:''' Nevýhodou speciálních souborů zařízení v adresáři "<code>/dev</code>" je to, že je "velký" - typicky obsahuje až několik desítek tisíc souborů. Je to proto, že obsahuje (a je jich naprostá většina) soubory i pro zařízení, která v systému (ještě) neexistují - jaksi "do foroty", až se zařízení přidá, už bude jeho soubor zařízení existovat a nemusí se vytvářet např. povelem "mknod". Např. pro pevné disky "<code>hd</code>" jsou připravena zařízení <code>hda-hdt</code>, pro každé 32 oblastí (partition), tj. celkem 16x32=512 speciálních souborů. Pro jiná zařízení je situace obdobná.
Východiskem je [[devFS]] filesystém, implementovaný v jádrech Linux 2.4 : není to již součást normálního FS, ale kód pro nová zařízení je součástí jádra. "<code>/dev</code>" FS je vytvářen v RAM během zaváděcí (boot) fáze systému a odpovídající speciální
'''Pozn. 4:''' Od jádra verze 2.6.x se začalo místo devFS filesystému používat systému [[Udev]], který umožňuje zařízení dynamicky vytvářet a rušit
Řádek 240:
|}
Adresář <code>/sys</code> se dělí na další podadresáře podle kategorie příslušných parametrů (dev, fs, kernel, net, vm aj.) Změnou hodnot v příslušných souborech můžeme měnit nastavení a chování systému. Např.:
<pre>
$ cat /proc/sys/net/ipv4/ip_forward# Je stroj koncový nód (0) nebo router (1) ?
Řádek 264:
'''Pozn2:''' U FS které nemají tyto společné přístupové bity je přístup a/nebo vlastnictví možné emulovat volbami příkazu "mount" v době připojení FS.
'''Pozn3:''' Pro přidávání a výmaz souborů mají význam pouze přístupové bity a vlastník adresáře souboru (pokud Unix FS nepodporuje komplexnější schéma, jako např. POSIX ACL (ACL = ACcess List = přístupový seznam)). Tzn. i soubory, které nemají nastaveny nastaveny žádné přístupové bity mohou být smazány, pokud to povolí adresář v němž jsou umístěny. Stejně pokud nadřazený adresář povolí aby podřazené objekty mohly být změněny uživatelem nebo skupinou, pak jakýkoliv potomek může být
=== Význam přístupových bitů ===
Řádek 278:
Adresář který má nastaven tento bit a nemá nastaven r bit nemůže být vypsán, tzn. uživatel musí znát jméno souboru, s nímž chce pracovat.
|-
| SUID (4000) || Je-li nastaven na spustitelném souboru, pak při jeho
|-
| SGID (2000) || Je-li nastaven na spustitelném souboru, pak při jeho
|-
| sticky: t (1000) || Staré Unixy jej nazývaly "Save program text" bit a indikoval, že kód spustitelných souborů má zůstat v oper. paměti po ukončení úlohy. Na Linuxu nemá význam - díky správě VM jej nepotřebuje || Bez ohledu na zápisové práva daného adresáře, smazání a přejmenování souboru v tomto adresáři může provést pouze vlastník souboru, vlastník adresáře nebo ten, kdo má explicitně povolena práva zápisu do souboru. Používané na veřejně zapisovatelné adresáře jako je "<code>/tmp</code>"
|