Ero sivun ”Tiedostojärjestelmän pääsylistat (ACL)” versioiden välillä
Siirry navigaatioon
Siirry hakuun
Tiedostojärjestelmän pääsylistat (ACL) (muokkaa)
Versio 16. syyskuuta 2011 kello 11.38
, 16. syyskuuta 2011Juttua getfacl- ja setfacl-komennoista.
Jem (keskustelu | muokkaukset) p (→Ongelmia) |
Jem (keskustelu | muokkaukset) (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 | 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. | ||
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== |