Zoznámte sa s príkazom Linux Command setfacl

Setfacl pomôcky Nastavenie zoznamov prístupu (ACL) súborov a adresárov. Na príkazovom riadku nasleduje po sekvencii príkazov postupnosť súborov (ktoré následne môžu nasledovať ďalší postup príkazov, ...).

Možnosti -m a -x očakávajú ACL na príkazovom riadku. Viaceré záznamy ACL sú oddelené znakmi čiarok (`, '). Možnosti -M a -X čítajú ACL zo súboru alebo zo štandardného vstupu. Formát zápisu ACL je popísaný v časti ACL ENTRIES.

Možnosti --set a -set -set nastavujú ACL súboru alebo adresára. Predchádzajúci ACL sa nahradí. Položky ACL pre túto operáciu musia obsahovať povolenia.

Možnosti -m (- modifikovať) a -M (- modifikovať) upravujú ACL súboru alebo adresára. Položky ACL pre túto operáciu musia obsahovať povolenia.

Možnosti -x (--remove) a -X (--remove-file) odstránia položky ACL. Do parametrov, ak nie je definované POSIXLY_CORRECT, sú akceptované iba položky ACL bez poľa Perms.

Pri čítaní zo súborov pomocou volieb -M a -X , setfacl akceptuje výstup getfacl produkuje. Na jeden riadok je najviac jedna položka ACL. Po znaku libry (`# ') sa všetko do konca riadku považuje za komentár.

Ak sa setfacl používa na súborovom systéme, ktorý nepodporuje ACL, setfacl pracuje na bitoch povolenia režimu súboru. Ak sa ACL úplne nezmestí do bariet povolenia, setfacl modifikuje bity povolenia režimu súboru tak, aby odrážali ACL čo najbližšie, zapíše chybovú správu na štandardnú chybu a vráti sa s stavom výstupu väčším ako 0.

SYNOPSA

setfacl [-bkndRLPvh] [{-m | -x} acl_spec] [{-M | -X} acl_file] súbor ...

setfacl --restore = súbor

oprávnenie

Vlastník súboru a procesy, ktoré sú schopné CAP_FOWNER, majú právo na zmenu ACL súboru. Toto je analogické s povoleniami potrebnými na prístup do režimu súborov. (V súčasných systémoch Linux je root jediným používateľom s kapacitou CAP_FOWNER.)

MOŽNOSTI

-b, --remove-všetko

Odstrániť všetky rozšírené položky ACL. Základné položky ACL majiteľa, skupiny a ďalších sa zachovajú.

-k, --remove-default

Odstráňte predvolenú hodnotu ACL. Ak neexistuje predvolená ACL, nevydávajú sa žiadne upozornenia.

-n, --no-mask

Nenapočítajte účinnú masku s právami. Predvolené správanie súboru setfacl je prepočítať záznam masky ACL, pokiaľ nie je explicitne zadaná položka masky. Položka masky je nastavená na zväzok všetkých oprávnení vlastnej skupiny a všetkých menovaných položiek používateľov a skupín. (Toto sú presne položky, ktoré sú ovplyvnené položkou masky).

--mask

Prepočítajte efektívnu masku práv, aj keď bola výslovne uvedená položka masky ACL. (Pozrite si možnosť -n .)

-d, --definitne

Všetky operácie sa vzťahujú na predvolenú hodnotu ACL. Pravidelné položky ACL vo vstupnej súprave sú povýšené na predvolené položky ACL. Predvolené položky ACL vo vstupnej množine sú vyradené. (Ak sa tak stane, vydá sa upozornenie).

--restore = file

Obnovte povolenie záloh vytvorené `getfacl -R 'alebo podobným. Všetky povolenia úplného adresára sú obnovené pomocou tohto mechanizmu. Ak vstup obsahuje komentáre majiteľa alebo komentáre k skupine a setfacl je spustený rootom, obnoví sa aj vlastník a vlastná skupina všetkých súborov. Túto voľbu nemožno zmiešať s inými možnosťami okrem "--test".

--test

Testovací mód. Namiesto zmien ACL ľubovoľných súborov sú zobrazené výsledné ACL.

-R, --recursive

Aplikujte operácie na všetky súbory a adresáre rekurzívne. Táto možnosť sa nemôže miešať s `--restore '.

-L, --logické

Logická prechádzka, sledujte symbolické odkazy. Predvolené správanie je nasledovať argumenty symbolických odkazov a preskočiť symbolické odkazy, ktoré sa vyskytujú v podadresároch. Táto možnosť sa nemôže miešať s `--restore '.

-P, - fyziky

Fyzická chôdza, preskočte všetky symbolické odkazy. Toto tiež preskočí argumenty symbolických odkazov. Táto možnosť sa nemôže miešať s `--restore '.

--version

Vytlačte verziu nastavenia a výstupu.

--Pomoc

Pomocník pri tlači vysvetľuje možnosti príkazového riadku.

Koniec možností príkazového riadku. Všetky zostávajúce parametre sa interpretujú ako názvy súborov, aj keď začínajú pomlčkou.

Ak je parameter názvu súboru jediným pomlčkou, setfacl číta zoznam súborov zo štandardného vstupu.

ACL ENTRIES

Nástroj setfacl rozpoznáva nasledujúce formáty vstupov ACL (prázdne slová sú vložené z dôvodu prehľadnosti):

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

Povolenia menovaného používateľa. Povolenia vlastníka súboru, ak je uid prázdny.

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

Povolenia menovanej skupiny. Povolenia vlastnej skupiny, ak je gid prázdny.

[d [efault]:] m [spýtajte sa] [:] [: perms ]

Efektívna maska ​​práv

[d [efault]:] o [rr] [:] [: perms ]

Povolenia ostatných.

Biele znaky medzi oddeľovacími znakmi a znakmi bez oddeľovača sa ignorujú.

Správne položky ACL vrátane oprávnení sa používajú pri úprave a nastavovaní operácií. (možnosti -m , -M , -set a -set-súbor ). Položky bez poľa Perms sa používajú na vymazanie záznamov (voľby -x a -X ).

Pre uid a gid môžete určiť buď meno, alebo číslo.

Pole Perms je kombinácia znakov, ktoré označujú oprávnenia: čítať (r) , písať (w) , vykonávať (x) , spúšťať iba vtedy, ak je súbor adresár alebo už má povolenie pre niektorého používateľa (X) . Alternatívne môže byť permsové pole osemčlenná číslica (0-7).

AUTOMATICKY VYTVORENÉ VSTUPY

Súbory a adresáre pôvodne obsahujú iba tri základné záznamy ACL pre vlastníka, skupinu a ďalšie. Existujú určité pravidlá, ktoré musia byť splnené, aby bola ACL platná:

*

Tri základné položky nemožno odstrániť. Musí existovať presne jeden záznam každého z týchto typov základných vstupov.

*

Kedykoľvek ACL obsahuje menované používateľské položky alebo menované skupiny objektov, musí obsahovať aj efektívnu masku práv.

*

Vždy, keď ACL obsahuje akékoľvek predvolené položky ACL, musia existovať aj tri predvolené položky databázy ACL (predvolený vlastník, predvolená skupina a iné predvolené).

*

Kedykoľvek predvolená ACL obsahuje menované používateľské položky alebo menované skupinové objekty, musí obsahovať aj predvolenú efektívnu masku práv.

Aby užívateľ mohol zabezpečiť tieto pravidlá, setfacl vytvára záznamy z existujúcich záznamov za nasledujúcich podmienok:

*

Ak ACL obsahuje pomenované používateľské alebo pomenované položky skupiny a žiadna položka masky neexistuje, vytvorí sa položka masky obsahujúca rovnaké oprávnenia ako položka skupiny. Ak nie je zadaná voľba -n , povolenia položky masky sa ďalej upravia tak, aby zahŕňali spojenie všetkých oprávnení, ktoré sú ovplyvnené položkou masky. (Pozri popis možností -n ).

*

Ak je vytvorená predvolená položka ACL a predvolená ACL neobsahuje žiadny vlastník, vlastnú skupinu alebo inú položku, kópia vlastníka ACL, vlastnej skupiny alebo inej položky sa pridá do predvoleného zoznamu ACL.

*

Ak predvolený zoznam ACL obsahuje mená používateľských položiek alebo pomenovaných položiek skupiny a žiadna položka masky neexistuje, pridá sa položka masky obsahujúca rovnaké oprávnenia ako predvolená predvolená položka skupiny ACL. Pokiaľ nie je zadaná voľba -n , povolenia položky masky sa ďalej upravia tak, aby zahŕňala spojenie všetkých oprávnení ovplyvnených položkou masky. (Pozri popis možností -n ).

PRÍKLADY

Poskytnutie ďalšieho prístupu na čítanie používateľom

setfacl -mu: lisa: r súbor

Zrušenie prístupu na zápis zo všetkých skupín a všetkých menovaných používateľov (s použitím efektívnej masky práv)

súbor setfacl -mm :: rx

Odstránenie položky pomenovanej skupiny z ACL súboru

setfacl -xg: súbor zamestnancov

Kopírovanie ACL jedného súboru do druhého

getfacl file1 | setfacl --set-súbor = - súbor2

Kopírovanie prístupovej ACL do predvolenej ACL

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

SPLNENIE S POSIXOM 1003.1e NÁVRH ŠTANDARDU 17

Ak je definovaná premenná prostredia POSIXLY_CORRECT, predvolené správanie nastavenia setfacl sa mení nasledovne: Všetky neštandardné možnosti sú vypnuté. Predvoľba `` default: '' je vypnutá. Voľby -x a -X tiež prijímajú povolené polia (a ignorujú ich).

POZRI TIEŽ

umask (1),