लिनक्स कमांड setfacl जाणून घ्या

Setfacl उपयुक्तता फायली आणि निर्देशिकेच्या प्रवेश नियंत्रण सूची (एसीएल) सेट करते. आदेश ओळीवर , आदेशांचा क्रम फाइल्सच्या क्रमाने क्रमबद्ध होतो (ज्यामुळे पुढील आदेशांचा वापर केला जाऊ शकतो ...).

पर्याय- m, आणि -x आज्ञा ओळीवर ACL ची अपेक्षा करते. एकाधिक ACL प्रविष्ट्या कॉमा वर्ण (`, ') द्वारे विभक्त आहेत. पर्याय- एम, आणि -एक्स एखाद्या फाइलमधून किंवा मानक इनपुटवरून ACL वाचते. ACL प्रवेश स्वरूप विभाग ACL ENTRIES मध्ये वर्णन केले आहे.

--set आणि --set-file पर्याय फाइल किंवा निर्देशिकेतील ACL सेट करतात. मागील ACL बदलले आहे. या ऑपरेशनसाठी ACL प्रविष्ट्यांमध्ये परवानग्या समाविष्ट करणे आवश्यक आहे.

-एम (--प्रतिकारित करा) आणि -M (--modify-file) पर्याय एखाद्या फाइल किंवा निर्देशिकेत ACL सुधारित करतात. या ऑपरेशनसाठी ACL प्रविष्ट्यांमध्ये परवानग्या समाविष्ट करणे आवश्यक आहे.

-x (--म्हणजे) आणि -एक्स ( --मांडो -फाईल) पर्याय ACL एन्शन काढून टाकतात. PMSIXLY_CORRECT परिभाषित केल्याशिवाय, PERM फील्डशिवाय केवळ ACL प्रविष्ट्या पॅरामिटर्स म्हणून स्वीकारली जातात.

-एम आणि -एक्स पर्याय वापरून फाइल्स वाचत असताना, setfacl output getfacl उत्पादन स्वीकारतो. प्रति पंक्तीमध्ये जास्तीत जास्त एक एसीएल प्रवेश आहे पाउंड साइन (`# ') नंतर, ओळीच्या शेवटी सर्व काही एक टिप्पणी मानले जाते.

जर setfacl फाइल प्रणालीवर वापरला असेल जो ACL ला समर्थन देत नाही, setfacl फाइल मोड परवानगी बिट्सवर चालते. ACL परवानगी बिट मध्ये पूर्णपणे फिट नसल्यास, setfacl फाइल मोड परवानगी बिट्स बदलते म्हणून ACL शक्य तितक्या लक्ष वेधून घेते, मानक त्रुटी संदेश त्रुटी लिहितात आणि 0 पेक्षा अधिक बाहेरच्या स्थितीसह परत देते.

सुप्रसिद्ध

setfacl [-bkndRLPvh] [{-m | -x} acl_spec] [{-M- -X} acl_file] फाइल ...

setfacl --restore = फाइल

PERMISSIONS

CAP_FOWNER सक्षम फाइल मालक आणि प्रक्रियांना फाइलचे ACL सुधारित करण्याचा अधिकार दिला जातो. फाइल मोडमध्ये प्रवेश करण्यासाठी आवश्यक परवानग्यांप्रमाणे हे समान आहे. (वर्तमान Linux प्रणालीवर, रूट ही CAP_FOWNER क्षमता असलेली एकमेव वापरकर्ता आहे.)

पर्याय

-बी, --मूठ-सर्व

सर्व विस्तारित ACL प्रविष्ट्या काढा मालक, गट आणि इतरांच्या मूळ एसीएल प्रविष्ट्या राखून ठेवल्या आहेत.

-k, --remove-default

डीफॉल्ट ACL काढा कोणताही डीफॉल्ट ACL अस्तित्वात नसल्यास, कोणतीही इशारे दिले नाहीत.

-n, --no-mask

प्रभावी अधिकार मास्क पुनर्गुंतित करू नका. Setfacl चे डीफॉल्ट वर्तन म्हणजे ACL मास्क एंट्रीची पुनर्नियुक्ती करणे, जोपर्यंत एक मुखवटा प्रविष्टि स्पष्टपणे दिली जात नाही. मास्क प्रविष्टी मालकी स्वीकारणार्या गटाच्या सर्व परवानग्या च्या युनियनवर सेट आहे, आणि सर्व नामित वापरकर्ता आणि गट प्रविष्ट्या. (ही मास्क प्रविष्टीमुळे प्रभावित झालेली ही प्रविष्ट्या आहेत).

--मास्क

प्रभावी अधिकार मुखवटा पुन्हा मोजा, ​​जरी ACL मास्क प्रविष्टी स्पष्टपणे दिली गेली असली तरीही. ( -n पर्याय पहा.)

-d, --default

सर्व ऑपरेशन डीफॉल्ट ACL वर लागू होतात. डीफॉल्ट ACL प्रविष्ट्यांकडे इनपुट सेटमध्ये नियमित एसीएल प्रविष्ट केल्या जातात. इनपुट सेटमध्ये डिफॉल्ट ACL प्रविष्ट्या टाकली जातात. (तसे झाल्यास चेतावणी दिले जाते).

--restore = फाइल

`Getfacl -R 'किंवा तत्सम द्वारे निर्धारीत बॅकअप पुनर्संचयित करा. या यंत्रणेद्वारे पूर्ण निर्देशिका सबट्रीचे सर्व परवानग्या पुनर्संग्रहित केल्या जातात. जर इनपुटमध्ये मालक टिप्पण्या किंवा समूह टिप्पण्या असतील आणि setfacl रूटद्वारे चालवले असेल तर सर्व फाइल्सच्या मालकाकडे आणि त्याच्या मालकीचे समूह देखील पुनर्संचयित केले जाईल. हा पर्याय `--test 'व्यतिरिक्त इतर पर्यायांसह मिसळू शकत नाही.

--test

चाचणी मोड कोणत्याही फाइल्सच्या ACL बदलण्याऐवजी, परिणामी ACL सूचीबद्ध आहेत.

-आर, --क्रिकिव्ह

रिकव्हरीव्ह सर्व फाइल्स आणि निर्देशिकेत ऑपरेशन करा. हा पर्याय `--restore 'सह मिसळू शकत नाही.

-एल, - लॉजिकल

तार्किक चाला, सांकेतिक दुवे अनुसरण. डिफॉल्ट वर्तन म्हणजे सांकेतिक लिंक आर्ग्यूमेंटांचे अनुसरण करणे आणि उपनिर्देशिकांमध्ये आढळणारे प्रतिकात्मक दुवे वगळणे. हा पर्याय `--restore 'सह मिसळू शकत नाही.

-पी, --फॉसिकल

शारीरिक चाला, सर्व प्रतीकात्मक लिंक्स वगळा. हे देखील सांकेतिक लिंक आर्गॅक्ट्स वगळले आहे. हा पर्याय `--restore 'सह मिसळू शकत नाही.

- विरुद्ध

Setfacl ची आवृत्ती प्रिंट करा आणि बाहेर पडा.

- मदत

कमांड लाइन पर्याया समजावून सांगण्यास मदत करा.

कमांड लाइन पर्यायांची समाप्ती. सर्व उर्वरित मापदंडांचे फाइल नाव म्हणून अर्थ लावले जातात, जरी ते डॅश ने सुरू असले तरी

जर फाईलचे नाव पॅरामीटर सिंगल डॅश असेल, तर setfacl मानक इनपुटमधील फाइल्सची सूची वाचते.

ACL प्रवेश

Setfacl युटिलिटि खालील ACL एंट्री स्वरूपन ओळखते (स्पष्टतेसाठी समाविष्ट केलेले रिकामटे):

[डी [ईफॉल्ट]:] [आपण [सेर]:] uid [: perms ]

नामित वापरकर्त्याची परवानगी. UID रिकामा असल्यास फाइल मालकाची परवानगी.

[डी [ईफॉल्ट]:] जी [रूप]: जीआयडी [: perms ]

नामित समूहाची परवानगी. Gid रिक्त असल्यास मालकी हक्क गट परवानगी.

[डी [ईफॉल्ट]:] एम [विचारा] [:] [: perms ]

प्रभावी अधिकार मुखवटा

[डी [ईफॉल्ट]:] ओ [ताप] [:] [: perms ]

इतरांच्या परवानगी.

डेलीमित्र वर्ण आणि बिगर-सीमांकित वर्णांमधील मोकळी जागा दुर्लक्षित केली आहे.

परवान्यासह योग्य ACL प्रविष्ट्या सुधारित आणि सेट ऑपरेशनमध्ये वापरली जातात. ( पर्याय- m , -m , --set आणि --set-file ). नोंदी हटविण्याकरिता perms फील्डशिवाय नोंदी वापरल्या जातात (पर्याय -x आणि -एक्स ).

Uid आणि gid साठी आपण नाव किंवा नंबर निर्दिष्ट करू शकता.

Perms फिल्ड वर्णांचे संयोजन आहे जे परवानग्या दर्शवितात: वाचन (आर) , लिहा (डब्ल्यू) , एक्झिक्यू (x) , जर फाईल एक निर्देशिका असेल किंवा काही वापरकर्त्यासाठी एक्झिक्युट परवानगी असेल तर (एक्स) चालवा. वैकल्पिकरित्या, perms फील्ड ऑक्टल अंक (0-7) असू शकते.

स्वयंचलितरित्या तयार केलेले प्रक्षेपण

मालिका, गट आणि इतरांसाठी सुरुवातीला, फायली आणि निर्देशिकेत फक्त तीन पाया ACL प्रविष्ट्या असतात काही नियम आहेत ज्यात एक ACL वैध असणे आवश्यक आहे.

*

तीन मूल प्रविष्ट्या काढल्या जाऊ शकत नाहीत. यापैकी प्रत्येक एंट्री प्रकारचे नेमके एंट्री असणे आवश्यक आहे.

*

जेव्हा एखाद्या ACL मध्ये उपयोजक प्रविष्ट्या किंवा नाव असलेल्या ग्रुपच्या ऑब्जेक्ट असतील तेव्हा त्यात प्रभावी अधिकार मुखवटा असणे आवश्यक आहे.

*

जेव्हा एखाद्या ACL मध्ये कोणतीही डीफॉल्ट ACL प्रविष्ट्या असतील, तेव्हा तीन डीफॉल्ट ACL आधार प्रविष्ट्या (डीफॉल्ट मालक, डीफॉल्ट समूह, आणि अन्य इतर) देखील अस्तित्वात असणे आवश्यक आहे.

*

जेव्हा एखाद्या डीफॉल्ट ACL मध्ये नामितीकृत वापरकर्ता प्रविष्ट्या किंवा नावाचे समूह ऑब्जेक्ट असेल तेव्हा त्यामध्ये डीफॉल्ट प्रभावी अधिकार मुखवटा असणे आवश्यक आहे.

वापरकर्त्याला हे नियम सुनिश्चित करण्यास मदत करण्यासाठी, setfacl खालील अटींनुसार विद्यमान प्रविष्ट्यांमधून प्रविष्ट्या तयार करते:

*

जर एखाद्या ACL मध्ये उपयोजक किंवा नावाने ग्रुप प्रविष्ट्या असतील आणि मुखवटे नसलेली प्रविष्टी अस्तित्वात असेल, तर गट एंट्री बनवण्याप्रमाणे समान परवानगी असलेली मास्क प्रविष्टी जर -n ऑप्शन दिलेले नसेल, तर मुखवटातील नोंदींपासून प्रभावित सर्व परवानग्या च्या युनियनचा समावेश करण्यासाठी मुखवटा प्रविष्टिची परवानगी अधिक सुस्थीत करण्यात आली आहे. ( -n पर्याय वर्णन पहा).

*

जर डीफॉल्ट एसीएल प्रविष्टी निर्माण झाली असेल आणि डीफॉल्ट एसीएलमध्ये मालक नाही, मालकीचे समूह किंवा अन्य एंट्री असल्यास, एसीएल मालकाची एक प्रत, मालकीचे गट किंवा इतर एंट्री डिफॉल्ट एसीएलमध्ये जोडले जाईल.

*

जर एखाद्या डीफॉल्ट ACL मध्ये उपयोजक प्रविष्ट्या किंवा नामित गट नोंदी असतील आणि मुखवटे नसलेली प्रविष्टी अस्तित्वात असेल, तर डिफॉल्ट डीफॉल्ट एसीएल ग्रुप एंट्री सारख्याच परवान्या असलेली मास्क प्रविष्टी जोडली जाईल. जर -n ऑप्शन दिलेले नसल्यास, मुखवटाच्या नोंदीद्वारे प्रभावित सर्व परवानग्या च्या युनियनमध्ये पुढील मास्क एंट्रीची परवानगी पुढील समायोजीत केली जाते. ( -n पर्याय वर्णन पहा).

उदाहरणे

अतिरिक्त वापरकर्ता वाचन प्रवेश मंजूर करणे

setfacl -mu: लिसा: आर फाईल

सर्व गट आणि सर्व नामित वापरकर्त्यांकडून (प्रभावी अधिकार मुखवटा वापरुन) लेखन प्रवेश रद्द करणे

setfacl-mm :: rx फाइल

फाईलच्या एसीएलमधून नामांकित ग्रुप एंट्री काढून टाकणे

setfacl -xg: कर्मचारी फाईल

एका फाईलच्या दुसर्या ACL वर कॉपी करणे

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

डीसीएल ACL मध्ये प्रवेश ACL मध्ये कॉपी करणे

getfacl -a dir | सेटफॅक्ल-डी-एम-डायरे

पॉझिक्स 1003.1e मसुदा मानक 17

पर्यावरण परिवर्तनीय POSIXLY_CORRECT परिभाषित केल्यास, setfacl चे पूर्वनिर्धारित वर्तन खालील प्रमाणे बदलते: सर्व विना-मानक पर्याय बंद केले जातात `` डीफॉल्ट: '' उपसर्ग अक्षम आहे. -x आणि -X पर्याय देखील परवानगी फील्ड स्वीकारतात (आणि त्यांना दुर्लक्ष करा)

हे सुद्धा पहा

umask (1),