Preberite uvod Linux setfacl

Setfacl utility nastavi seznami za nadzor dostopa (ACL) datotek in imenikov. Na ukazni vrstici zaporedju ukazov sledi zaporedje datotek (ki lahko nato sledi še eno zaporedje ukazov ...).

Možnosti -m in -x v ukazni vrstici pričakujejo ACL. Več vnosov ACL je ločenih z vejico (","). Možnosti -M in -X preberete ACL iz datoteke ali iz standardnega vhoda. Format vnosa ACL je opisan v oddelku ACL ENTRIES.

Možnosti --set in -set-file določata ACL datoteke ali imenika. Prejšnji ACL se nadomesti. Vpisi ACL za to operacijo morajo vsebovati dovoljenja.

Možnosti -m (- modify) in -M (- modify-file) spremenijo ACL datoteke ali imenika. Vpisi ACL za to operacijo morajo vsebovati dovoljenja.

Možnosti -x (--remove) in -X (--remove-file) odstranijo enote ACL. Kot parametri so sprejeti samo vnosi ACL brez polja perms , razen če je definiran POSIXLY_CORRECT .

Ko berete iz datotek s pomočjo -M in -X možnosti, setfacl sprejema izhod getfacl. Na vrstico je največ en vnos ACL. Po oznaki Pound (`# ') se vse do konca vrstice obravnava kot komentar.

Če je setfacl uporabljen v datotečnem sistemu, ki ne podpira ACL-jev, se nastavi na datotečne načine datoteke. Če ACL ne ustreza popolnoma v dovoljenih bitih, setfacl spreminja dovoljene bitove za način datoteke, da čim bolj odraža ACL, napiše sporočilo o napaki standardni napaki in se vrne z izhodnim statusom, večjim od 0.

POVZETEK

setfacl [-bkndRLPvh] [{-m | -x} acl_spec] [{-M | -X} acl_file] datoteka ...

setfacl --restore = datoteka

DOVOLJENJA

Lastniku datoteke in procesom, ki so sposobni CAP_FOWNER, dobijo pravico do spremembe ACL-jev datoteke. To je analogno dovoljenjem, potrebnim za dostop do datotečnega načina. (V trenutnih Linux sistemih je root edini uporabnik s sposobnostjo CAP_FOWNER.)

OPCIJE

-b, -remove-vse

Odstranite vse razširjene vnose ACL. Ohranjeni so osnovni vnosi ACL lastnika, skupine in drugih.

-k, -remove-privzeto

Odstranite Privzeti ACL. Če Default ACL ne obstaja, se ne izdajajo nobena opozorila.

-n, -na-maska

Ne recalculate masko učinkovite pravice. Privzeto vedenje setfacl je preračunavanje vnosa maske ACL, razen če je bila izrecna navedba vnosa maske. Vnos maske je nastavljen na združitev vseh dovoljenj skupine, ki ima v lasti, in vseh imenovanih vnosov uporabnikov in skupin. (To so ravno vnose, na katere vpliva vpis maske).

- maska

Ali ponovno izračunajte masko za učinkovite pravice, tudi če je bila izrecna navedba vnosa maske ACL. (Oglejte si možnost -n .)

-d, -default

Vse operacije veljajo za Privzeti ACL. Redni vnosi ACL v vhodnem nizu se promovirajo v privzete vnose ACL. Privzeti vpisi ACL v vhodnem nizu se zavržejo. (Če se to zgodi, se izda opozorilo).

--restore = datoteka

Obnovite varnostno kopijo, ki jo ustvari »getfacl -R« ali podobno. S tem mehanizmom so obnovljena vsa dovoljenja za celoten podtrek imenikov. Če vhod vsebuje komentarje lastnikov ali komentarje skupin in nastavi setfacl root, se obnovijo tudi lastnik in skupina lastnikov vseh datotek. To možnost ne moremo mešati z drugimi možnostmi, razen s `--test '.

- test

Testni način. Namesto da bi spremenili ACL-je vseh datotek, so navedeni ACL-ji navedeni.

-R, - rekurzivno

Postopoma uporabite vse datoteke in imenike. To možnost ne moremo mešati z »--restore«.

-L, - logično

Logični sprehod, sledite simboličnim povezavam. Privzeto vedenje je slediti argumentom simbolične povezave in preskočiti simbolične povezave, ki se pojavijo v podimeniki. To možnost ne moremo mešati z »--restore«.

-P, --fizična

Fizično sprehod, preskočite vse simbolične povezave. To prav tako preskoči argumente simbolne povezave. To možnost ne moremo mešati z »--restore«.

- različica

Natisnite različico setfacl in izstopa.

- pomoč

Natisnite pomoč, ki pojasnjuje možnosti ukazne vrstice.

Konec možnosti ukazne vrstice. Vsi ostali parametri se razlagajo kot imena datotek, tudi če se začnejo s pomišljajem.

Če je parameter imena datoteke en sam pomišljaj, setfacl bere seznam datotek iz standardnega vhoda.

ACL VSTOPI

Pripomoček setfacl prepozna naslednje formate vnosa ACL (prazne vstavke za jasnost):

[d [efault]:] [u [ser]:] uid [: perms ]

Dovoljenja imenovanega uporabnika. Dovoljenja lastnika datoteke, če je uid prazen.

[d [efault]:] g [ roup ]: gid [: perms ]

Dovoljenja imenovane skupine. Dovoljenja skupine, ki ima v lasti, če je prazen prazen.

[d [efault]:] m [vprašaj] [:] [: perms ]

Učinkovita maska ​​za pravice

[d [efault]:] o [ther] [:] [: perms ]

Dovoljenja drugih.

Premikajo se presledki med ločilnimi znaki in znaki brez ločnice.

Pri spreminjanju in nastavljanju operacij se uporabljajo ustrezni vpisi ACL, vključno z dovoljenji. (možnosti -m , -M , -set in -set-file ). Za izbris vnosov (opcije -x in -X ) se uporabljajo vnosi brez polja perms .

Za uid in gid lahko navedete ime ali številko.

Polje permov je kombinacija znakov, ki označujejo dovoljenja: read (r) , write (w) , execute (x) , izvrši samo, če je datoteka mapa ali že ima dovoljenje za uporabo za določenega uporabnika (X) . Druga možnost je, da je polje perms lahko osmiška številka (0-7).

AVTOMATIČNO USTVARJENE VSTOPI

Datoteke in imeniki na začetku vsebujejo le tri osnovne vnose ACL za lastnika, skupino in druge. Obstaja nekaj pravil, ki jih je treba izpolniti za veljavnost ACL:

*

Trije osnovni vnosi ni mogoče odstraniti. Natanćno mora biti natanko en vpis vseh tipov osnovnih vstopov.

*

Kadarkoli ACL vsebuje imenovan uporabniški vpis ali imenovanih predmetov skupine, mora vsebovati tudi masko za učinkovite pravice.

*

Kadarkoli ACL vsebuje privzete vnose ACL, morajo obstajati tudi trije osnovni vnosi privzete ACL (privzeti lastnik, privzeta skupina in privzeti drugi).

*

Kadar privzeti ACL vsebuje imenske uporabniške vnose ali imenovane predmete skupine, mora vsebovati tudi privzeto masko za učinkovite pravice.

Da bi uporabniku pomagali zagotoviti ta pravila, setfacl ustvari vnose iz obstoječih vnosov pod naslednjimi pogoji:

*

Če ACL vsebuje imenovane uporabniške ali imenske vnose v skupino in noben vnos mask ne obstaja, se ustvari maska, ki vsebuje ista dovoljenja, kot je skupinski vnos. Razen če ni podana možnost -n , so dovoljenja za vnos maske nadalje prilagojena tako, da vključujejo združitev vseh dovoljenj, na katera vpliva vnos maske. (Glejte opis opcij -n ).

*

Če je privzeti vnos ACL ustvarjen in Privzeti ACL ne vsebuje nobenega lastnika, lastne skupine ali drugega vpisa, se privzeti ACL doda kopija lastnika ACL, lastne skupine ali drugega vpisa.

*

Če privzeti ACL vsebuje imenske uporabniške vnose ali imenovane vnose v skupino in noben vpis v masko ne obstaja, se doda maskirna datoteka, ki vsebuje ista dovoljenja, kot je privzeti skupinski vnos Privzete ACL. Razen če ni podana možnost -n , so dovoljenja za vnos maske nadalje prilagojena tako, da vključujejo združevanje vseh dovoljenj, na katera vpliva vnos maske. (Glejte opis opcij -n ).

PRIMERI

Dodeljevanje dodatnega bralnega dostopa do uporabnika

setfacl -mu: lisa: r datoteka

Preklicati dostop za pisanje iz vseh skupin in vseh imenovanih uporabnikov (z uporabo maske za učinkovite pravice)

setfacl -mm :: rx datoteka

Odstranjevanje vnosa poimenovane skupine iz ACL datoteke

setfacl -xg: datoteka osebja

Kopiranje ACL ene datoteke v drugo

getfacl file1 | setfacl --set-file = - file2

Kopiranje ACL dostopa v privzeti ACL

getfacl -a dir | setfacl -d -M-dir

KONFERENCA ZA POSIX 1003.1e OSNUTEK STANDARDA 17

Če je definirana okoljska spremenljivka POSIXLY_CORRECT, se privzeto vedenje setfacl spremeni, kot sledi: Vse nestandardne možnosti so onemogočene. Predpona `` default: '' je onemogočena. Možnosti -x in -X sprejemajo tudi polja za dovoljenja (in jih ignorirajo).

POGLEJ TUDI

umask (1),