Mësoni Linux Command setfacl

Setfacl utility përcakton Lista e Kontrollit të Qasjes (ACL) të skedarëve dhe direktorive. Në rreshtin e komandës , një sekuencë e komandave ndiqet nga një sekuencë e skedarëve (e cila pastaj mund të ndiqet nga një sekuencë e komandave, ...).

Opsionet -m, dhe -x presin një ACL në rreshtin e komandave. Regjistrimet ACL të shumëfishta ndahen me shkronja me vizë (`, '). Opsionet -M dhe -X lexojnë një ACL nga një skedar ose nga hyrja standarde. Formati i hyrjes ACL përshkruhet në Pjesën ACL ENTRIES.

Opsionet e -set dhe -set-file përcaktojnë ACL-në e një skedari ose një direktorie. ACL e mëparshme zëvendësohet. Hyrjet ACL për këtë veprim duhet të përfshijnë lejet.

Modifikimet -m (- modifikoj) dhe -M (- modifikoj-skedar) modifikojnë ACL-në e një skedari ose direktoriumi. Hyrjet ACL për këtë veprim duhet të përfshijnë lejet.

Opsione -x (--remove) dhe -X (--remove-file) heqin ACL enries. Vetëm shënimet ACL pa fushën perms pranohen si parametra, përveç nëse përcaktohet POSIXLY_CORRECT.

Kur lexoni nga skedarët duke përdorur opsionet -M dhe -X , setfacl pranon outputin getfacl që prodhon. Ka më së shumti një hyrje ACL për rresht. Pas një shenje Pound (`# '), çdo gjë deri në fund të linjës trajtohet si një koment.

Nëse setfacl përdoret në një sistem skedari i cili nuk mbështet ACL-të, setfacl vepron në bits leje mode file. Nëse ACL nuk përshtatet tërësisht në copat e lejes, setfacl modifikon bits lejimin e mënyrës së skedarit për të reflektuar ACL sa më afër të jetë e mundur, shkruan një mesazh gabimi për gabimin standard dhe kthehet me një status dalje më të madh se 0.

PËRMBLEDHJE

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

setfacl --restore = skedar

LEJET

Pronari i skedarit dhe proceset e aftë për CAP_FOWNER u jepet e drejta për të modifikuar ACL-të e një skedari. Kjo është analoge me lejet e kërkuara për qasjen në regjimin e skedarit. (Në sistemet e tanishme Linux, rrjeti është i vetmi përdorues me aftësi CAP_FOWNER.)

OPSIONE

-b, - fshih të gjitha

Hiq të gjitha shënimet e zgjeruara ACL. Pozitat bazë ACL të pronarit, grupit dhe të tjerëve mbahen.

-k, --mir-default

Hiqeni ACL-in e parazgjedhur. Nëse nuk ekziston ACL Default, nuk lëshohen paralajmërime.

-n, - jo-maskë

Mos e rillogarisni maskën efektive të të drejtave. Sjellja e paracaktuar e setfacl është që të rillogaritet hyrja e maskës ACL, përveç nëse një hyrje maskash është dhënë në mënyrë eksplicite. Hyrja e maskës është vendosur në bashkimin e të gjitha lejeve të grupit që zotëron, dhe të gjitha emrat e emrave dhe grupeve. (Këto janë pikërisht shënimet e prekura nga hyrja e maskës).

--mask

A rillogarisni maskën efektive të të drejtave, edhe nëse një hyrje maskash ACL është dhënë në mënyrë eksplicite. (Shih opsionin -n ).

-d, --default

Të gjitha operacionet zbatohen në ACL Default. Hyrjet e rregullta ACL në setin e hyrjes promovohen në hyrjet e ACL Default. Menyja e parazgjedhur e ACL-së në grupin e hyrjes fshihet. (Një paralajmërim lëshohet nëse kjo ndodh).

--restore = Skedari

Rivendosni një kopje të lejes së krijuar nga `getfacl -R 'ose të ngjashme. Të gjitha lejet e një subtree plotë directory janë restauruar duke përdorur këtë mekanizëm. Nëse hyrja përmban komentet e pronarit ose komentet e grupit, dhe setfacl drejtohet nga rrënja, atëherë restaurohen edhe pronari dhe grupi i të gjithë skedarëve. Ky opsion nuk mund të përzihet me opsione të tjera përveç "testit".

--test

Modaliteti i testimit. Në vend që të ndryshojnë ACL-të e ndonjë skedari, ACL-et që rezultojnë janë të listuara.

-R, - recursive

Aplikoni operacionet në të gjitha dosjet dhe direktoritë në mënyrë rekursive. Ky opsion nuk mund të përzihet me `--restore '.

-L, - logjike

Shëtitje logjike, ndiqni lidhjet simbolike. Sjellja e paracaktuar është të ndiqni argumentet e lidhjes simbolike, dhe të kaloni lidhjet simbolike që hasen në nën-drejtoritë. Ky opsion nuk mund të përzihet me `--restore '.

-P, - fizike

Ecni fizikisht, kaloni të gjitha lidhjet simbolike. Kjo gjithashtu anashkalon argumentet e lidhjes simbolike. Ky opsion nuk mund të përzihet me `--restore '.

--version

Printoni versionin e setfacl dhe exit.

--ndihmë

Ndihma për printim duke shpjeguar opsionet e linjës së komandës.

Fundi i opsioneve të linjës së komandës. Të gjithë parametrat e mbetur interpretohen si emra të skedarëve, edhe nëse ato fillojnë me një dash.

Nëse parametri i emrit të skedarit është një dash i vetëm, setfacl lexon një listë të skedarëve nga hyrja standarde.

Hyrje në ACL

Shërbimi setfacl njeh formularët e mëposhtëm të hyrjes ACL (boshllëqet e vendosura për qartësi):

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

Lejet e një përdoruesi të emëruar. Lejet e zotëruesit të skedarit nëse uid është bosh.

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

Lejet e një grupi të emëruar. Lejet e grupit në pronësi nëse GID është bosh.

[d [efault]:] m [pyes] [:] [: perms ]

Mashtrim efektiv i të drejtave

[d [efault]:] o [ka] [:] [: perms ]

Lejet e të tjerëve.

Hapësira e bardhë ndërmjet karaktereve delimituese dhe karaktereve jo-delimituese injorohet.

Hyrjet e duhura ACL duke përfshirë lejet janë përdorur për të modifikuar dhe vendosur operacionet. (opsionet -m , -M , - set dhe - set-file ). Regjistrimet pa fushën perms përdoren për fshirjen e shënimeve (opsionet -x dhe -X ).

Për uid dhe gid ju mund të specifikoni ose një emër ose një numër.

Fusha perms është një kombinim i karaktereve që tregojnë lejet: lexoni (r) , shkruani (w) , ekzekutoni (x) , ekzekutoni vetëm nëse skedari është një directory ose tashmë ka ekzekutuar lejen për disa përdorues (X) . Përndryshe, fusha perms mund të jetë një shifër oktalet (0-7).

HYRJE AUTOMATIKE TË KRIJUARA

Fillimisht, skedarët dhe drejtoritë përmbajnë vetëm tre shënimet bazë ACL për pronarin, grupin dhe të tjerët. Ka disa rregulla që duhet të plotësohen në mënyrë që një ACL të jetë i vlefshëm:

*

Tre shënimet bazë nuk mund të hiqen. Duhet të ketë saktësisht një hyrje të secilës prej këtyre llojeve të hyrjes bazë.

*

Sa herë që një ACL përmban shënime të emrave të përdoruesit ose objekteve të grupit të emëruar, ai duhet gjithashtu të përmbajë një maskë efektive të të drejtave.

*

Kurdoherë që një ACL përmban ndonjë hyrje ACL të paracaktuar, duhet të ekzistojnë edhe tre elementët bazë të ACL (pronari i parazgjedhur, grupi i parazgjedhur dhe të parat të tjera).

*

Kurdo që ACL-ja e parazgjedhur përmban shënime të emrave të përdoruesit ose objekteve të grupit të emëruar, ai gjithashtu duhet të përmbajë një maskë të të drejtave efektive të parazgjedhur.

Për të ndihmuar përdoruesin të sigurojë këto rregulla, setfacl krijon shënime nga hyrjet ekzistuese nën kushtet e mëposhtme:

*

Nëse një ACL përmban emra të emëruar ose të grupit të emëruar, dhe nuk ekziston një maskë hyrëse, krijohet një maskë që përmban të njëjtat leje si hyrja e grupit. Nëse nuk jepet opcioni -n , lejet e hyrjes së maskës rregullohen më tej për të përfshirë bashkimin e të gjitha lejeve të prekura nga hyrja e maskës. (Shihni përshkrimin e opsionit -n ).

*

Nëse krijohet një hyrje ACL e paracaktuar dhe ACL-ja e parazgjedhur nuk përmban asnjë titull pronarësh, bartësish të grupit ose të tjerëve, një kopje e pronarit të ACL-së, grupit të pronarëve të grupit ose të të tjerëve shtohet në ACL-në e paracaktuar.

*

Nëse një ACL i parazgjedhur përmban shënime të emrave të përdoruesit ose emrat e grupit të emërtuar dhe nuk ekziston ndonjë maskë, shtohet një maskë që përmban të njëjtat leje si hyrja e parazgjedhur e grupit të parazgjedhur ACL. Përveç nëse opsioni -n është dhënë, lejet e hyrjes së maskës përshtaten më tej me përfshirjen e bashkimit të të gjitha lejeve të prekura nga hyrja e maskës. (Shihni përshkrimin e opsionit -n ).

SHEMBUJ

Marrja e një aksesi shtesë për leximin e përdoruesit

setfacl -mu: lisa: r file

Revokimi i qasjes së shkrimit nga të gjitha grupet dhe të gjithë përdoruesit e emëruar (duke përdorur maskën efektive të të drejtave)

file setfacl-mm :: rx

Heqja e një hyrje të grupit me emrin nga ACL e një skedari

setfacl -xg: skedari i personelit

Kopjimi i ACL të një skedari në një tjetër

getfacl file1 | setfacl - set-file = - skedar2

Kopjimi i qasjes ACL në ACL Default

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

PËRFUNDUESHMËRIA E POSIX 1003.1e DRAFT STANDARDI 17

Nëse variablit mjedisor POSIXLY_CORRECT është përcaktuar, sjellja e parazgjedhur e setfacl ndryshon si më poshtë: Të gjitha opsionet jo standarde janë me aftësi të kufizuara. Prefiksi `` default: '' është çaktivizuar. Opsione -x dhe -X gjithashtu pranojnë fusha leje (dhe injorojnë ato).

SHIKO GJITHASHTU

umask (1),