Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> बाश प्रोग्रामिंग

Linux chmod पुनरावर्ती:फ़ाइल अनुमतियों को पुनरावर्ती रूप से कैसे बदलें

Linux के साथ chmod आदेश, हम सभी फ़ाइलों और निर्देशिकाओं पर फ़ाइल अनुमतियों को पुनरावर्ती रूप से बदल सकते हैं। यह मार्गदर्शिका बताती है कि कैसे।

हो सकता है कि आपने पहले निम्न त्रुटियों का सामना किया हो:

111 [Permission Denied]
"Linux-Screw" [Permission Denied]
"Linux-Screw" [readonly]

किसी भी सिस्टम फ़ाइल के लिए, फ़ाइल को संपादित करने के लिए sudo का उपयोग करना पसंदीदा तरीका है। यह आपको सभी सिस्टम संदर्भ रखने की अनुमति देता है। उपयोगकर्ता फ़ाइलों के साथ दैनिक उपयोग के लिए, अनुमतियों को बदलना सबसे अच्छा है। chmod हमारे लिए ऐसा कर सकता है। यह हमें अनुमति बढ़ाने की आवश्यकता से बचाता है और आवश्यकता पड़ने पर हमें एक्सेस देता है।

चामोद क्या है? chmod, या मोड बदलें, किसी फ़ाइल के फ़ाइल मोड बिट्स को बदलता है। आप इसे या तो प्रतीकात्मक रूप से या अष्टाधारी संख्या के प्रतिनिधित्व के साथ बदल सकते हैं।

chmod सिंटैक्स

chmod [OPTION] MODE FILE
Or
chmod [OPTION] OCTAL-MODE FILE
Options:
[-c], --changes
Verbose-mode, but only for changes
[-f], --silent, --quiet
Suppress most error messages
[-v], --verbose
Output a diagnostic for every file processed
[-R], --recursive
Change files and directories recursively

वे उपलब्ध विकल्प हैं। मोड प्रतीकात्मक संदर्भ को संदर्भित करता है। अगर मैं किसी फ़ाइल में निष्पादन योग्य अनुमति जोड़ना चाहता हूं, तो मैं इसमें प्रवेश करता हूं:

chmod +x [FILE]

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

chmod रिकर्सन

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

सौभाग्य से, chmod -R हमें सभी फाइलों को बार-बार बदलने की अनुमति देता है।

chmod -R 755 *
ls -altrR

अनुमतियाँ बदलने के बाद हमें निम्नलिखित दिखाता है।

Linux chmod पुनरावर्ती:फ़ाइल अनुमतियों को पुनरावर्ती रूप से कैसे बदलें

चामोद -आर

अगर आप जानना चाहते हैं कि क्यों -altrh मेरा डिफ़ॉल्ट और पसंदीदा विकल्पों का सेट है, ls . पर मेरा हाल का लेख देखें ।

ठीक है, हम वहाँ जाते हैं। ऊपर हम देखते हैं कि हमारी निर्देशिकाएं और फाइलें 755 . से मेल खाने के लिए बदल गई हैं , या rwx r-x r-x . वह निर्देशिका अब हमारे लिए उपलब्ध है क्योंकि हम उस समूह (एक उपयोगकर्ता समूह) से संबंधित हैं। यह हमारे लिए भी उपलब्ध है क्योंकि हम उपयोगकर्ता हैं। यदि आप किसी पिछले उपयोगकर्ता के फ़ोल्डर साफ़ कर रहे हैं, तो आप चुने गए के साथ फ़ाइलों का स्वामित्व बदल सकते हैं।

यह आपको एक उपयोगकर्ता के रूप में उपलब्ध कराता है। हालांकि, उपरोक्त chmod . के साथ एक समस्या है . जब आप अपना उमास्क . सेट करते हैं 0022 जैसी किसी चीज़ के लिए, डिफ़ॉल्ट परमिट, निर्देशिका और फ़ाइलें अलग हैं। निर्देशिकाएँ 755 पर बनाई जाती हैं। cd . को अनुमति देना , निर्देशिका बदलें, ठीक से काम करने के लिए आदेश दें। फ़ाइलें 644 के रूप में बनाई जाती हैं, जो निर्देशिका से एक कम है। ऐसा इसलिए है क्योंकि सामान्य फ़ाइलों को निष्पादन अनुमतियों की आवश्यकता नहीं होती है। सीडी . के लिए निर्देशिकाएं करती हैं . तो चलिए इसे ढूंढें . के साथ ठीक करते हैं और -exec

खोज के साथ पुनरावर्ती chmod

find <dir> -type d -exec chmod 755{} \; find <dir> -type f -exec chmod 644 {} \;
Linux chmod पुनरावर्ती:फ़ाइल अनुमतियों को पुनरावर्ती रूप से कैसे बदलें

chmod रिकर्सिवली विद फाइंड

और वहां हम जाते हैं, सब कुछ सहेजा गया और डिफ़ॉल्ट उमास्क के अनुरूप रखा गया। कोई निष्पादन योग्य फ़ाइल और निष्पादन योग्य निर्देशिका नहीं।

निष्कर्ष

फ़ाइल अनुमतियाँ चिपचिपी हो सकती हैं, लेकिन chmod इसे ठीक करने में हमारी मदद करता है। अब जब आप जानते हैं कि अनुमतियों को कैसे बदलना है, तो आप वास्तव में अपनी निर्देशिकाओं और फाइलों का स्वामित्व ले सकते हैं। शेल कमांड के साथ लिनक्स इन्फ्रास्ट्रक्चर को नेविगेट करने के बारे में अधिक जानने की आवश्यकता है? अधिक ट्यूटोरियल यहाँ पढ़ें।


  1. Linux में ज़िप फ़ाइलें कैसे निकालें

    ज़िप फ़ाइलें उतनी सामान्य नहीं हैं जितनी वे तब हुआ करती थीं जब डाउनलोड की गति धीमी थी और हर सहेजी गई बाइट मायने रखती थी। फिर भी, यह काफी सामान्य फ़ाइल प्रकार है। देर-सबेर आपको शायद एक खोलना पड़ेगा। आपके द्वारा उपयोग किए जाने वाले वितरण के आधार पर, ज़िप संग्रह को निकालना संभवतः काफी आसान है। फिर भी,

  1. चामोद 777 क्या है और यह लिनक्स में क्या करता है?

    यह लेख chmod 777 की खोज करता है, जो एक Linux कमांड है जो उपयोगकर्ता, समूह और अन्य लोगों को सभी अधिकार देता है। एक नए Linux उपयोगकर्ता, वेब डेवलपर या सिस्टम व्यवस्थापक के रूप में, आपको संभवतः टाइप करने का निर्देश दिया गया है: chmod 777 /path/to/file/or/folder ...किसी समय आपके Linux शेल में। जब भी

  1. विंडोज 10 में फाइल अनुमतियां कैसे बदलें

    आपको कई कारणों से अपने पीसी को कई लोगों के साथ साझा करने की आवश्यकता हो सकती है। विंडोज 10 सिस्टम स्तर पर सभी फाइल अनुमतियों की पेशकश और प्रबंधन करता है। यह आपके डेटा को अन्य उपयोगकर्ताओं से सुरक्षित रखता है। विंडोज 10 पीसी में, उपयोगकर्ताओं द्वारा बनाई गई फाइलें डिफ़ॉल्ट रूप से आसानी से सुलभ होती ह