Hakemistorakenne
Linuxin hakemistorakenne on määritetty FHS-standardissa, se määrittää joukon hakemistoja ja niiden pääasiallisen käyttötarkoituksen. Nykyisin useimmat jakeluversiot noudattavat tätä standardia.
Yleistä
Hakemistorakenne alkaa juurihakemistosta, merkintä kauttaviiva "/", jonka alle tiedostot ja hakemistot järjestetään puumaiseksi rakenteeksi. Nykyisin on myös yleistynyt vertaus sisäkkäisistä kansioista.
Levyasemat näkyvät käyttäjälle ja ohjelmille hakemistoina. Esimerkiksi CD-levyltä lukiessa ei viitata suoraan asemaan, vaan hakemistoon "/media/cdrom". Tämä mahdollistaa järjestelmän tiedostojen jakamisen usealle fyysiselle laitteelle niin, että haluttu tiedosto löytyy aina standardin mukaista polkua käyttäen, riippumatta tallennuslaitteiden fyysisestä kokoonpanosta.
Tiedostoihin ja hakemistoihin voidaan viitata absoluuttisesta tai suhteellista polkua käyttäen. Absoluuttinen viittaminen tarkoittaa, että polku tiedostoon kirjoitetaan täydellisenä juurihakemistosta lähtien esimerkiksi "/usr/doc/apache-1.3.34/README". Suhteellinen viittaminen tarkoittaa, että hakemistopolku on suhteessa aktiiviseen hakemistoon esimerkiksi "../../doc/apache-1.3.34/README".
Juurihakemisto
Juurihakemiston "/" alta tulee löytyä järjestelmän käynnistämiseen ja palauttamiseen tarvittavat osat. FHS-standardi määrittää seuraavat hakemistot:
/bin | Olennaiset järjestelmäkomennot kaikkien käyttäjien käytettäväksi. |
/boot | Järjestelmän käynnistämiseen tarvittavat tiedostot. Mm. Grub säilöö tarvitsemiaan tietoja tänne |
/dev | Laitetiedostot. |
/etc | Järjestelmän asetukset. |
/home | Käyttäjien kotihakemistot. Käyttäjä voi viitata omaan kotihakemistoonsa ~-merkillä. |
/lib | Järjestelmän jaetut kirjastot, sekä kernelin modulit. |
/media | Siirrettävän median liitoskohdat. |
/mnt | Väliaikaisesti liitetyt osiot. |
/opt | Kaupallisten ohjelmistojen käyttämä asennushakemisto. |
/proc | Vain linuxissa. Kernelin ja prosessien tiedot. Procfs levyjärjestelmän luoma virtuaalinen hakemisto. |
/root | Pääkäyttäjän kotihakemisto. |
/sbin | Järjestelmäsovellukset, ylläpitoon tarvittavia ohjelmia. Yleensä vain pääkäyttäjälle. |
/tmp | Väliaikaistiedostot, tyhjennetään koneen käynnistyessä uudelleen. |
/usr | Hakemiston alla käyttöjärjestelmän kannalta ei-kriittiset osat. |
/var | Muuttuvat tiedostot, logit yms.. |
/home kotihakemistot
Hakemiston "/home" alta löytyvät käyttäjän kotihakemistot, esimerkiksi "/home/pekka". Kotihakemiston alle tallennetaan kaikki käyttäjän tekemät tiedostot. Tämä helpottaa esimerkiksi tiedostojen varmuuskopiointia, koska kaikki käyttäjän tiedostot löytyvät samasta paikkaa.
Normaalikäyttäjän oikeuksilla pystyy tiedostoja tallentamaan tai muuttamaan vain omaan kotihakemistoon. Käyttäjä ei siis voi vahingossa poistaa tai muuttaa järjestelmän toiminnan kannalta oleellisia tiedostoja.
/usr hierarkia
/usr hakemiston alta löytyvät järjestelmän vähemmän kriittiset osat kuten sovellusohjelmat, dokumentaatio, ohjelmien jaetut tiedostot kuten fontit, ikonit jne..
Pakolliset elementit
Pakolliset elementit tulee löytyä jokaisesta järjestelmästä, ne ovat normaalin toiminnan kannalta olennaisia.
/usr/bin | Useimmat järjestelmäkomennot ja ohjelmat. |
/usr/include | C-kääntäjän otsikkotiedostot. |
/usr/lib | Hakemistosta /usr/lib saattaa löytyä seuraavia alihakemistoja
|
/usr/local | Paikallinen hierarkia. Oletuksena tyhjä, järjestelmän ylläpitäjä voi rakentaa oman tarvitsemansa hierarkian, esim dokumenttien jakoa varten käyttäjien kesken. |
/usr/sbin | Ei-kriittiset järjestelmän käyttämät ohjelmat. |
/usr/share | Jaetut arkkitehtuurista riippumattomat tiedostot.
Hakemistosta /usr/share saattaa löytyä seuraavia alikansioita
|
Valinnaiset elementit
Valinnaiset elementit sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.
/usr/X11R6 | Ikkunointijärjestelmä, ja sen tarvitsemat osat. |
/usr/games | Pelit. |
/usr/lib | Vaihtoehtoisia binäärimuotoja käyttävät kirjastot. |
/usr/src | Ohjelmien lähdekoodit. |
/var hierarkia
/var hakemisto on tarkoitettu järjestelmän ja sovellusten muuttuvien tietojen tallentamiseen. Tällaisia tietoja ovat esimerkiksi lokitiedostot sovellusten toiminnasta.
Pakolliset elementit
Pakolliset elementit tulee löytyä jokaisesta järjestelmästä, ne ovat normaalin toiminnan kannalta olennaisia.
/var/cache | Sovellusten cache tiedot. |
/var/lib | Sovellusten suorituksen aikaiset tilatiedot |
/var/local | Muuttuva data /usr/local hierarkiasta |
/var/lock | Lukitustiedostot. |
/var/log | Lokitiedostot |
/var/opt | Muuttuva data /opt hierarkiasta |
/var/run | Prosesseihin liittyvät ajotiedot. |
/var/spool | Sovellusten prosessointia odottava data |
/var/tmp | Väliaikaistiedostot, jotka säilytetään bootin yli. |
Valinnaiset elementit
Valinnaiset elementit sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.
/var/account | Prosessien aiheuttamien kuormituksen kirjaus. |
/var/crash | Järjestelmän kaatumisen selvittämistä auttavat tiedostot. |
/var/games | Pelien muuttuvat tiedot. |
/var/mail | Käyttäjien postilaatikot. |
/var/yp | Network Information Service (NIS) tietokannat. |
Varatut hierarkiat
/var hierarkian alla on historiallisista syistä varattuja hakemistoja.
/var/backups /var/cron /var/msgs /var/preserve