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

Siirry navigaatioon Siirry hakuun
Juttua getfacl- ja setfacl-komennoista.
(Juttua getfacl- ja setfacl-komennoista.)
Rivi 73: Rivi 73:
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.


Ohjelmalla <tt>getfacl</tt> voi tutkia tiedostoon liittyviä pääsylistoja, ohjelmalla <tt>setfacl</tt> vastaavasti asettaa tai kokonaan poistaa.
Ohjelmalla <tt>getfacl</tt> ("Get File ACL") voi tutkia tiedostoon liittyvää pääsylistaa, ohjelmalla <tt>setfacl</tt> ("Set File ACL") voi pääsylistaa muokata tai kokonaan poistaa.


'''<Tähän tulee lisää tekstiä>'''
Esimerkki getfacl-komennon tulosteesta:
 
> getfacl juttu.txt
# file: juttu.txt
# owner: hemmo
# group: users
user::rw-
group::r--
group:devel:rw-            #effective:r--
mask::r-x
other::r--
 
Saman tiedoston listaus <tt>ls -l</tt> -komennolla:
 
> ls -l juttu.txt
-rw-r-xr--+ 1 hemmo users 0 Sep 16 08:49 juttu.txt
 
Getfacl-komennon tulosteesta nähdään, että
* tiedoston omistaa käyttäjä hemmo ja sen ryhmäomistaja on users
* hemmolla on luku- ja kirjoitusoikeus tiedostoon
* users-ryhmän jäsenillä on lukuoikeus tiedostoon
* devel-ryhmän jäsenille on erikseen annettu luku- ja kirjoitusoikeus tiedostoon, mutta...
** koska mask:n arvo on r-x, devel-ryhmällä ei kuitenkaan ole kirjoitusoikeutta
* jos tiedostoa käsittelee joku muu kuin hemmo tai edellä mainittujen ryhmien jäsen, sovelletaan other-kohdan lukuoikeutta
 
Pääsylistojen muuttamiseen käytetään <tt>setfacl</tt>-ohjelmaa. Pääsylistaa muutetaan komennon <tt>-m</tt>-optiolla. Esimerkki:
> setfacl -m u:lyyli:rw-,g:test:rw- juttu.txt
> getfacl juttu.txt
# file: juttu.txt
# owner: hemmo
# group: users
user::rw-
user:lyyli:rw-            #effective:r--
group::r--
group:devel:rw-            #effective:r--
group:test:rw-            #effective:r--
mask::r-x
other::r--
 
Uudet pääsylistan alkiot kerrotaan <tt>-m</tt> option perään pilkuilla erotettuina (ei välilyöntiä pilkun jälkeen). Esimerkissä myönnettiin käyttäjälle lyyli sekä ryhmälle test luku- ja kirjoitusoikeus tiedostoon. Koska mask on edelleen r-w, tosiasiassa heillä ei edelleenkään ole kirjoitusoikeutta tiedostoon. Tämä voidaan korjata <tt>chmod</tt>-komennolla:
> chmod g+w juttu.txt
> getfacl juttu.txt
# file: juttu.txt
# owner: hemmo
# group: users
user::rw-
user:lyyli:rw-
group::r--
group:devel:rw-
group:test:rw-
mask::rwx
other::r--
 
Pääsylistan alkioita voi poistaa <tt>setfacl</tt>-ohjelman <tt>-x</tt>-optiolla, pääsylistan voi korvata kokonaan toisella <tt>--set</tt> -optiolla, ja poistaa kokonaan <tt>-b</tt>-optiolla. Tiedoston pääsylistan voi kopioida tiedostosta toiseen näin:
getfacl tiedosto1 | setfacl --set-file=- tiedosto2
 
Lisätietoja <tt>getfacl</tt>- ja <tt>setfacl</tt>-komentojen man-sivuilla.


==Ongelmia==
==Ongelmia==
92

muokkausta

Navigointivalikko