ऑमस्क अनुमतियों के एक सेट के रूप में कार्य करता है जो एप्लिकेशन फाइलों पर सेट नहीं कर सकते हैं। यह प्रक्रियाओं के लिए एक फ़ाइल मोड निर्माण मास्क है और निर्देशिकाओं के लिए इसे सेट नहीं किया जा सकता है। अधिकांश एप्लिकेशन फाइलों को निष्पादित अनुमतियों के साथ सेट नहीं करेंगे, इसलिए उनका डिफ़ॉल्ट होगा 666, जिसे बाद में umask द्वारा संशोधित किया गया है।
जैसा कि आपने मालिक के लिए रीड / राइट बिट्स और दूसरों के लिए रीड बिट्स को हटाने के लिए umask सेट किया है, एक डिफ़ॉल्ट जैसे 777अनुप्रयोगों में फ़ाइल अनुमतियों का परिणाम होगा 133। इसका मतलब यह होगा कि आप (और अन्य) फ़ाइल को निष्पादित कर सकते हैं, और अन्य इसे लिख सकेंगे।
यदि आप ऐसी फाइलें बनाना चाहते हैं, जो किसी के द्वारा पढ़ी / लिखी / निष्पादित नहीं की जाती हैं, लेकिन मालिक को, आपको 077समूह और अन्य के लिए उन अनुमतियों को बंद करने के लिए एक umask का उपयोग करना चाहिए ।
इसके विपरीत, एक umask 000नव निर्मित निर्देशिकाओं को पठनीय, सभी के लिए पठनीय और वांछनीय बना देगा (अनुमति होगी 777)। इस तरह के एक umask अत्यधिक असुरक्षित है और आपको कभी भी umask सेट नहीं करना चाहिए 000।
उबंटू पर डिफ़ॉल्ट umask था 022जिसका अर्थ था कि नई बनाई गई फाइलें सभी द्वारा पठनीय हैं, लेकिन केवल स्वामी द्वारा लिखित है:
user@computer:~$ touch new-file-name
user@computer:~$ ls -dl new-file-name
-rw-r--r-- 1 user user 0 Apr 1 19:15 new-file-name
उबंटू वनरिक (11.10) में शुरू होने वाले डिफ़ॉल्ट umask को शिथिल कर दिया गया 002, जो मालिक के समूह को लिखने-पहुंच का विस्तार करता है:
user@computer:~$ touch new-file-name
user@computer:~$ ls -dl new-file-name
-rw-rw-r-- 1 user user 0 Apr 1 19:15 new-file-name
ऑमस्क को देखना और संशोधित करना
अपनी वर्तमान umask सेटिंग देखने के लिए, एक टर्मिनल खोलें और कमांड चलाएँ:
umask
वर्तमान शेल के umask सेटिंग को किसी और चीज़ में बदलने के लिए, 077 कहें, चलाएँ:
umask 077
यह जांचने के लिए कि यह सेटिंग काम करती है या नहीं, आप एक नई फ़ाइल बना सकते हैं (किसी मौजूदा फ़ाइल की फ़ाइल अनुमतियां प्रभावित नहीं होंगी) और फ़ाइल के बारे में जानकारी दिखाएं, चलाएँ:
user@computer:~$ touch new-file-name
user@computer:~$ ls -dl new-file-name
-rw------- 1 user user 0 Apr 1 19:14 new-file-name
ऑमस्क सेटिंग को उसी शेल से शुरू की गई प्रक्रियाओं द्वारा विरासत में मिला है। उदाहरण के लिए, geditटर्मिनल में निष्पादित करके पाठ संपादक GEdit शुरू करें और gedit का उपयोग करके एक फ़ाइल सहेजें। आप देखेंगे कि नई बनाई गई फ़ाइल टर्मिनल में उसी umask सेटिंग से प्रभावित है।
मामले का उपयोग करें: बहु-उपयोगकर्ता प्रणाली
यदि आप कई उपयोगकर्ताओं द्वारा साझा किए गए सिस्टम पर हैं, तो यह वांछित है कि अन्य आपके होम डायरेक्टरी में फाइलें नहीं पढ़ सकते हैं। उसके लिए, एक ओम्स्क बहुत उपयोगी है। संपादित करें ~/.profileऔर इसके साथ एक नई पंक्ति जोड़ें:
umask 007
~/.profileप्रभावी होने के लिए आपको इस umask परिवर्तन के लिए फिर से लॉगिन करना होगा। इसके बाद, आपको पढ़ने, लिखने और दुनिया के लिए बिट निष्पादित करके अपने घर निर्देशिका में फ़ाइलों की मौजूदा फ़ाइल अनुमतियों को बदलने की आवश्यकता है। एक टर्मिनल खोलें और निष्पादित करें:
chmod -R o-rwx ~
यदि आप चाहते हैं कि यह umask सेटिंग सिस्टम पर सभी उपयोगकर्ताओं के लिए लागू हो, तो आप सिस्टम-वाइड प्रोफ़ाइल फ़ाइल को यहां संपादित कर सकते हैं /etc/profile।
app_mode 666 rw- rw- rw-umask 644 --0 -00 -00file_mode 022 --- -w- -w-