Linux આદેશ setfacl જાણો

Setfacl ઉપયોગિતા ફાઇલો અને ડિરેક્ટરીઓના એક્સેસ કન્ટ્રોલ લિસ્ટ (ACL) ને સુયોજિત કરે છે. આદેશ વાક્ય પર , આદેશોનો અનુક્રમ ફાઇલોની અનુક્રમે અનુસરવામાં આવે છે (જે પાછળથી કમાન્ડ્સના અન્ય ક્રમ દ્વારા અનુસરી શકાય છે ...).

વિકલ્પો- m, અને -x આદેશ વાક્ય પર એક ACL અપેક્ષા. મલ્ટીપલ એસીએલ એન્ટ્રી અલ્પવિરામ અક્ષરો (`, ') દ્વારા અલગ કરવામાં આવે છે. વિકલ્પો- M, અને -X ફાઇલમાંથી અથવા પ્રમાણભૂત ઇનપુટમાંથી ACL વાંચો. ACL પ્રવેશ ફોર્મેટ વિભાગ ACL ENTRIES માં વર્ણવેલ છે.

--set અને --set-file વિકલ્પો ફાઇલના ACL અથવા ડિરેક્ટરીને સુયોજિત કરે છે. પાછલા ACL ને બદલવામાં આવે છે. આ ઓપરેશન માટે ACL એન્ટ્રીઝમાં પરવાનગીઓ શામેલ હોવા આવશ્યક છે.

-m (--modify) અને -M (--modify-file) વિકલ્પો ફાઇલ અથવા ડિરેક્ટરીના ACL ને સંશોધિત કરે છે. આ ઓપરેશન માટે ACL એન્ટ્રીઝમાં પરવાનગીઓ શામેલ હોવા આવશ્યક છે.

ધ- X (--remove) અને -X (--remove-file) વિકલ્પો ACL એન્ક્રિપ્શનને દૂર કરે છે. પર્મ્સ ફિલ્ડ વગર ફક્ત ACL પ્રવેશો પરિમાણો તરીકે સ્વીકારવામાં આવે છે, જ્યાં સુધી POSIXLY_CORRECT વ્યાખ્યાયિત ન હોય.

જ્યારે -M, અને -X વિકલ્પોનો ઉપયોગ કરીને ફાઇલોમાંથી વાંચતી વખતે, setfacl આઉટપુટ getfacl નું ઉત્પાદન કરે છે. પ્રતિ લાઇનમાં મોટા ભાગની એક એસીએલ એન્ટ્રી છે પાઉન્ડ સાઇન (`# ') પછી, રેખાના અંત સુધી બધું એક ટિપ્પણી તરીકે ગણવામાં આવે છે.

જો setfacl ફાઇલ સિસ્ટમ પર વપરાય છે જે ACL ને સપોર્ટ કરતું નથી, તો setfacl ફાઇલ મોડ પરવાનગી બિટ્સ પર કાર્ય કરે છે. જો એસીએલ પરવાનગી બિટ્સમાં સંપૂર્ણપણે ફિટ થતી નથી, તો setfacl એસીએલને શક્ય તેટલી નજીકથી ACL પ્રતિબિંબિત કરવા માટે ફાઇલ મોડ પરવાનગી બિટ્સને સુધારે છે, એક ભૂલ સંદેશાને પ્રમાણભૂત ભૂલમાં લખે છે અને 0 કરતાં વધારે એક્ઝિટ સ્ટેટમેન્ટ સાથે આપે છે.

સમન્વય

setfacl [-bkndRLPvh] [{-m | -x} acl_spec] [{-M- -X} acl_file] ફાઇલ ...

setfacl --restore = ફાઇલ

PERMISSIONS

ફાઇલ માલિક અને CAP_FOWNER માટે સક્ષમ પ્રક્રિયાઓને ફાઇલના ACL ને બદલવાનો અધિકાર આપવામાં આવે છે. આ ફાઇલ મોડને ઍક્સેસ કરવા માટે આવશ્યક પરવાનગીઓ સમાન છે. (વર્તમાન Linux સિસ્ટમ્સ પર, રુટ CAP_FOWNER ક્ષમતા ધરાવતું એક માત્ર વપરાશકર્તા છે.)

વિકલ્પો

-બી, - દૂર-બધા

બધી વિસ્તૃત ACL એન્ટ્રીઓને દૂર કરો માલિક, જૂથ અને અન્યના એસીએલ એન્ટ્રીઓની જાળવણી કરવામાં આવે છે.

-ક, --remove-default

ડિફોલ્ટ ACL દૂર કરો જો કોઈ મૂળભૂત ACL અસ્તિત્વમાં નથી, તો કોઈ ચેતવણીઓ જારી નથી.

-n, - નો-માસ્ક

અસરકારક અધિકારોનો માસ્ક ફરીથી ગણતરી ન કરો. સેટફૅકલની મૂળભૂત વર્તણૂક એ ACL માસ્ક એન્ટ્રીને ફરી ગણતરી કરવી છે, જ્યાં સુધી કોઈ માસ્ક એન્ટ્રી સ્પષ્ટપણે આપવામાં ન આવે. માસ્ક એન્ટ્રીને માલિકી ધરાવતા જૂથની તમામ પરવાનગીઓના સંઘ પર સેટ કરવામાં આવે છે, અને તમામ નામવાળી વપરાશકર્તા અને જૂથ એન્ટ્રીઓ. (આ બરાબર માસ્ક એન્ટ્રી દ્વારા અસરગ્રસ્ત એન્ટ્રીઝ છે).

--મહોરું

અસરકારક રાઇટ્સ માસ્ક ફરીથી ગણતરી કરો, ભલે ACL માસ્ક એન્ટ્રી સ્પષ્ટ રીતે આપવામાં આવે. ( -n વિકલ્પ જુઓ.)

-d, --default

તમામ ઓપરેશન્સ ડિફોલ્ટ ACL પર લાગુ થાય છે. ઇનપુટ સેટમાં નિયમિત એસીએલ એન્ટ્રી ડિફોલ્ટ એસીએલ એન્ટ્રીઝમાં બઢતી આપવામાં આવે છે. ઇનપુટ સેટમાં ડિફૉલ્ટ એસીએલ એન્ટ્રી છોડવામાં આવે છે. (જો આવું થાય તો ચેતવણી આપવામાં આવે છે).

--restore = ફાઇલ

`Getfacl -R 'અથવા સમાન દ્વારા બનાવાયેલ પરવાનગી બેકઅપને પુનઃસ્થાપિત કરો. આ પદ્ધતિનો ઉપયોગ કરીને સંપૂર્ણ ડિરેક્ટરી ઉપટેરીની તમામ પરવાનગીઓ પુનઃસ્થાપિત કરવામાં આવે છે. ઇનપુટમાં માલિકની ટિપ્પણીઓ અથવા જૂથની ટિપ્પણીઓ શામેલ છે, અને setfacl રુટ દ્વારા ચલાવવામાં આવે છે, તો બધી ફાઇલોના માલિક અને માલિકી ધરાવતા જૂથને પુનઃસ્થાપિત કરવામાં આવે છે. આ વિકલ્પને `--test 'સિવાયના અન્ય વિકલ્પો સાથે મિશ્રિત કરી શકાતા નથી.

--test

પરીક્ષણ મોડ. કોઈપણ ફાઈલોની ACL બદલવાને બદલે, પરિણામી ACL સૂચિબદ્ધ છે.

-આર, - રિકવર્સિવ

બધી ફાઇલો અને ડિરેક્ટરીઓ પર આવર્તનો લાગુ કરો. આ વિકલ્પ '--restore' સાથે મિશ્રિત કરી શકાતો નથી.

-એલ, - લોજિકલ

તાર્કિક ચાલ, સિંબોલિક કડીઓ અનુસરો. ડિફોલ્ટ વર્તણૂક સાંકેતિક લિંક દલીલોનું પાલન કરવાનું છે, અને સબ-ડાયરેક્ટરીઝમાં મળેલા સાંકેતિક લિંક્સને છોડવા માટે છે. આ વિકલ્પ '--restore' સાથે મિશ્રિત કરી શકાતો નથી.

-પી, - ફીઝીકલ

શારીરિક ચાલ, બધા સાંકેતિક લિંક્સ અવગણો. આ સાંકેતિક લિંક દલીલો પણ છોડી દે છે. આ વિકલ્પ '--restore' સાથે મિશ્રિત કરી શકાતો નથી.

- વિવર

Setfacl નું વર્ઝન છાપો અને બહાર નીકળો.

--help

આદેશ વાક્ય વિકલ્પો સમજાવીને મદદ છાપો.

આદેશ વાક્ય વિકલ્પોનો અંત. બાકીના તમામ પરિમાણોને ફાઇલ નામો તરીકે અર્થઘટન કરવામાં આવે છે, જો તેઓ ડૅશથી શરૂ થાય.

જો ફાઇલ નામ પરિમાણ એક ડેશ છે, તો setfacl પ્રમાણભૂત ઇનપુટમાંથી ફાઇલોની સૂચિ વાંચે છે.

ACL એંટ્રીઝ

Setfacl ઉપયોગિતા નીચેની ACL એન્ટ્રી બંધારણોને ઓળખે છે (સ્પષ્ટતા માટે શામેલ છે):

[ડી [ઇફ્યુએચ]:] [યુ [સેર]:] યુઇડ [: પર્મ્સ ]

નામવાળી વપરાશકર્તાની પરવાનગીઓ. ફાઇલ માલિકની પરવાનગીઓ જો uid ખાલી હોય તો.

[ડી [ઇફ્યુએચ]:] જી [રુપ]: જીડ [: પર્મ્સ]

નામના જૂથની પરવાનગીઓ જો ગિડ ખાલી હોય તો માલિકી ધરાવતા ગ્રૂપની પરવાનગીઓ.

[ડી [ઇફૉલ્ટ]:] મીટર [પૂછો] [:] [: પર્મ્સ ]

અસરકારક અધિકાર માસ્ક

[ડી [ઇફ્યુએચ]:] ઓ [થ્રે] [:] [: પીએમએસ ]

અન્યની પરવાનગીઓ

ડેરિમિટર અક્ષરો અને બિન-સીમાચિહ્ન અક્ષરો વચ્ચે વ્હાઇટસ્પેસ અવગણવામાં આવે છે.

પરવાનગીઓ સહિત યોગ્ય ACL પ્રવેશોનો ઉપયોગ સંશોધિત અને સેટ ઓપરેશનમાં થાય છે. (વિકલ્પો- m , -m , --set અને --set-file ). પ્રવેશ ક્ષેત્ર કાઢી નાખવા માટે perms ફિલ્ડ વગરના એન્ટ્રીઝનો ઉપયોગ કરવામાં આવે છે (વિકલ્પો -x અને -X ).

Uid અને gid માટે તમે કોઈ નામ અથવા નંબર સ્પષ્ટ કરી શકો છો.

Perms ફીલ્ડ અક્ષરોની સંયોજન છે જે પરવાનગીઓ સૂચવે છે: વાંચવા (આર) , લખો (ડબલ્યુ) , એક્ઝેક્યુટ (x) , જો ફાઇલ ડિરેક્ટરી હોય અથવા તો કેટલાક વપરાશકર્તા (એક્સ) માટે એક્ઝિક્યુટ પરવાનગી હોય તો જ એક્ઝિક્યુટ કરો. વૈકલ્પિક રીતે, perms ફીલ્ડ એક ઓક્ટલ ડિજીટ (0-7) હોઈ શકે છે.

સ્વયંચાલિત સ્વરૂપો બનાવે છે

પ્રારંભમાં, ફાઇલો અને ડિરેક્ટરીઓ માલિક, જૂથ અને અન્ય લોકો માટે માત્ર ત્રણ આધાર એસીએલ એન્ટ્રીઝ ધરાવે છે. એવા કેટલાક નિયમો છે કે જે યોગ્ય થવા માટે એસીએલ માટે સંતુષ્ટ થવાની જરૂર છે:

*

ત્રણ આધાર એન્ટ્રીઓ દૂર કરી શકાતા નથી. આમાંના પ્રત્યેક મૂળ પ્રવેશ પ્રકારોનો એક જ પ્રવેશ હોવો જોઈએ.

*

જ્યારે ACL માં નામવાળી વપરાશકર્તા એન્ટ્રીઓ અથવા નામવાળી ગ્રુપ ઑબ્જેક્ટ્સ હોય ત્યારે, તેમાં અસરકારક રાઇટ્સ માસ્ક પણ હોવો જોઈએ.

*

જ્યારે ACL માં કોઈપણ મૂળભૂત એસીએલ એન્ટ્રીઝ હોય, ત્યારે ત્રણ ડિફોલ્ટ ACL આધાર એન્ટ્રીઓ (ડિફૉલ્ટ માલિક, ડિફૉલ્ટ જૂથ અને ડિફૉલ્ટ અન્ય) પણ અસ્તિત્વમાં હોવા જોઈએ.

*

ડિફોલ્ટ ACL માં નામવાળી વપરાશકર્તા એન્ટ્રીઓ અથવા નામવાળી ગ્રુપ ઓબ્જેક્ટ્સ હોય ત્યારે, તેમાં ડિફોલ્ટ અસરકારક અધિકારોનો માસ્ક પણ હોવો જોઈએ.

વપરાશકર્તાને આ નિયમોની ખાતરી કરવા માટે, setfacl નીચેની શરતો હેઠળ હાલની એન્ટ્રીઝમાંથી પ્રવેશો બનાવે છે:

*

જો ACL નામવાળી વપરાશકર્તા અથવા નામવાળી ગ્રુપ એન્ટ્રીઓ ધરાવે છે, અને કોઈ માસ્ક એન્ટ્રી અસ્તિત્વમાં નથી, તો સમૂહ એન્ટ્રી બનાવવામાં આવે તે જ પરવાનગીઓ ધરાવતી એક માસ્ક એન્ટ્રી છે. જ્યાં સુધી -n વિકલ્પ આપવામાં ન આવે ત્યાં સુધી, માસ્ક એન્ટ્રીના પરવાનગીઓને માસ્ક એન્ટ્રી દ્વારા પ્રભાવિત તમામ પરવાનગીઓના સંઘને સમાવવા માટે વધુ એડજસ્ટ કરવામાં આવે છે. ( -n વિકલ્પ વર્ણન જુઓ).

*

જો ડિફોલ્ટ ACL એન્ટ્રી બને છે, અને ડિફોલ્ટ એસીએલમાં કોઈ માલિક, માલિકનું જૂથ અથવા અન્ય એન્ટ્રી નથી, ACL માલિકની એક નકલ, માલિકનું જૂથ અથવા અન્ય એન્ટ્રી એ ડિફોલ્ટ ACL માં ઉમેરવામાં આવે છે.

*

જો મૂળભૂત ACL માં નામવાળી વપરાશકર્તા એન્ટ્રીઓ અથવા નામવાળી ગ્રુપ એન્ટ્રીઓ હોય છે, અને કોઈ માસ્ક એન્ટ્રી અસ્તિત્વમાં નથી, તો મૂળભૂત એસીએલના ગ્રુપ એન્ટ્રીમાં સમાન પરવાનગીઓ ધરાવતી એક માસ્ક એન્ટ્રી ઉમેરવામાં આવે છે. જ્યાં સુધી -n વિકલ્પ આપવામાં ન આવે ત્યાં સુધી, માસ્ક એન્ટ્રીના પરવાનગીઓને માસ્ક એન્ટ્રી દ્વારા અસરગ્રસ્ત બધી પરવાનગીઓનાં યુનિયનની અંદર ગોઠવવામાં આવે છે. ( -n વિકલ્પ વર્ણન જુઓ).

ઉદાહરણો

વધારાના વપરાશકર્તા વાંચવાની ઍક્સેસ આપો

setfacl -mu: લિસા: આર ફાઇલ

બધા જૂથો અને બધા નામવાળી વપરાશકર્તાઓ (અસરકારક અધિકારો માસ્કનો ઉપયોગ કરીને) થી ઍક્સેસને રદ કરી રહ્યાં છે

setfacl-mm :: rx ફાઇલ

ફાઇલના એસીએલ (ACL) માંથી કોઈ નામવાળી ગ્રુપ એન્ટ્રીને દૂર કરવી

setfacl -xg: સ્ટાફ ફાઇલ

એક ફાઈલની ACL ની બીજી નકલ કરવી

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

ડિફોલ્ટ ACL માં ACL ઍક્સેસને કૉપિ કરી રહ્યું છે

getfacl -a dir | સેટફૅકલ-ડી-એમ-ડીઆઈઆર

પોસિસ 1003.1 ઇ ડ્રાફટ સ્ટાન્ડર્ડ 17 પરની સુસંગતતા

જો પર્યાવરણ ચલ POSIXLY_CORRECT વ્યાખ્યાયિત થયેલ છે, setfacl નું મૂળભૂત વર્તણૂક નીચે પ્રમાણે બદલાય છે: બધા બિન-માનક વિકલ્પો અક્ષમ છે. `` ડિફૉલ્ટ: '' ઉપસર્ગ અક્ષમ છે. -x અને -X વિકલ્પો પણ પરવાનગી ક્ષેત્રો સ્વીકારી (અને તેમને અવગણવા).

આ પણ જુઓ

umask (1),