एंड्रॉयड

लाइन में चोक कमांड (फ़ाइल स्वामित्व)

लिनक्स - बदलें अनुमतियां और फ़ाइलों के लिए स्वामित्व और फ़ोल्डर (chmod, chown, सदस्यों, समूहों)

लिनक्स - बदलें अनुमतियां और फ़ाइलों के लिए स्वामित्व और फ़ोल्डर (chmod, chown, सदस्यों, समूहों)

विषयसूची:

Anonim

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

लिनक्स में, सभी फाइलें एक मालिक और एक समूह से जुड़ी होती हैं और फाइल मालिक, समूह के सदस्यों और अन्य लोगों के लिए अनुमति के अधिकार के साथ असाइन की जाती हैं।

इस ट्यूटोरियल में, हम आपको दिखाएंगे कि व्यावहारिक उदाहरणों के माध्यम से chown कमांड का उपयोग कैसे करें।

chown का उपयोग कैसे करें

chown कमांड का उपयोग करने के तरीके में जाने से पहले, आइए मूल सिंटैक्स की समीक्षा करके शुरू करें।

chown कमांड एक्सप्रेशन निम्न रूप लेता है:

chown USER FILE(s)

USER नए मालिक का उपयोगकर्ता नाम या उपयोगकर्ता ID (UID) है। GROUP नए ग्रुप या ग्रुप आईडी (GID) का नाम है। FILE(s) एक या अधिक फ़ाइलों, निर्देशिकाओं या लिंक का नाम है। सांख्यिक आईडी को + प्रतीक के साथ उपसर्ग किया जाना चाहिए।

  • USER - यदि केवल उपयोगकर्ता निर्दिष्ट किया गया है, तो निर्दिष्ट उपयोगकर्ता दी गई फ़ाइलों का स्वामी बन जाएगा, समूह का स्वामित्व नहीं बदला गया है। USER: - जब USER: बाद उपयोगकर्ता नाम आता है : और समूह का नाम नहीं दिया जाता है, तो उपयोगकर्ता फाइलों का मालिक बन जाएगा, और फ़ाइलों का समूह स्वामित्व उपयोगकर्ता के लॉगिन समूह में बदल जाता है। USER:GROUP - यदि उपयोगकर्ता और समूह दोनों को निर्दिष्ट किया गया है (कोई स्थान नहीं है, तो उन्हें दिया गया है), फ़ाइलों का उपयोगकर्ता स्वामित्व दिए गए उपयोगकर्ता में बदल जाता है और समूह का स्वामित्व दिए गए समूह में बदल जाता है। :GROUP - यदि उपयोगकर्ता को छोड़ दिया जाता है और समूह को एक उपनिवेश के साथ उपसर्ग किया जाता है : केवल फाइलों के समूह के स्वामित्व को दिए गए समूह में बदल दिया जाता है। : यदि केवल एक बृहदान्त्र दिया जाता है : उपयोगकर्ता और समूह को निर्दिष्ट किए बिना, कोई परिवर्तन नहीं किया जाता है।

डिफ़ॉल्ट रूप से, सफलता पर, chown किसी भी आउटपुट का उत्पादन नहीं करता है और शून्य देता है।

फ़ाइल का मालिक कौन है या फ़ाइल किस समूह की है, यह जानने के लिए ls -l कमांड का उपयोग करें:

ls -l filename.txt

-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt |- | | | +-----------> Group +-------------------> Owner

केवल sudo विशेषाधिकार वाले रूट या उपयोगकर्ता किसी फ़ाइल के समूह स्वामित्व को बदल सकते हैं।

कैसे एक फ़ाइल के मालिक को बदलने के लिए

किसी फ़ाइल के स्वामी को बदलने के लिए नए स्वामी के उपयोगकर्ता नाम और उसके बाद लक्ष्य फ़ाइल को तर्क के रूप में उपयोग करें:

chown USER FILE

उदाहरण के लिए, निम्न आदेश linuxize नामक एक नए स्वामी के लिए file1 नामक फ़ाइल के स्वामित्व को बदल linuxize :

chown linuxize file1

कई फ़ाइलों या निर्देशिकाओं के स्वामित्व को बदलने के लिए, उन्हें अंतरिक्ष-पृथक सूची के रूप में निर्दिष्ट करें। नीचे दिए गए आदेश में फ़ाइल नाम की फ़ाइल का स्वामित्व बदल जाता है और linuxize नाम के एक नए मालिक को निर्देशिका linuxize :

chown linuxize file1 dir1

उपयोगकर्ता नाम के बजाय संख्यात्मक उपयोगकर्ता आईडी (UID) का उपयोग किया जा सकता है। निम्नलिखित उदाहरण 1000 यूआईडी के साथ एक नए मालिक को file2 नामक फ़ाइल के स्वामित्व को बदल देगा:

chown 1000 file2

यदि कोई संख्यात्मक स्वामी उपयोगकर्ता नाम के रूप में मौजूद है, तो स्वामित्व उपयोगकर्ता नाम में स्थानांतरित कर दिया जाएगा। इस आईडी के साथ उपसर्ग से बचने के लिए:

chown 1000 file2

किसी फ़ाइल के स्वामी और समूह को कैसे बदलें

किसी फ़ाइल के स्वामी और समूह दोनों को बदलने के लिए, नए स्वामी और उसके बाद कोलन (:) द्वारा अलग किए गए chown कमांड का उपयोग करें जिसमें कोई हस्तक्षेप करने वाला स्थान और लक्ष्य फ़ाइल न हो।

chown USER:GROUP FILE

निम्न आदेश linuxize और समूह users नाम के एक नए मालिक को file1 नामक फ़ाइल के स्वामित्व को बदल देगा:

chown linuxize:users file1

यदि आप कॉलोन के बाद समूह का नाम छोड़ देते हैं (:) फ़ाइल का समूह निर्दिष्ट उपयोगकर्ता के लॉगिन समूह में बदल जाता है:

chown linuxize: file1

फ़ाइल के समूह को कैसे बदलें

फ़ाइल के केवल समूह को बदलने के लिए कॉलन कमांड का उपयोग करें जिसके बाद एक कॉलन ( chown और नया समूह नाम (उनके बीच कोई स्थान नहीं है) और एक तर्क के रूप में लक्ष्य फ़ाइल:

chown:GROUP FILE

निम्न आदेश एक फ़ाइल के मालिक समूह को file1 नामक www-data :

chown:www-data file1

एक अन्य कमांड जिसे आप फ़ाइलों के समूह स्वामित्व को बदलने के लिए उपयोग कर सकते हैं वह है chgrp

प्रतीकात्मक लिंक स्वामित्व को कैसे बदलें

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

उदाहरण के लिए, यदि आप स्वामी और प्रतीकात्मक लिंक symlink1 के समूह को बदलने का प्रयास करते हैं, जो /var/www/file1 को इंगित करता है, तो chown फ़ाइल के स्वामित्व को बदल देगा या सहानुभूति बिंदुओं को निर्देशिका में बदल देगा:

chown www-data: symlink1

संभावना है कि लक्ष्य के स्वामित्व को बदलने के बजाय, आपको "सिम्लिंक 1 नहीं कर सकते": अनुमति अस्वीकार की गई "त्रुटि"।

त्रुटि तब होती है क्योंकि अधिकांश लिनक्स वितरणों पर डिफ़ॉल्ट रूप से सिमिलिंक सुरक्षित होते हैं, और आप लक्ष्य फ़ाइलों पर काम नहीं कर सकते। यह विकल्प /proc/sys/fs/protected_symlinks में निर्दिष्ट /proc/sys/fs/protected_symlinks 1 मतलब सक्षम और 0 विकलांग है। हम अनुशंसा करते हैं कि सिमलिंक सुरक्षा को अक्षम न करें।

सिमलिंक के समूह स्वामित्व को बदलने के लिए, -h विकल्प का उपयोग करें:

chown -h www-data symlink1

कैसे Recursively फ़ाइल स्वामित्व को बदलने के लिए

दिए गए निर्देशिका के तहत सभी फ़ाइलों और निर्देशिकाओं पर पुनरावर्ती कार्य करने के लिए, -R ( --recursive ) विकल्प का उपयोग करें:

chown -R USER:GROUP DIRECTORY

निम्न उदाहरण /var/www निर्देशिका के तहत सभी फ़ाइलों और उपनिर्देशिकाओं के स्वामित्व को www-data नाम के एक नए मालिक और समूह में बदल देगा:

chown -R www-data: /var/www

यदि निर्देशिका में प्रतीकात्मक लिंक शामिल हैं -h विकल्प:

chown -hR www-data: /var/www

अन्य विकल्पों का उपयोग किया जा सकता है जब निर्देशिका के स्वामित्व को पुनरावर्ती रूप से बदल रहे हैं -H और -L

यदि कमांड को chown करने के लिए दिया गया तर्क एक सांकेतिक लिंक है जो किसी डायरेक्टरी की ओर -H , तो -H ऑप्शन कमांड को -H करने का कारण बनेगा। -L बताता है कि प्रत्येक प्रतीकात्मक लिंक का सामना करने वाली निर्देशिका को chown करने के लिए। आमतौर पर, आपको इन विकल्पों का उपयोग नहीं करना चाहिए क्योंकि आप अपने सिस्टम को गड़बड़ कर सकते हैं या सुरक्षा जोखिम पैदा कर सकते हैं।

एक संदर्भ फ़ाइल का उपयोग करना

--reference=ref_file विकल्प आपको दी गई फ़ाइलों के उपयोगकर्ता और समूह के स्वामित्व को निर्दिष्ट संदर्भ फ़ाइल ( ref_file ) के समान होने की अनुमति देता है। यदि संदर्भ फ़ाइल एक प्रतीकात्मक लिंक है, तो chown उपयोगकर्ता और लक्ष्य फ़ाइल के समूह का उपयोग करेगा।

chown --reference=REF_FILE FILE

उदाहरण के लिए, निम्न कमांड file1 के उपयोगकर्ता और समूह के स्वामित्व को file2 असाइन करेगा

chown --reference=file1 file2

निष्कर्ष

फ़ाइल के उपयोगकर्ता और / या समूह के स्वामित्व को बदलने के लिए chown एक Linux / UNIX कमांड-लाइन उपयोगिता है।

chown कमांड के बारे में अधिक जानने के लिए chown man पेज पर जाएं या अपने टर्मिनल में man chown टाइप करें।

ठसाठस टर्मिनल