Ero sivun ”Hakemistorakenne” versioiden välillä

Siirry navigaatioon Siirry hakuun
8 732 merkkiä lisätty ,  24. kesäkuuta 2011
pientä parantelua
Ei muokkausyhteenvetoa
(pientä parantelua)
(42 välissä olevaa versiota 18 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
Linuxin kansiorakenne
Linuxin hakemistorakenne perustuu [[wikipedia:fi:Filesystem_Hierarchy_Standard|FHS-standardiin]], joka määrittää
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.


Linuxin kansiorakenne on erittäin fiksu. Se peittää tiedostojen todelliset fyysiset paikat hienosti. Kansiorakenne alkaa juurikansiosta jota merkitään /-merkillä. Jos johonkin tiedostoon halutaan päästä käsiksi niin siihen voidaan osoittaa absoluuttisesti. Absoluuttinen osoitus alkaa juurikansiosta.
== 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.


== Kansio /usr/lib ==
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.


Kansiosta /usr/lib saattaa löytyä seuraavia alikansioita
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".


* /usr/lib/fpc/ [[FreePascal]]-kääntäjä joka on [[Pascal]]-ohjelmointikielinen kääntäjä.
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.


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


Kansiosta /usr/share saattaa löytyä seuraavia alikansioita
{| border=1 width=100% cellpadding=4 cellspacing=0
|width=20%|/bin
|Välttämättömimmät peruskomennot kaikkien käyttäjien käytettäväksi.
|-
|width=20%|/boot
|Järjestelmän käynnistämiseen tarvittavat tiedostot. [[käynnistyslatain|Käynnistyslataimet]] kuten [[Grub]] ja [[Lilo]] säilövät tarvitsemiansa tietoja tänne.
|-
|width=20%|/dev
|[[Laitetiedostot]].
|-
|width=20%|/etc
|Järjestelmän ja useimpien [[daemon]]ien [[Asetustiedostojen perusteet|asetukset]]. Ohjelmien järjestelmänlaajuiset 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 ==
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>.
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.
== /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 ===
Normaalin toiminnan kannalta olennaisia elementtejä, joiden tulee löytyä jokaisesta järjestelmästä.
{| border=1 width=100% cellpadding=4 cellspacing=0
|width=20%|/usr/bin
|Useimmat kaikkien käyttäjien käytössä olevat komennot ja ohjelmat.
|-
|width=20%|/usr/include
|[[C]]-kääntäjän otsikkotiedostot.
|-
|width=20%|/usr/lib
|Erilaisia ei-kriittisiä [[kirjasto]]ja. Osa näistä on oman alihakemistonsa alla.
|-
|width=20%|/usr/local
|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.
|-
|width=20%|/usr/sbin
|Ei-kriittiset ensisijaisesti pääkäyttäjälle tarkoitetut ylläpito-ohjelmat.
|-
|width=20%|/usr/share
|Jaetut arkkitehtuurista riippumattomat tiedostot.
Hakemistosta /usr/share saattaa löytyä esimerkiksi 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 sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.
{| border=1 width=100% cellpadding=4 cellspacing=0
|width=20%|/usr/X11R6
|[[X]]-ikkunointijärjestelmä ja sen tarvitsemat osat. Usein symbolinen linkki hakemistoon /usr/bin
|-
|width=20%|/usr/games
|Pelit (varsinaiset ohjelmatiedostot).
|-
|width=20%|/usr/src
|Ohjelmien (mm. ytimen) 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 ===
Pakollisten elementtien tulee löytyä jokaisesta järjestelmästä, ne ovat normaalin toiminnan kannalta olennaisia.
{| border=1 width=100% cellpadding=4 cellspacing=0
|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===
Valinnaiset elementit sisältävät mahdollisesti tarpeellisia järjestelmän laajennusosia.
{| border=1 width=100% cellpadding=4 cellspacing=0
|/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.
|}
=== Varatut hierarkiat ===
/var-hierarkian alla on historiallisista syistä varattuja hakemistoja:
    /var/backups
    /var/cron
    /var/msgs
    /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]]
3

muokkausta

Navigointivalikko