0666 का डिफॉल्ट मास्क मान लें। umask
0022 नया मास्क 0644 (0666-0022 = 0644) बना देगा, जिसका अर्थ है कि समूह और अन्य ने लिखा है (कोई लेखन या निष्पादन नहीं) अनुमतियाँ।
"अतिरिक्त" अंक (पहली संख्या = 0), निर्दिष्ट करता है कि कोई विशेष मोड नहीं हैं।
यदि मोड एक अंक से शुरू होता है तो इसे अष्टक के रूप में व्याख्या किया जाएगा अन्यथा इसका मतलब प्रतीकात्मक होना चाहिए।
0 एक अंक है, जैसा कि 1 (चिपचिपा सा) या 6 (SGID के लिए) है। एक आदेश जैसे कि chmod
अन्य तरीकों से बुलाया जा सकता है, जैसे chmod ug+rw mydir
कि आप उपयोगकर्ता और समूह के लिए पठन और लेखन अनुमतियाँ जोड़ेंगे। ध्यान दें कि इस मामले में मोड (बदसूरत + आरडब्ल्यू) एक अंक के साथ शुरू नहीं होता है, इस प्रकार इसकी व्याख्या ऑक्टल के रूप में नहीं बल्कि प्रतीकात्मक होगी।
देखें en.wikipedia.org/wiki/Chmod#Symbolic_examples Symbolics लिए और साथ ही www.lifeaftercoffee.com/2007/03/20/special-permission-modes-in-linux-and-unix/ के लिए विशेष मोड पर एक सा।
मैं नहीं जानता कि आप पहले बिट को अनमास्क करेंगे umask
, लेकिन तकनीकी रूप से आप कर सकते हैं। यह समझाता है कि आप लगभग हमेशा इसे शून्य के रूप में क्यों देखते हैं।
Pinkfloydx33 को श्रेय
मुखौटा का पहला अंक विशेष अनुमतियों से संबंधित है जो स्वामी / समूह / अन्य मॉडल में इतनी सफाई से फिट नहीं होते हैं। जब फ़ाइल की अनुमति के लिए चार अंक प्रदान किए जाते हैं, तो पहला उन विशेष मूल्यों को संदर्भित करता है:
4000 = SUID
2000 = SGID
1000 = sticky bit
SUID बिट, सेट-यूज़र-आईडी के लिए छोटा, मालिक के प्रभावी उपयोगकर्ता आईडी (यूआईडी) के साथ चलने के लिए एक निष्पादन योग्य कार्यक्रम का कारण बनता है - दूसरे शब्दों में, कोई भी व्यक्ति जो इसे निष्पादित नहीं करता है, कार्यक्रम मालिक के अधिकारों के साथ निष्पादित करता है। यह आमतौर पर उन कार्यक्रमों में देखा जाता है जो रूट विशेषाधिकार की आवश्यकता वाली चीजों को करते हैं, लेकिन सामान्य उपयोगकर्ताओं द्वारा चलाए जाने के लिए होते हैं: passwd
ऐसा ही एक उदाहरण है।
सेट-समूह-आईडी के लिए छोटा SGID बिट बहुत समान है, लेकिन मालिक के प्रभावी समूह आईडी (gid) के साथ चलता है ।
स्टिकी बिट थोड़ा और अधिक जटिल है, यदि आप उस पर अधिक जानकारी चाहते हैं, तो आप इसके लिए मैनपेज पढ़ सकते हैं sticky
।
इन बिट्स का उपयोग निर्देशिकाओं के साथ भी किया जा सकता है, लेकिन उनके अर्थ बदल जाते हैं।
मुझे विश्वास नहीं है कि आप वास्तव umask
में डिफ़ॉल्ट रूप से इनमें से किसी भी अतिरिक्त बिट्स को सक्षम करने की अनुमति देने के लिए सेट कर सकते हैं , लेकिन आप शायद कभी भी ऐसा नहीं करना चाहेंगे।
श्रेय user470379 को
man 2 umask
(संबंधित सिस्टम कॉल) "केवल फ़ाइल अनुमति बिट्स काmask
उपयोग किया जाता है"।bash
Umask 1000 में , एक त्रुटि उत्पन्न करता है: "ऑक्टल नंबर ऑफ़ रेंज"। तो अतिरिक्त 0 क्यों? मुझे लगता है कि यह केवल यह दर्शाना है कि संख्या अष्टक में है।