Ero sivun ”Hakemistorakenne” versioiden välillä

Linux.fista
Siirry navigaatioon Siirry hakuun
p ({{Hakemistorakenne}} lisätty)
 
(12 välissä olevaa versiota 8 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
Linuxin hakemistorakenne on määritetty [[wikipedia:fi:Filesystem_Hierarchy_Standard|FHS-standardissa]], joka määrittää
{{Hakemistorakenne}}
joukon hakemistoja ja niiden pääasiallisen käyttötarkoituksen. Useimmat [[jakelu]]t noudattavat nykyisin tätä standardia. Tunnetuimpana poikkeuksena on [[GoboLinux]], jossa hakemistorakenne on järjestetty kokonaan uudelta pohjalta.
 
'''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.


== Yleistä ==
== Yleistä ==
Rivi 10: Rivi 12:
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".
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".


== Juurihakemisto ==
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.
Juurihakemiston "/" alta tulee löytyä järjestelmän käynnistämiseen ja palauttamiseen tarvittavat osat. [[wikipedia:fi:Filesystem_Hierarchy_Standard|FHS-standardi]] määrittää seuraavat hakemistot:
 
== 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:


{| border=1 width=100% cellpadding=4 cellspacing=0
{| border=1 width=100% cellpadding=4 cellspacing=0
Rivi 24: Rivi 28:
|-
|-
|width=20%|/etc
|width=20%|/etc
|Järjestelmän ja useimpien [[daemon]]ien [[Asetustiedostojen perusteet|asetukset]].
|Järjestelmän ja useimpien [[daemon]]ien [[Asetustiedostojen perusteet|asetukset]]. Ohjelmien järjestelmänlaajuiset asetukset.
|-
|-
|width=20%|/home
|width=20%|/home
Rivi 49: Rivi 53:
|width=20%|/sbin
|width=20%|/sbin
|Välttämättömimmät ylläpito-ohjelmat. Useimmat näistä on tarkoitettu vain pääkäyttäjälle.
|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
|width=20%|/sys
Rivi 54: Rivi 61:
|-
|-
|width=20%|/tmp
|width=20%|/tmp
|Väliaikaistiedostot, tyhjennetään koneen käynnistyessä uudelleen. Kaikilla käyttäjillä on luku- ja kirjoitus[[chmod|oikeudet]] /tmp-hakemistoon.
|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
|width=20%|/usr
Rivi 67: Rivi 74:
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>.
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 omaan kotihakemistoon (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.
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.
 
Kansioon /home/*/bin voi laittaa ohjelmia joita suoritetaan komentotulkissa.


== /usr-hierarkia ==
== /usr-hierarkia ==
Rivi 114: Rivi 123:
{| border=1 width=100% cellpadding=4 cellspacing=0
{| border=1 width=100% cellpadding=4 cellspacing=0
|width=20%|/usr/X11R6
|width=20%|/usr/X11R6
|[[X]]-ikkunointijärjestelmä ja sen tarvitsemat osat.
|[[X]]-ikkunointijärjestelmä ja sen tarvitsemat osat. Usein symbolinen linkki hakemistoon /usr/bin
|-
|-
|width=20%|/usr/games
|width=20%|/usr/games
|Pelien binääreitä.
|Pelit (varsinaiset ohjelmatiedostot).
|-
|-
|width=20%|/usr/src
|width=20%|/usr/src
Rivi 132: Rivi 141:
{| border=1 width=100% cellpadding=4 cellspacing=0
{| border=1 width=100% cellpadding=4 cellspacing=0
|width=20%|/var/cache
|width=20%|/var/cache
|Sovellusten cache-tiedot.
|Sovellusten välimuistitiedot. Tiedostot ovat uudestaan luotavissa ja täällä vain tehokkuussyistä.
|-
|-
|width=20%|/var/lib
|width=20%|/var/lib
|Sovellusten suorituksen aikaiset tilatiedot
|Sovellusten suorituksen aikaiset tilatiedot, mm. [[paketinhallinta|pakettitietokannat]]
|-
|-
|width=20%|/var/local
|width=20%|/var/local
Rivi 144: Rivi 153:
|-
|-
|width=20%|/var/log
|width=20%|/var/log
|Lokitiedostot.
|[[Lokitiedostot]].
|-
|-
|width=20%|/var/opt
|width=20%|/var/opt
Rivi 153: Rivi 162:
|-
|-
|width=20%|/var/spool
|width=20%|/var/spool
|Sovellusten prosessointia odottava data
|Sovellusten prosessointia odottava data, mm. tulostusjonot
|-
|-
|width=20%|/var/tmp
|width=20%|/var/tmp
Rivi 164: Rivi 173:
{| border=1 width=100% cellpadding=4 cellspacing=0
{| border=1 width=100% cellpadding=4 cellspacing=0
|/var/account
|/var/account
|Prosessien aiheuttamien kuormituksen kirjaus.
|Prosessien aiheuttamien kuormitusten kirjaus.
|-
|-
|/var/crash
|/var/crash
Rivi 177: Rivi 186:
|/var/yp
|/var/yp
|Network Information Service (NIS) tietokannat.
|Network Information Service (NIS) tietokannat.
|-
|/var/www/html
|[[Apache HTTPD]]-palvelinohjelmiston kansio.
|}
|}


Rivi 189: Rivi 201:


==Katso myös==
==Katso myös==
*[[Kansion yhteiskäyttö ryhmässä]]
*[[Miten osioisin kiintolevyn]]
*[[Miten osioisin kiintolevyn]]
*[[Asetustiedostojen perusteet]]
*[[Asetustiedostojen perusteet]]
Rivi 194: Rivi 207:
==Aiheesta muualla==
==Aiheesta muualla==
*[http://www.pathname.com/fhs/ FHS-standardin kotisivu]
*[http://www.pathname.com/fhs/ FHS-standardin kotisivu]
*[[wikipedia:en:fhs|FHS-standardi englanninkielisessä Wikipediassa]]
*[[wikipedia:en:Filesystem Hierarchy Standard|FHS-standardi englanninkielisessä Wikipediassa]]


[[Luokka:Järjestelmä]]
[[Luokka:Järjestelmä]]
[[Luokka:Tiedostojärjestelmät]]
[[Luokka:Tiedostojärjestelmät]]

Nykyinen versio 10. syyskuuta 2021 kello 14.31

Hakemistorakenne

/

/bin
/boot
/dev
/etc
/home
/lib
/lost+found
/media
/mnt
/opt
/proc
/root
/run
/sbin
/selinux
/sources
/srv
/sys
/tmp
/usr
/var

Linuxin hakemistorakenne perustuu FHS-standardiin, joka määrittää joukon hakemistoja ja niiden pääasiallisen käyttötarkoituksen. Tätä standardia noudattavat nykyisin useimmat jakelut. Tunnetuimpana poikkeuksena on GoboLinux, jossa hakemistorakenne on järjestetty kokonaan uudelta pohjalta.

Yleistä[muokkaa]

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 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".

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[muokkaa]

FHS-standardi määrittää seuraavat hakemistot lukuunottamatta /sys-hakemistoa, joka on lueteltu tässä selkeyden vuoksi:

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

/home[muokkaa]

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 komentotulkeissa sinne pääsee komentamalla pelkästään cd.

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.

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

/usr-hierarkia[muokkaa]

/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[muokkaa]

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

/usr/bin Useimmat kaikkien käyttäjien käytössä olevat komennot ja ohjelmat.
/usr/include C-kääntäjän otsikkotiedostot.
/usr/lib Erilaisia ei-kriittisiä kirjastoja. Osa näistä on oman alihakemistonsa alla.
/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.
/usr/sbin Ei-kriittiset ensisijaisesti pääkäyttäjälle tarkoitetut ylläpito-ohjelmat.
/usr/share Jaetut arkkitehtuurista riippumattomat tiedostot.

Hakemistosta /usr/share saattaa löytyä esimerkiksi seuraavia alikansioita:

  • /usr/share/compiz sisältää Compizin 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/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/man sisältää man-sivut
  • /usr/share/wallpapers sisältää KDE:n taustakuvakirjastoja

Valinnaiset elementit[muokkaa]

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

/usr/X11R6 X-ikkunointijärjestelmä ja sen tarvitsemat osat. Usein symbolinen linkki hakemistoon /usr/bin
/usr/games Pelit (varsinaiset ohjelmatiedostot).
/usr/src Ohjelmien (mm. ytimen) lähdekoodit.

/var-hierarkia[muokkaa]

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

Pakolliset elementit[muokkaa]

Pakollisten elementtien tulee löytyä jokaisesta järjestelmästä, ne ovat normaalin toiminnan kannalta olennaisia.

/var/cache Sovellusten välimuistitiedot. Tiedostot ovat uudestaan luotavissa ja täällä vain tehokkuussyistä.
/var/lib Sovellusten suorituksen aikaiset tilatiedot, mm. pakettitietokannat
/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, mm. tulostusjonot
/var/tmp Väliaikaistiedostot, jotka säilytetään uudelleenkäynnistyksen yli.

Valinnaiset elementit[muokkaa]

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

/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[muokkaa]

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

   /var/backups
   /var/cron
   /var/msgs
   /var/preserve

Katso myös[muokkaa]

Aiheesta muualla[muokkaa]