Ero sivun ”Tiedostojärjestelmän pääsylistat (ACL)” versioiden välillä

Siirry navigaatioon Siirry hakuun
p
ei muokkausyhteenvetoa
(Juttua getfacl- ja setfacl-komennoista.)
pEi muokkausyhteenvetoa
 
(6 välissä olevaa versiota 4 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
'''DRAFT! TÄMÄ EI OLE VIELÄ VALMIS.'''
Linux tukee joillakin tiedostojärjestelmillä niin sanottuja '''pääsylistoja''', englanniksi access control list (ACL). Pääsylistoilla voidaan Linuxin [[Tiedoston oikeudet|perinteisiä tiedoston oikeuksia]] joustavammin hallita kenellä on pääsy eri tavalla käsitellä tiedostoja ja hakemistoja. Tavallisella Linuxin pääsyoikeusmekanismilla ei esimerkiksi ole mahdollista antaa kahdelle tai useammalle ryhmälle räätälöityjä oikeuksia tiedostoon.
 
Linux tukee joillakin tiedostojärjestelmillä niin sanottuja pääsylistoja, englanniksi access control list (ACL). Pääsylistoilla voidaan Linuxin [[Tiedoston oikeudet|perinteisiä tiedoston oikeuksia]] joustavammin hallita kenellä on pääsy eri tavalla käsitellä tiedostoja ja hakemistoja. Tavallisella Linuxin pääsyoikeusmekanismilla ei esimerkiksi ole mahdollista antaa kahdelle tai useammalle ryhmälle räätälöityjä oikeuksia tiedostoon.


==Taustaa==
==Taustaa==


Unixissa ja sitä myötä Linuxissa ei perinteisesti ole ollut tukea pääsylistoille, vaikka joissakin muissa käyttöjärjestelmissä ne ovat olleet käytössä jo 1960-luvulla. Unixin ACL:n standardointia varten perustettiin POSIX-työryhmä, joka ei kuitenkaan saanut työtänsä päätökseen. Työryhmän työn tuloksena jäi kuitenkin "POSIX 1003.1e Draft 17", joka oli viimeinen työversio jonka ryhmä sai aikaiseksi ennen rahoituksen loppumista. Tämän työversion pohjalta toteutettiin ACL:t Linuxin kernel-versioon 2.5.46 vuonna 2002.
Unixissa ja sitä myötä Linuxissa ei perinteisesti ole ollut tukea pääsylistoille, vaikka joissakin muissa käyttöjärjestelmissä ne ovat olleet käytössä jo 1960-luvulla. Unixin ACL:n standardointia varten perustettiin [[POSIX]]-työryhmä, joka ei kuitenkaan saanut työtänsä päätökseen. Työryhmän työn tuloksena jäi kuitenkin "POSIX 1003.1e Draft 17", joka oli viimeinen työversio jonka ryhmä sai aikaiseksi ennen rahoituksen loppumista. Tämän työversion pohjalta toteutettiin ACL:t Linuxin kernel-versioon 2.5.46 vuonna 2002.


"POSIX draft"-ACL:ien lisäksi on NFSv4-verkkotiedostojärjestelmää varten olemassa oma ACL-spesifikaatio ja toteutus. Tällä sivulla keskitytään kuitenkin "POSIX draft ACL"-pääsylistoihin.
"POSIX draft"-ACL:ien lisäksi on [[NFS]]v4-verkkotiedostojärjestelmää varten olemassa oma ACL-spesifikaatio ja toteutus. Tällä sivulla keskitytään kuitenkin "POSIX draft ACL"-pääsylistoihin.


==Järjestelmävaatimukset==
==Järjestelmävaatimukset==
Rivi 69: Rivi 67:
==Pääsylistojen muokkaus==
==Pääsylistojen muokkaus==


<tt>ls -l</tt> -komento antaa vinkin tiedostoon liitetyistä pääsylistoista tulostamalla <tt>+</tt>-merkin suojauskentän perään. Ls-ohjelmalla ei kuitenkaan kerro tämän enempää pääsylistoista.
<tt>ls -l</tt> -komento antaa vinkin tiedostoon liitetyistä pääsylistoista tulostamalla <tt>+</tt>-merkin suojauskentän perään. Ls-ohjelma ei kuitenkaan kerro tämän enempää pääsylistoista.


Pääsylistojen käsittelyä varten on olemassa ohjelmat <tt>getfacl</tt> ja <tt>setfacl</tt>. Ellei näitä ohjelmia ole asennettu jo valmiiksi, ne pitää ladata ja asentaa erikseen. Miten tämä tapahtuu on jakeluriippuvaista – ne löytyvät tyypillisesti paketista nimeltään 'acl', tms.
Pääsylistojen käsittelyä varten on olemassa ohjelmat <tt>getfacl</tt> ja <tt>setfacl</tt>. Ellei näitä ohjelmia ole asennettu jo valmiiksi, ne pitää ladata ja asentaa erikseen. Miten tämä tapahtuu on jakeluriippuvaista – ne löytyvät tyypillisesti paketista nimeltään 'acl', tms.
Rivi 137: Rivi 135:
* Monet varmuuskopiointiin käytetyt ohjelmat, kuten <tt>tar</tt>, eivät ymmärrä pääsylistoja. Tämä johtaa siihen, että tiedostot menettävät pääsylistansa, jos ne joudutaan palauttamaan <tt>tar</tt>-arkistosta.
* Monet varmuuskopiointiin käytetyt ohjelmat, kuten <tt>tar</tt>, eivät ymmärrä pääsylistoja. Tämä johtaa siihen, että tiedostot menettävät pääsylistansa, jos ne joudutaan palauttamaan <tt>tar</tt>-arkistosta.


* Jotkut editorit toimivat siten, että tallennuksen eivät kirjoita tiedostoa uudestaan, vaan kirjoittavat muokatun tekstin uuteen tiedostoon, jonka nimeävät vanhan tiedoston mukaan. Käyttäjä ei huomaa tiedoston vaihtumista, sillä nimi on sama. Koska tiedosto kuitenkin on järjestelmän kannalta uusi, jos editori ei ota asiaa huomioon, tiedostossa saattaa olla väärä pääsylista. Uusi tiedosto saattaa saada pääsylistansa hakemiston oletuspääsylista, tai ei mitään pääsylistaa. Mm. Emacs-editori toimii oletusarvoisesti näin.
* Jotkut editorit toimivat siten, että tallennus ei kirjoita tiedostoa uudestaan, vaan kirjoittaa muokatun tekstin uuteen tiedostoon, joka nimetään vanhan tiedoston mukaan. Käyttäjä ei huomaa tiedoston vaihtumista, sillä nimi on sama. Koska tiedosto kuitenkin on järjestelmän kannalta uusi, jos editori ei ota asiaa huomioon, tiedostossa saattaa olla väärä pääsylista. Uusi tiedosto saattaa saada pääsylistansa hakemiston oletuspääsylista, tai ei mitään pääsylistaa. Mm. Emacs-editori toimii oletusarvoisesti näin.


* Tiedosto perii oletuspääsylistan vain hakemistosta, jossa se luodaan. Tiedosto säilyttää pääsylistansa, jos se siirretään (<tt>mv</tt>-käskyllä) tai kopioidaan (<tt>cp</tt>-käskyllä) toiseen hakemistoon, vaikka kohdehakemistolla on oletuspääsylista. Jos tiedosto luodaan hakemistossa, jossa ei ole oletuspääsylistaa, tai tiedostojärjestelmä ei edes tue pääsylistoja, tiedostoon ei tule mitään pääsylistaa.
* Tiedosto perii oletuspääsylistan vain hakemistosta, jossa se luodaan. Tiedosto säilyttää pääsylistansa, jos se siirretään (<tt>mv</tt>-käskyllä) tai kopioidaan (<tt>cp</tt>-käskyllä) toiseen hakemistoon, vaikka kohdehakemistolla on oletuspääsylista. Jos tiedosto luodaan hakemistossa, jossa ei ole oletuspääsylistaa, tai tiedostojärjestelmä ei edes tue pääsylistoja, tiedostoon ei tule mitään pääsylistaa.
==Aiheesta muualla==
* [http://www.suse.de/~agruen/acl/linux-acls/online/ POSIX Access Control Lists on Linux] {{Vanhentunut linkki}}
* [http://www.vanemery.com/Linux/ACL/linux-acl.html Using ACLs with Fedora Core 2  (Linux Kernel 2.6.5)]
[[Luokka:Järjestelmä]]
[[Luokka:Ohjeet]]
[[Luokka:Tiedostojärjestelmät]]
[[Luokka:Käyttäjät ja ryhmät]]
1 122

muokkausta

Navigointivalikko