लिनक्स

लिनक्स में chmod कमांड क्या हैं?

लिनक्स में chmod कमांड (Chmod Command in Linux)

What is chmod Command? (chmod कमांड क्या हैं?)

आपके लिनक्स सिस्टम की हर वस्तु में एक परमिशन मोड होता है जो बताता है कि यूजर इस पर क्या कार्य कर सकता है। तीन प्रकार की परमिशनस हैं: पढ़ें (r), लिखें (w), और एक्सीक्यूट करें (x)। किसी फ़ाइल को पढ़ने के लिए उसकी सामग्री को देखना है। उदाहरण के लिए, किसी टेक्स्ट फ़ाइल में टेक्स्ट पढ़ने के लिए किसी व्यक्ति की परमिशन होनी चाहिए। यदि यूजर उस फ़ाइल में एक वाक्य जोड़ना चाहता है, तो उसे लिखने की परमिशन चाहिए। एक्सीक्यूट की परमिशन किसी को फ़ाइल चलाने में सक्षम बनाती है, जैसे शेल स्क्रिप्ट या बाइनरी प्रोग्राम फ़ाइल।

यूनिक्स जैसे ऑपरेटिंग सिस्टम पर, प्रत्येक फ़ाइल से जुड़े फ्लैग का एक सेट यह निर्धारित करता है कि उस फ़ाइल का उपयोग कौन कर सकता है, कौन फ़ाइल को पढ़, लिख या एक्सीक्यूट कर सकता है और वे इसे कैसे एक्सेस कर सकते हैं। इन फ्लैग्स को फ़ाइल परमिशन या मोड कहा जाता है, जैसे कि “Mode of Access”। chmod कमांड का अर्थ “change mode” है। यह उस तरीके को प्रतिबंधित करता है जिस तरह से किसी फ़ाइल को एक्सेस किया जा सकता है।

जब आप -l (Long Format) विकल्प वाली फ़ाइलों को सूचीबद्ध करते हैं, तो आपको उन वर्णों का एक स्ट्रिंग दिखाई देगा, जो इस तरह दिखाई देगा –

-rwxrwxrwx

R – Read
W – Write
X – Execute



Linux file permission

यदि r, w, या x वर्ण मौजूद है, तो फ़ाइल को पढने, लिखने और एक्सीक्यूट करने की परमिशन दी गई है। यदि यह वर्ण मौजूद नहीं है और इसके बजाय a – दिखाई देता है, तो उस फ़ाइल की परमिशन नहीं दी जाती है। लिनक्स में, प्रत्येक फ़ाइल Owner, group और User इन तीन अलग-अलग वर्गों के लिए परमिशन के अधिकार के साथ असाइन की जाती है:

  • File owner
  • Group Member
  • Other

फ़ाइल स्वामित्व को chown और chgrp कमांड का उपयोग करके बदला जा सकता है।

प्रत्येक वर्ग पर लागू होने वाली तीन फ़ाइल परमिशनस प्रकार हैं:

  • पढ़ने की परमिशन।
  • लिखने की परमिशन।
  • एक्सीक्यूट की परमिशन।

यह अवधारणा आपको यह निर्दिष्ट करने की परमिशन देती है कि किन यूजरस को फ़ाइल पढ़ने, फ़ाइल पर लिखने या फ़ाइल को एक्सीक्यूट करने की परमिशन है।

Ls कमांड का उपयोग करके फाइल की परमिशन देखी जा सकती है:

ls -l filename.txt

फाइलों पर परमिशन का प्रभाव

परमिशनकरैक्टरफाइल का अर्थ
Readफ़ाइल पठनीय नहीं है। आप फ़ाइल सामग्री नहीं देख सकते हैं।
rफ़ाइल पठनीय है।
Writeफ़ाइल को बदला या संशोधित नहीं किया जा सकता है।
wफ़ाइल को बदला या संशोधित किया जा सकता है।
Executeफ़ाइल एक्सीक्यूट नहीं की जा सकती।
Xफ़ाइल को एक्सीक्यूट किया जा सकता है।

Using chmod Command

Chmod कमांड का सामान्य रूप निम्नलिखित रूप लेता है:

$ chmod [OPTIONS] MODE FILE…

Use Symbolic method in chmod Command

सिंबॉलिक मोड का उपयोग करते समय chmod कमांड का सिंटैक्स निम्न प्रारूप होता है:

$ chmod [OPTIONS] [ugoa…][-+=]perms…[,…] FILE…

1. फ्लैग का पहला सेट ([ugoa…]), यूजर्स के फ्लैग, परिभाषित करता है कि यूजर किस फ़ाइल की परमिशन को बदलते हैं।

u- फ़ाइल के मालिक।
g – वे यूजर जो ग्रुप के सदस्य हैं।
o – अन्य सभी यूजर।
a – सभी यूजर, जो समान है।

2. फ्लैग का दूसरा सेट ([- + =]), ऑपरेशन के फ्लैग, परिभाषित करता है कि किन परमिशन को हटाया, जोड़ा या सेट किया जाना है:

– निर्दिष्ट परमिशन हटाता है।
+ निर्दिष्ट परमिशन जोड़ता है।
= वर्तमान परमिशन को निर्दिष्ट परमिशन में बदलता है। यदि = चिह्न के बाद कोई परमिशन निर्दिष्ट नहीं की जाती है, तो निर्दिष्ट यूजर वर्ग की सभी परमिशन हटा दी जाती हैं।

3. परमिशनस (perms …) स्पष्ट रूप से शून्य या एक या एक से अधिक अक्षरों का उपयोग करके सेट की जा सकती हैं: r,w,x,X,s और t। एक से दूसरे यूजर्स क्लास में परमिशन कॉपी करते समय सेट u, g और o में से एक अक्षर का उपयोग करें।

4. एक से अधिक यूजर्स वर्गों ([,…]) के लिए परमिशनस सेट करते समय, सिंबल मोड को अलग करने के लिए अल्पविराम (स्पेस के बिना) का उपयोग करें।

नीचे कुछ उदाहरण दिए गए हैं कि सिंबल मोड में chmod कमांड का उपयोग कैसे करें:

ग्रुप के सदस्यों को फ़ाइल पढ़ने की परमिशन देना हैं, लेकिन इसे लिखने और एक्सीक्यूट करने की परमिशन नहीं देना हैं तो –

$ chmod g=r filename

सभी यूजर्स के लिए एक्सीक्यूट की परमिशन से हटाने के लिए –

$ chmod a-x filename

अन्य उपयोगकर्ताओं के लिए Write परमिशनस से हटाने के लिए –

$ chmod -R o-w dirname

फ़ाइल के owner को छोड़कर सभी यूजर्स के लिए रीड, राइट और एक्ज़ीक्यूट को हटा दें:

$ chmod og-rwx filename

निम्नलिखित रूप का उपयोग करके भी यही काम पूरा किया जा सकता है:

$ chmod og= filename

फ़ाइल के owner को पढ़ने, लिखने और एक्सीक्यूट करने की परमिशन दें, फ़ाइल के ग्रुप के लिए पढने की परमिशन और अन्य सभी यूजर्स को कोई परमिशन न दें:

$ chmod u = rwx, g = r, o = filename

फ़ाइल के owner की परमिशन को उस फ़ाइल के ग्रुप में जोड़ें, जिसके पास फ़ाइल के ग्रुप के सदस्य हैं:

$ chmod g + u filename

Use Numeric Method in chmod command

Chmod में वे अंक जो आप उपयोग कर सकते हैं वे यहां सूचीबद्ध हैं-

0: No permission
1: Execute permission
2: Write permission
3: Write and execute permissions
4: Read permission
5: Read and execute permissions
6: Read and write permissions
7: Read, write and execute permissions

हमारी example.txt फ़ाइल को देखते हुए, हम देख सकते हैं कि सभी तीन सेट अक्षर rwx हैं। इसका मतलब है कि सभी ने फ़ाइल के साथ अधिकारों को पढ़ा, लिखा और एक्सिक्यूट  किया है।

स्वामी (Owner) के लिए पढ़ने, लिखने और एक्सिक्यूट करने की परमिशन निर्धारित करने के लिए (हमारी सूची से 7); ग्रुप (Group) के लिए पढने और लिखने की परमिशन के लिए (हमारी सूची से 6); और दुसरो के लिए पढ़ने और एक्सिक्यूट करने के लिए (हमारी सूची में से 5) चुने जिन्हें हमें अंक 765 का उपयोग करने की आवश्यकता है:

$ chmod -R 765 example.txt

सिलेबस के अनुसार नोट्स
DCA, PGDCA, O Level, ADCA, RSCIT, Data Entry Operator
यहाँ क्लिक करें