Muokataan sivua Hakemistorakenne

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
Rivi 1: Rivi 1:
{{Hakemistorakenne}}
Linuxin kansiorakenne


'''Linuxin hakemistorakenne''' perustuu [[wikipedia:fi:Filesystem_Hierarchy_Standard|FHS-standardiin]], joka määrittää
Linuxin kansiorakenne on hierarkinen. Se perustuu alkuperäiseen AT&T UNIX:in levyjärjestelmärakenteeseen. Useimmat levitysversiot noudattavat nykyisin FHS standardia, jossa määritellään mitä kansioita järjestelmästä tulisi löytyä, ja mitä niiden pitäisi sisältää.
joukon hakemistoja ja niiden pääasiallisen käyttötarkoituksen. Tätä standardia noudattavat nykyisin useimmat [[jakelu]]t. Tunnetuimpana poikkeuksena on [[GoboLinux]], jossa hakemistorakenne on järjestetty kokonaan uudelta pohjalta.


== Yleistä ==
Hierarkinen rakenne mahdollistaa järjestelmän paloittelemisen useille kovalevyille tai useille RAID-osioille. Hotswap-tuen omaavilla laitteistoilla voidaan tämän avulla kasvattaa joidenkin levyosioiden kokoa tarvittaessa sammuttamatta järjestelmää. Levyn tai levypakan vaihto onnistuu pelkästään poistamalla kyseisen osion liitos ja liittämällä uusi osio tilalle.
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.
Kansiorakenne alkaa juurikansiosta jota merkitään [[kauttaviiva|/-merkillä (kauttaviiva)]]. Jos johonkin tiedostoon halutaan päästä käsiksi niin siihen voidaan osoittaa absoluuttisesti. [[Absoluuttinen tiedostonimi|Absoluuttinen tiedostonimen]] osoitus alkaa [[juurikansio]]sta.


Tiedostoihin ja hakemistoihin voidaan viitata absoluuttisesta tai suhteellista polkua käyttäen. Absoluuttinen viittaaminen tarkoittaa, että polku tiedostoon kirjoitetaan täydellisenä juurihakemistosta lähtien esimerkiksi "/usr/doc/apache-1.3.34/README". Suhteellinen viittaaminen tarkoittaa, että hakemistopolku on suhteessa aktiiviseen hakemistoon esimerkiksi "../../doc/apache-1.3.34/README".
FHS standardi määrittelee seuraavat kansiot:


Tiedostojen fyysinen sijainti voi olla eri kuin mitä virallinen hakemistorakenne antaa ymmärtää: jos jostakin syystä sijoitetaan hakemisto tai tiedosto eri paikkaan kuin missä sen oletetaan olevan, sen tilalle voidaan luoda [[symbolinen linkki]] osoittamaan paikkaa, mistä se oikeasti löytyy. Näitä linkkejä on käytetty erityisesti silloin, kun käytännöt ovat vaihdelleet Unixista (ja versiosta) toiseen.


== Päähakemistot ja niiden sisällöt ==
== /bin ==  
[[wikipedia:fi:Filesystem_Hierarchy_Standard|FHS-standardi]] määrittää seuraavat hakemistot lukuunottamatta /sys-hakemistoa, joka on lueteltu tässä selkeyden vuoksi:


{| border=1 width=100% cellpadding=4 cellspacing=0
Olennaiset järjestelmäkomennot kaikkien käyttäjien käytettäväksi.
|width=20%|/bin
 
|Välttämättömimmät peruskomennot kaikkien käyttäjien käytettäväksi.  
== /boot ==
|-
 
|width=20%|/boot
Järjestelmän käynnistämiseen tarvittavat tiedostot.
|Järjestelmän käynnistämiseen tarvittavat tiedostot. [[käynnistyslatain|Käynnistyslataimet]] kuten [[Grub]] ja [[Lilo]] säilövät tarvitsemiansa tietoja tänne.
 
|-
== /dev ==
|width=20%|/dev
 
|[[Laitetiedostot]].
Laitetiedostot.
|-
 
|width=20%|/etc
== /etc ==
|Järjestelmän ja useimpien [[daemon]]ien [[Asetustiedostojen perusteet|asetukset]]. Ohjelmien järjestelmänlaajuiset asetukset.
 
|-
Järjestelmän asetukset.
|width=20%|/home
|Käyttäjien [[kotihakemisto]]t. Käyttäjä voi viitata omaan kotihakemistoonsa <tt>~</tt>-merkillä, muiden kotihakemistoihin <tt>~kayttaja</tt>.
|-
|width=20%|/lib
|Järjestelmän toiminnan kannalta kriittiset jaetut kirjastot sekä [[ydin|ytimen]] moduulit.
|-
|width=20%|/media
|Siirrettävän median liitoskohdat.
|-
|width=20%|/mnt
|Väliaikaisesti [[Mount|liitetyt]] osiot.
|-
|width=20%|/opt
|Isoja, erillisiä ohjelmapaketteja, joita ei jostain syystä haluta lisätä /usr-hakemiston alle (esim. suljettuja ohjelmia). Monissa [[jakelu]]issa on olemassa mm. /opt/[[kde]] ja /opt/[[mozilla]]
|-
|width=20%|/proc
|[[ydin|Ytimen]] ja [[prosessi]]en tiedot. [[Procfs]]-järjestelmän luoma virtuaalinen hakemisto.
|-
|width=20%|/root
|[[Pääkäyttäjä]]n kotihakemisto.
|-
|width=20%|/sbin
|Välttämättömimmät ylläpito-ohjelmat. Useimmat näistä on tarkoitettu vain pääkäyttäjälle.
|-
|width=20%|/srv
| Paikallisen [[palvelin]]ohjelmiston (esimerkiksi [[HTTP]]- tai [[FTP]]-palvelimen) tarjoamaa sivustokohtaista dataa.
|-
|width=20%|/sys
| [[sys-tiedostojärjestelmä|Sysfs]]-järjestelmän luoma /proc:in tapainen virtuaalinen hakemisto, joka kuvaa laitteiston ja ajurien yhteyksiä. Mukana Linuxin ytimissä 2.6-versiosarjasta lähtien.
|-
|width=20%|/tmp
|Väliaikaistiedostot, tyhjennetään koneen käynnistyessä uudelleen. Kaikilla käyttäjillä on [[tiedoston oikeudet|luku- ja kirjoitusoikeudet]] /tmp-hakemistoon. /tmp saattaa olla [[symbolinen linkki]] hakemistoon /var/tmp.
|-
|width=20%|/usr
|Vain luettavaksi tarkoitettua tietoa, joka on tarvittaessa mahdollista jakaa useamman järjestelmän kesken. Täältä löytyvät mm. useimmat sovellusohjelmat.
|-
|width=20%|/var
|Muuttuvat tiedostot, lokitiedostot yms.
|}


== /home ==
== /home ==


Hakemiston /home alta löytyvät käyttäjien 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 paikasta. ~-merkki (mato, tilde) viittaa kotihakemistoon, ja useimmissa [[Komentotulkki|komentotulkeissa]] sinne pääsee komentamalla pelkästään <tt>cd</tt>.
Käyttäjien kotihakemistot.
 
== /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ä asennuskansio.
 
== /proc ==
 
Vain linuxissa. Kernelin ja prosessien tiedot. Procfs levyjärjestelmän luoma virtuaalinen kansio.
 
== /root ==
 
Pääkäyttäjän kotihakemisto.
 
== /sbin ==


Normaalikäyttäjän oikeuksilla pystyy tiedostoja tallentamaan tai muuttamaan vain omassa kotihakemistossa (sekä /tmp, /var/tmp /var/mail/omatunnus ja epäsuorasti esimerkiksi tulostinjonoa ja pelien tuloksia). Käyttäjä ei siis voi vahingossa poistaa tai muuttaa järjestelmän yleisen toiminnan kannalta oleellisia tiedostoja.
Pääkäyttäjän sovellukset.


Kansioon /home/*/bin voi laittaa ohjelmia joita suoritetaan komentotulkissa.
== /tmp ==


== /usr-hierarkia ==
Väliaikaistiedostot, tyhjennetään koneen käynnistyessä uudelleen.


/usr-hakemiston alta löytyvät järjestelmän vähemmän kriittiset osat kuten sovellusohjelmat,
== /usr hierarkia ==
dokumentaatio, ohjelmien jaetut tiedostot kuten fontit, ikonit jne.
 
/usr muodostaa oman hierarkian, joka jakautuu useaan osaan:


=== Pakolliset elementit ===
=== Pakolliset elementit ===
Normaalin toiminnan kannalta olennaisia elementtejä, joiden tulee löytyä jokaisesta järjestelmästä.


{| border=1 width=100% cellpadding=4 cellspacing=0
Pakolliset elementit tulee löytyä jokaisesta järjestelmästä, ne ovat toiminnan kannalta olennaisia.
|width=20%|/usr/bin
 
|Useimmat kaikkien käyttäjien käytössä olevat komennot ja ohjelmat.
==== bin ====
|-
 
|width=20%|/usr/include
Useimmat järjestelmäkomennot ja ohjelmat.
|[[C]]-kääntäjän otsikkotiedostot.
 
|-
==== include ====
|width=20%|/usr/lib
 
|Erilaisia ei-kriittisiä [[kirjasto]]ja. Osa näistä on oman alihakemistonsa alla.
C-kääntäjän otsikkotiedostot.
|-
 
|width=20%|/usr/local
==== lib ====
|Paikallinen hierarkia. Oletuksena tyhjä, järjestelmän ylläpitäjä voi rakentaa oman tarvitsemansa hierarkian esimerkiksi dokumenttien jakamiseksi käyttäjien kesken. /usr/local/src-hakemiston alle on perinteisesti sijoitettu itse käännettyjen ohjelmien lähdekoodeja. /usr/local/bin ja /usr/local/sbin on tarkoitettu itse tehdyille tai käsin asennetuille ohjelmille ja skripteille.
 
|-
Kansiosta /usr/lib saattaa löytyä seuraavia alikansioita
|width=20%|/usr/sbin
 
|Ei-kriittiset ensisijaisesti pääkäyttäjälle tarkoitetut ylläpito-ohjelmat.
* /usr/lib/fpc/ [[FreePascal]]-kääntäjä joka on [[Pascal]]-ohjelmointikielinen kääntäjä.
|-
 
|width=20%|/usr/share
==== local ====
|Jaetut arkkitehtuurista riippumattomat tiedostot.
 
Hakemistosta /usr/share saattaa löytyä esimerkiksi seuraavia alikansioita:
Paikallinen hierarkia. Oletuksena tyhjä, järjestelmän ylläpitäjä voi rakentaa oman tarvitsemansa hierarkian, esim dokumenttien jakoa varten käyttäjien kesken.
 
==== sbin ====
 
Ei-kriittiset järjestelmän käyttämät binäärit.
 
==== share ====
 
Jaetut arkkitehtuurista riippumattomat tiedostot.
Kansiosta /usr/share saattaa löytyä seuraavia alikansioita


* /usr/share/compiz sisältää [[Compiz]]in tiedostoja
* /usr/share/dict sisältää sanalistoja esimerkiksi oikolukua varten
* /usr/share/doc sisältää asennettujen ohjelmien ohjeita
* /usr/share/fpcsrc  sisältää [[FreePascal]]:n lähdekoodit
* /usr/share/fpcsrc  sisältää [[FreePascal]]:n lähdekoodit
* /usr/share/games sisältää /usr/games-hakemiston pelien staattiset tiedostot
* /usr/share/info sisältää [[info]]-sivut
* /usr/share/lazarus sisältää [[Lazarus]]-ohjelmankehitysympäristön
* /usr/share/lazarus sisältää [[Lazarus]]-ohjelmankehitysympäristön
* /usr/share/man sisältää [[man]]-sivut
 
* /usr/share/wallpapers sisältää [[KDE]]:n taustakuvakirjastoja
|}


=== Valinnaiset elementit ===
=== Valinnaiset elementit ===
Rivi 121: Rivi 105:
Valinnaiset elementit sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.
Valinnaiset elementit sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.


{| border=1 width=100% cellpadding=4 cellspacing=0
==== X11R6 ====
|width=20%|/usr/X11R6
 
|[[X]]-ikkunointijärjestelmä ja sen tarvitsemat osat. Usein symbolinen linkki hakemistoon /usr/bin
Ikkunointijärjestelmä, ja sen tarvitsemat osat.
|-
 
|width=20%|/usr/games
==== games ====
|Pelit (varsinaiset ohjelmatiedostot).
 
|-
Pelit.
|width=20%|/usr/src
 
|Ohjelmien (mm. ytimen) lähdekoodit.
==== lib ====
|-
 
|}
Vaihtoehtoisia binäärimuotoja käyttävät kirjastot.
 
==== src ====
 
Lähdekoodit.
 
 
== /var hierarkia ==
 
=== Pakolliset ===
 
==== cache ====
 
Sovellusten cache tiedot.
 
==== lib ====
 
==== local ====
 
Muuttuva data /usr/local hierarkiasta
 
==== lock ====
 
Lukitustiedostot.
 
==== log ====
 
Lokitiedostot
 
==== opt ====
 
Muuttuva data /opt hierarkiasta
 
==== run ====
 
Prosesseihin liittyvät ajotiedot.
 
==== spool ====
 
Sovellusten prosessointia odottava data
 
==== tmp ====
 
Väliaikaistiedostot, jotka säilytetään bootin yli.
 
=== Valinnaiset ===
 
==== account ====
 
Prosessien aiheuttamien kuormituksen kirjaus.


== /var-hierarkia ==
==== crash ====
/var hakemisto on tarkoitettu järjestelmän ja sovellusten muuttuvien tietojen tallentamiseen. Tällaisia tietoja ovat esimerkiksi lokitiedostot sovellusten toiminnasta. 


=== Pakolliset elementit ===
Järjestelmän kaatumisen selvittämistä auttamvat tiedostot.
Pakollisten elementtien tulee löytyä jokaisesta järjestelmästä, ne ovat normaalin toiminnan kannalta olennaisia.
 
==== games ====
 
Pelien muuttuvat tiedot.
 
==== mail ====


{| border=1 width=100% cellpadding=4 cellspacing=0
Käyttäjien postilaatikot.
|width=20%|/var/cache
|Sovellusten välimuistitiedot. Tiedostot ovat uudestaan luotavissa ja täällä vain tehokkuussyistä.
|-
|width=20%|/var/lib
|Sovellusten suorituksen aikaiset tilatiedot, mm. [[paketinhallinta|pakettitietokannat]]
|-
|width=20%|/var/local
|Muuttuva data /usr/local-hierarkiasta.
|-
|width=20%|/var/lock
|Lukitustiedostot.
|-
|width=20%|/var/log
|[[Lokitiedostot]].
|-
|width=20%|/var/opt
|Muuttuva data /opt-hierarkiasta.
|-
|width=20%|/var/run
|Prosesseihin liittyvät ajotiedot.
|-
|width=20%|/var/spool
|Sovellusten prosessointia odottava data, mm. tulostusjonot
|-
|width=20%|/var/tmp
|Väliaikaistiedostot, jotka säilytetään uudelleenkäynnistyksen yli.
|}


=== Valinnaiset elementit===
==== yp ====
Valinnaiset elementit sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.


{| border=1 width=100% cellpadding=4 cellspacing=0
Network Information Service (NIS) tietokannat.
|/var/account
|Prosessien aiheuttamien kuormitusten 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.
|-
|/var/www/html
|[[Apache HTTPD]]-palvelinohjelmiston kansio.
|}


=== Varatut hierarkiat ===
=== Varatut hierarkiat ===


/var-hierarkian alla on historiallisista syistä varattuja hakemistoja:
/var hierarkian alla on historiallisista syistä varattuja kansioita.


     /var/backups
     /var/backups
Rivi 199: Rivi 190:
     /var/msgs
     /var/msgs
     /var/preserve
     /var/preserve
==Katso myös==
*[[Kansion yhteiskäyttö ryhmässä]]
*[[Miten osioisin kiintolevyn]]
*[[Asetustiedostojen perusteet]]
==Aiheesta muualla==
*[http://www.pathname.com/fhs/ FHS-standardin kotisivu]
*[[wikipedia:en:Filesystem Hierarchy Standard|FHS-standardi englanninkielisessä Wikipediassa]]
[[Luokka:Järjestelmä]]
[[Luokka:Tiedostojärjestelmät]]
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)

Tällä sivulla käytetty malline: