Chmod कैलकुलेटर
मालिक, समूह और बाक़ी सबके लिए पढ़ना, लिखना और
चलाना टिक करके ऑक्टल chmod नंबर और
सिंबॉलिक स्ट्रिंग (rwxr-xr-x) पाएँ — या कोई भी टाइप करें और बॉक्स
अपडेट हो जाएँगे। setuid, setgid और sticky bit को सपोर्ट करता है। सब कुछ आपके ब्राउज़र में चलता है।
| किसके लिए | पढ़ना (4) | लिखना (2) | चलाना (1) |
|---|---|---|---|
| मालिक (यूज़र) | |||
| समूह (ग्रुप) | |||
| अन्य (वर्ल्ड) |
विशेष परमिशन बिट दिखाएँ (setuid / setgid / sticky)
chmod 755 filename chmod परमिशन कैसे काम करती हैं
किसी Unix या Linux सिस्टम पर हर फ़ाइल और डायरेक्टरी तीन वर्गों के उपयोगकर्ताओं के लिए परमिशन रखती
है: मालिक (वह उपयोगकर्ता जो फ़ाइल का स्वामी है), समूह (उपयोगकर्ताओं
का एक समूह), और अन्य (बाक़ी सब)। हर वर्ग को तीन परमिशन दी जा सकती हैं:
पढ़ना (मान 4), लिखना (मान 2) और चलाना (मान 1)।
किसी वर्ग के लिए इच्छित मान जोड़कर उसका ऑक्टल अंक पाएँ — पढ़ना + चलाना = 4 + 1 = 5, पढ़ना + लिखना =
4 + 2 = 6, तीनों = 7 — और तीन अंकों को उस नंबर में पिरोएँ जिसे आप chmod को देते हैं। तो
chmod 640 file का मतलब है मालिक 6 (पढ़ना + लिखना), समूह 4 (पढ़ना), अन्य 0 (कुछ नहीं)।
वही परमिशन सिंबॉलिक रूप में नौ वर्णों में लिखी जाती हैं — मालिक, समूह और अन्य के लिए rwx
के तीन समूह, और जहाँ कोई परमिशन बंद हो वहाँ डैश। 755 यानी rwxr-xr-x;
644 यानी rw-r--r--। यह कैलकुलेटर टिक-बॉक्स, ऑक्टल नंबर, सिंबॉलिक स्ट्रिंग और
चलाने-को-तैयार chmod कमांड को समक्रमिक रखता है — किसी एक को बदलें और बाक़ी तुरंत अपडेट हो
जाते हैं।
आम परमिशन
सिंबॉलिक कॉलम ऑक्टल मान से कंप्यूट किया गया है, देखकर नहीं लिया गया — इसलिए यह हमेशा सही रहता है:
| ऑक्टल | सिंबॉलिक | सामान्य उपयोग |
|---|---|---|
644 | rw-r--r-- | फ़ाइलों के लिए डिफ़ॉल्ट — मालिक पढ़/लिख सकता है, बाक़ी सभी केवल पढ़ सकते हैं। |
755 | rwxr-xr-x | डायरेक्टरी, स्क्रिप्ट और प्रोग्राम के लिए डिफ़ॉल्ट — मालिक को पूरा, अन्य को पढ़ना + चलाना। |
600 | rw------- | निजी फ़ाइल — केवल मालिक पढ़ और लिख सकता है (SSH कीज़, क्रेडेंशियल)। |
700 | rwx------ | निजी डायरेक्टरी या स्क्रिप्ट — केवल मालिक को कोई भी एक्सेस। |
775 | rwxrwxr-x | मालिक + समूह को पूरा, अन्य को पढ़ना + चलाना — एक साझा (collaborative) डायरेक्टरी। |
664 | rw-rw-r-- | मालिक + समूह पढ़/लिख सकते हैं, अन्य केवल पढ़ सकते हैं — समूह-साझा फ़ाइल। |
640 | rw-r----- | मालिक पढ़/लिख, समूह पढ़, अन्य कुछ नहीं — समूह-साझा कॉन्फ़िग। |
750 | rwxr-x--- | मालिक को पूरा, समूह को पढ़ना + चलाना, अन्य को कुछ नहीं — समूह-साझा प्रोग्राम। |
444 | r--r--r-- | सभी के लिए केवल पढ़ना। |
400 | r-------- | केवल मालिक के लिए केवल पढ़ना। |
711 | rwx--x--x | मालिक को पूरा; समूह और अन्य किसी डायरेक्टरी में प्रवेश कर सकते हैं पर उसे सूचीबद्ध नहीं कर सकते। |
777 | rwxrwxrwx | हर कोई पढ़, लिख और चला सकता है — असुरक्षित, साझा सिस्टम पर इससे बचें। |
पढ़ना, लिखना और चलाना — फ़ाइल बनाम डायरेक्टरी
| परमिशन | फ़ाइल पर | डायरेक्टरी पर |
|---|---|---|
r पढ़ना (4) | फ़ाइल की सामग्री देखें। | अंदर की एंट्रियों के नाम सूचीबद्ध करें। |
w लिखना (2) | फ़ाइल को बदलें या ओवरराइट करें। | अंदर एंट्रियाँ बनाएँ, नाम बदलें या हटाएँ। |
x चलाना (1) | फ़ाइल को प्रोग्राम/स्क्रिप्ट के रूप में चलाएँ। | डायरेक्टरी में प्रवेश करें और फ़ाइलों को नाम से एक्सेस करें (“सर्च”)। |
विशेष परमिशन बिट
एक चौथा, अग्रणी ऑक्टल अंक तीन विशेष बिट रखता है। ये वैकल्पिक हैं और डिफ़ॉल्ट रूप से बंद रहते हैं — इन्हें सेट करने के लिए टूल में “विशेष परमिशन बिट दिखाएँ” टिक करें।
| बिट | ऑक्टल | सिंबॉलिक | यह क्या करता है |
|---|---|---|---|
| setuid | 4000 | s (user execute) | किसी executable को कॉलर के बजाय फ़ाइल के मालिक (OWNER) के विशेषाधिकारों के साथ चलाता है। मालिक ट्रायड में s (या execute बंद होने पर S) दिखता है। क्लासिक उदाहरण: /usr/bin/passwd। |
| setgid | 2000 | s (group execute) | किसी फ़ाइल पर, इसे समूह (GROUP) के विशेषाधिकारों के साथ चलाता है। किसी डायरेक्टरी पर, नई फ़ाइलें डायरेक्टरी का समूह विरासत में लेती हैं — साझा फ़ोल्डरों के लिए उपयोगी। समूह ट्रायड में s / S दिखता है। |
| sticky bit | 1000 | t (other execute) | किसी डायरेक्टरी पर, केवल फ़ाइल का मालिक (या root) उसे हटा या नाम बदल सकता है, भले ही अन्य लिख सकें — /tmp जैसी वर्ल्ड-राइटेबल डायरेक्टरी पर उपयोग होता है। अन्य ट्रायड में t / T दिखता है। |
सिंबॉलिक नोटेशन में कोई विशेष बिट execute वर्ण को बदल देता है: जब execute भी चालू हो तो छोटा अक्षर
(s, t), जब बंद हो तो बड़ा अक्षर (S, T)। उदाहरण के
लिए chmod 4755 यानी rwsr-xr-x, और chmod 1777 (एक sticky,
वर्ल्ड-राइटेबल डायरेक्टरी जैसे /tmp) यानी rwxrwxrwt।
इसे कमांड लाइन पर इस्तेमाल करना
chmod कमांड कॉपी करें और उसे किसी टर्मिनल में चलाएँ, filename को अपने पाथ से
बदलकर। किसी डायरेक्टरी और उसके अंदर की हर चीज़ पर परमिशन को रिकर्सिवली लागू करने के लिए -R
विकल्प जोड़ें — सुविधाजनक, पर पहले नंबर दोबारा जाँच लें, क्योंकि रिकर्सिव 777 या डेटा
फ़ाइलों पर ग़लती से लगा execute बिट एक आम ग़लती है। आप परमिशन को सिंबॉलिक ऑपरेटरों से रिलेटिवली भी लागू
कर सकते हैं (जैसे केवल मालिक के लिए execute जोड़ने को chmod u+x script.sh); यह टूल पूर्ण
ऑक्टल और सिंबॉलिक मान कंप्यूट करने पर केंद्रित है।
प्राइवेसी
यह कैलकुलेटर पूरी तरह आपके अपने डिवाइस पर गणना करता है — आपके दर्ज किए मान कभी आपके डिवाइस से बाहर नहीं जाते, कुछ भी लॉग नहीं होता और कोई नेटवर्क अनुरोध नहीं होता। लोड होने के बाद यह ऑफ़लाइन काम करता रहता है।
अक्सर पूछे जाने वाले सवाल
- chmod 755 का क्या मतलब है?
- यह तीन परमिशन अंक सेट करता है — एक-एक मालिक, समूह और बाक़ी सबके (“अन्य”) के लिए। हर अंक पढ़ना (4), लिखना (2) और चलाना (1) जोड़ता है। तो 7 = 4+2+1 = पढ़ना, लिखना और चलाना; 5 = 4+1 = पढ़ना और चलाना। इसलिए chmod 755 मालिक को पूरा एक्सेस देता है और समूह तथा बाक़ी सबको पढ़ना + चलाना देता है पर लिखना नहीं। सिंबॉलिक रूप में यह rwxr-xr-x है। यह डायरेक्टरी, स्क्रिप्ट और प्रोग्राम के लिए मानक सेटिंग है।
- ऑक्टल और सिंबॉलिक नोटेशन में क्या अंतर है?
- दोनों एक ही परमिशन को दो तरीक़ों से बताते हैं। ऑक्टल (न्यूमेरिक) 755 या 4755 जैसा तीन- या चार-अंकों वाला नंबर है, जहाँ हर अंक मालिक, समूह और अन्य के लिए पढ़ना (4), लिखना (2) और चलाना (1) का योग है। सिंबॉलिक rwxr-xr-x जैसी नौ-वर्णों वाली स्ट्रिंग है, जो मालिक, समूह और अन्य के लिए तीन r/w/x समूहों में बँटी है, और जहाँ कोई परमिशन बंद हो वहाँ डैश होता है। यह टूल दोनों एक साथ दिखाता है और आपको कोई भी टाइप करने देता है — टिक-बॉक्स सेट करके नंबर पढ़ें, या कोई नंबर या सिंबॉलिक स्ट्रिंग पेस्ट करके बॉक्स देखें।
- फ़ाइल बनाम डायरेक्टरी के लिए पढ़ना, लिखना और चलाना का क्या मतलब है?
- किसी फ़ाइल के लिए: पढ़ना आपको उसकी सामग्री देखने देता है, लिखना उसे बदलने या ओवरराइट करने देता है, और चलाना उसे प्रोग्राम या स्क्रिप्ट के रूप में चलाने देता है। किसी डायरेक्टरी के लिए मतलब अलग होते हैं: पढ़ना आपको उसके अंदर के नाम सूचीबद्ध करने देता है, लिखना अंदर की एंट्रियाँ बनाने, नाम बदलने या हटाने देता है, और चलाना (जिसे अक्सर “सर्च” बिट कहते हैं) आपको डायरेक्टरी में प्रवेश करके अंदर की फ़ाइलों को नाम से एक्सेस करने देता है। इसीलिए डायरेक्टरी को आमतौर पर चलाना चाहिए (जैसे 755) जबकि सादा डेटा फ़ाइलों को आमतौर पर नहीं (जैसे 644)।
- setuid, setgid और sticky bit क्या हैं?
- ये तीन वैकल्पिक “विशेष” परमिशन बिट हैं जो एक अग्रणी चौथे ऑक्टल अंक में संग्रहीत होते हैं (setuid 4, setgid 2, sticky 1)। setuid किसी executable को फ़ाइल के मालिक के विशेषाधिकारों के साथ चलाता है; setgid उसे समूह के विशेषाधिकारों के साथ चलाता है, या किसी डायरेक्टरी को अपना समूह नई फ़ाइलों में देता है; किसी डायरेक्टरी पर sticky bit उपयोगकर्ताओं को एक-दूसरे की फ़ाइलें हटाने से रोकता है (जैसे /tmp पर)। सिंबॉलिक रूप में ये execute वर्ण को s/S (setuid, setgid) या t/T (sticky) से बदल देते हैं — जब execute भी सेट हो तो छोटा अक्षर, जब न हो तो बड़ा अक्षर। इन्हें सेट करने के लिए ऊपर “विशेष परमिशन बिट दिखाएँ” टिक करें।
- क्या chmod 777 सुरक्षित है?
- लगभग कभी नहीं। 777 सिस्टम पर हर किसी को पढ़ना, लिखना और चलाना देता है, इसलिए कोई भी उपयोगकर्ता (या कोई समझौता किया गया प्रोसेस) फ़ाइल या उसकी सामग्री को बदल या बदल सकता है। यह परमिशन एरर का एक आम पर जोखिम भरा “समाधान” है। जितनी कम परमिशन से काम चले उतनी ही रखें — आमतौर पर फ़ाइलों के लिए 644 और डायरेक्टरी तथा स्क्रिप्ट के लिए 755, और डेटा संवेदनशील होने पर समूह/अन्य अंक कसें (जैसे 600 या 640)।
- क्या कुछ भी अपलोड या सेव होता है?
- नहीं। पूरा कैलकुलेटर आपके ब्राउज़र में चलने वाला सादा JavaScript है — यह केवल आपके दर्ज किए नंबरों और अक्षरों पर छोटी बिट-अंकगणित करता है। कुछ भी सर्वर पर नहीं भेजा जाता, कुछ भी संग्रहीत नहीं होता, और पेज लोड होने के बाद यह ऑफ़लाइन काम करता रहता है।