मुख्य सामग्री पर जाएं
मॉड्यूल 4 · पाठ 1 का 2पाठ्यक्रम में 8/11~12 min
मॉड्यूल पाठ (1/2)

अनुमतियाँ प्रबंधित करना (chmod)

लिनक्स में, फ़ाइलों और निर्देशिकाओं तक पहुंच एक अनुमति प्रणाली द्वारा नियंत्रित की जाती है। प्रत्येक फ़ाइल/निर्देशिका एक स्वामी उपयोगकर्ता और उपयोगकर्ताओं के एक समूह से संबंधित है।

अनुमतियाँ प्राप्तकर्ताओं की तीन श्रेणियों में विभाजित हैं:

  1. उपयोगकर्ता (यू): फ़ाइल का स्वामी।
  2. समूह (जी): फ़ाइल से जुड़े समूह के सदस्य।
  3. अन्य (ओ): सिस्टम पर बाकी सभी लोग।

प्रत्येक श्रेणी के लिए, तीन प्रकार की कार्रवाइयाँ अनुमत या अस्वीकृत हैं:

  • पढ़ें (आर): फ़ाइल सामग्री देखें या निर्देशिका सामग्री सूचीबद्ध करें।
  • लिखें (w): फ़ाइल को संपादित करें या निर्देशिका में फ़ाइलें बनाएं/हटाएं।
  • निष्पादित करें (x): एक फ़ाइल चलाएँ (उदाहरण के लिए एक स्क्रिप्ट) या एक निर्देशिका दर्ज करें।

विशिष्ट संकेतन ls -l द्वारा दिखाया गया है: -rwxr-xr-x। पहला वर्ण प्रकार को इंगित करता है (उदाहरण के लिए फ़ाइल के लिए -, निर्देशिका के लिए d), इसके बाद user, group, और others के लिए तीन त्रिक हैं।


अनुमतियाँ बदलना: chmod

chmod (परिवर्तन मोड) कमांड आपको फ़ाइल अनुमतियों को संशोधित करने की अनुमति देता है। उन्हें निर्दिष्ट करने के दो मुख्य तरीके हैं:

1. प्रतीकात्मक विधा

अनुमतियाँ जोड़ने, हटाने या सेट करने के लिए अक्षरों और ऑपरेटरों (+, -, =) का उपयोग करता है:

Bash
chmod u+x script.sh    # Adds execute permission (x) to the owner (u)
chmod g-w file.txt     # Removes write permission (w) from the group (g)
chmod a+r file.txt     # Makes the file readable by everyone (all: u, g, o)

2. ऑक्टल मोड (संख्यात्मक)

0 से 7 तक तीन अष्टक अंकों का उपयोग करता है, जहां प्रत्येक अंक श्रेणी की अनुमतियों के योग का प्रतिनिधित्व करता है (r=4, w=2, x=1):

  • 7 = rwx (4 + 2 + 1)
  • 6 = rw- (4 + 2)
  • 5 = r-x (4 + 1)
  • 4 = r-- (4)
  • 0 = --- (कोई अनुमति नहीं)
Bash
chmod 755 script.sh    # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key  # Owner: rw- (6), Group: --- (0), Others: --- (0)

खुद कोशिश करना

अभ्यास 1: मानक अनुमतियाँ सेट करें

व्यायाम#linux.m4.l1.e1
प्रयास: 0लोड हो रहा है...

अनुमतियों को 'script.sh' पर सेट करें ताकि मालिक पढ़, लिख और निष्पादित (आरडब्ल्यूएक्स) कर सके, जबकि समूह और अन्य केवल पढ़ और निष्पादित कर सकें (आर-एक्स)। ऑक्टल मोड का उपयोग करें.

संपादक लोड हो रहा है...
संकेत दिखाएँ

आरडब्ल्यूएक्स के लिए ऑक्टल कोड 7 (4+2+1) है, और आर-एक्स के लिए यह 5 (4+1) है। इस प्रकार chmod 755 का उपयोग करें।

3 प्रयासों के बाद समाधान उपलब्ध है

अभ्यास 2: निजी कुंजी को सुरक्षित रखें

व्यायाम#linux.m4.l1.e2
प्रयास: 0लोड हो रहा है...

फ़ाइल 'प्राइवेट.की' की अनुमतियों को संशोधित करें ताकि इसे केवल स्वामी द्वारा पढ़ने योग्य और लिखने योग्य (आरडब्ल्यू-) बनाया जा सके, समूह और अन्य (---) के लिए सभी पहुंच को हटा दिया जाए।

संपादक लोड हो रहा है...
संकेत दिखाएँ

ऑक्टल कोड 600 के साथ chmod का उपयोग करें (मालिक के पास 4+2, समूह 0, अन्य के पास 0)।

3 प्रयासों के बाद समाधान उपलब्ध है

अभ्यास 3: एक फ़ाइल को सभी के लिए निष्पादन योग्य बनाएं

व्यायाम#linux.m4.l1.e3
प्रयास: 0लोड हो रहा है...

प्रतीकात्मक मोड (a+x) का उपयोग करके फ़ाइल 'runner.sh' को सभी उपयोगकर्ता श्रेणियों के लिए निष्पादन योग्य बनाएं।

संपादक लोड हो रहा है...
संकेत दिखाएँ

फ़ाइल नाम के बाद सिंटैक्स chmod a+x का उपयोग करें।

3 प्रयासों के बाद समाधान उपलब्ध है