उत्कृष्ट XKCD वेबकॉमिक से उपरोक्त कॉमिक पर विचार करें। कुर्सी पर बैठा आलसी आदमी चाहता है कि उसका दोस्त उसे सैंडविच बना दे, लेकिन उसके पास ऐसा करने का अधिकार नहीं है। यही है, जब तक कि वह शक्तिशाली सूडो कमांड का आह्वान नहीं करता। जिसके बाद सैंडविच किसी न किसी तरह से बनाया जाएगा।
वास्तविक जीवन में किसी व्यक्ति पर sudo आज़माना शायद उतना प्रभावी नहीं होगा, लेकिन यह जादुई आदेश है जो Linux की दुनिया में हर बाधा को पार कर जाता है। सुडो क्या है? यह अस्तित्व में भी क्यों है? इसका उत्तर यह है कि Linux अनुमतियों को कैसे संभालता है।
Linux उपयोगकर्ता अनुमतियों को समझना
लिनक्स को एक सुरक्षित ऑपरेटिंग सिस्टम माना जाता है क्योंकि यह अनुमतियों को कैसे संभालता है। जबकि ऑपरेटिंग सिस्टम जैसे macOS (जो लिनक्स के साथ एक पूर्वज साझा करते थे) और विंडोज अब इस संबंध में लिनक्स की तरह हैं, ओपन सोर्स ऑपरेटिंग सिस्टम अभी भी कुछ अनोखा है।
यह समझना कि लिनक्स कैसे अनुमतियों को संभालता है सुडो कमांड के आसपास अपना सिर प्राप्त करना बहुत आसान है। सभी आधुनिक ऑपरेटिंग सिस्टम में एक "व्यवस्थापक" या "रूट" उपयोगकर्ता अनुमति स्तर होता है। यदि आपके पास एक व्यवस्थापक या रूट खाता है, तो आप किसी भी सेटिंग को बदल सकते हैं, किसी भी डेटा को हटा सकते हैं और आम तौर पर कंप्यूटर के साथ जो कुछ भी आपको पसंद है वह कर सकते हैं।
इसमें ऐसी चीजें शामिल हैं जो आपको शायद नहीं करनी चाहिए जिससे डेटा हानि हो सकती है या पूरी तरह से वाइप और रीइंस्टॉलेशन की आवश्यकता हो सकती है।
लिनक्स नहीं करता है रूट उपयोगकर्ता स्तर की अनुमतियों को डिफ़ॉल्ट न बनाएं। इसके बजाय, आपका खाता आपकी अनुमति के स्तर को बढ़ाए बिना सिस्टम के वास्तव में संवेदनशील हिस्सों तक नहीं पहुंच सकता। इसका मतलब है कि जब आप ग्राफिकल इंटरफेस का उपयोग करके कुछ सामान्य करना चाहते हैं तो सिस्टम आपको व्यवस्थापक पासवर्ड दर्ज करने के लिए कहेगा।
हालांकि, जब आप काम पूरा करने के लिए टर्मिनल कमांड लाइन का उपयोग करना चाहते हैं, तो sudo सबसे सुरक्षित है और इसके बारे में जाने का सबसे कारगर तरीका है।
Sudo and the Terminal
Linux में स्वयं को उन्नत अनुमतियाँ देने के दो तरीके हैं। एक को स्थायी रूप से रूट उपयोगकर्ता के रूप में लॉग इन करना है। इसके साथ समस्या यह है कि कोई और जो कंप्यूटर का उपयोग कर सकता है वह कहर बरपा सकता है, और यहां तक कि आप इसे दुर्घटना से भी कर सकते हैं। सूडो आपकी अनुमतियों को केवल थोड़े समय के लिए बढ़ाता है ताकि इसका पालन करने वाले विशिष्ट आदेशों को निष्पादित किया जा सके।
सूडो सिंटैक्स
सूडो का सिंटैक्स (कमांड का प्रारूप) सरल है। बस "sudo" टाइप करें और उसके बाद वह कमांड लिखें जिसे आप निष्पादित करना चाहते हैं।
उदाहरण के लिए, "sudo apt-get update" प्रासंगिक में सूचीबद्ध सभी ऐप रिपॉजिटरी को अपडेट कर देगा। फ़ाइल। यदि आपने इसे सुडो के बिना चलाने का प्रयास किया है, तो आपको एक त्रुटि संदेश मिलेगा जो आपको बताएगा कि आपके पास अनुमति नहीं है। संयोग से, यह आम तौर पर पहला सुडो कमांड है जिसे आप अपने पसंदीदा लिनक्स डिस्ट्रो की ताजा स्थापना के बाद चलाना चाहते हैं।
सूडो में "सु"
सूडो में "सु" "सुपरयूसर" के लिए छोटा है और यह एक स्टैंडअलोन कमांड है। "सु" कमांड आपको यह बदलने देता है कि सूडो आपको किस उपयोगकर्ता के विशेषाधिकारों तक बढ़ाता है।
यद्यपि सुडो आपको अस्थायी रूप से रूट करने के लिए उन्नत करता है, सु आपको उपयुक्त विशेषाधिकारों के साथ किसी अन्य उपयोगकर्ता में बदल देता है। यह एक महत्वहीन अंतर की तरह लग सकता है, लेकिन उस खाते को बदलने के अच्छे कारण हैं जो sudo उपयोगकर्ता को ऊपर उठाता है।
सबसे पहले, खाता बदलने का मतलब है कि नियमित उपयोगकर्ता रूट पासवर्ड नहीं जानते हैं। दूसरा, सभी sudo कमांड का एक लॉग होता है, जिसका अर्थ है कि सिस्टम एडमिनिस्ट्रेटर (रूट) यह देख सकता है कि su कमांड किसने जारी किया है।
सु के लिए सिंटैक्स अनिवार्य रूप से sudo जैसा ही है:
Su USERNAME -c COMMAND
USERNAME को कमांड चलाने के लिए वांछित उपयोगकर्ता से बदलें और कमांड को उस Linux कमांड से बदलें जिसे आप निष्पादित करना चाहते हैं।
यदि आप एक अन्य उपयोगकर्ता के रूप में कई कमांड चलाना चाहते हैं, बस इसका उपयोग करें:
Su USER
USER को वांछित उपयोगकर्ता खाता पहचान से बदलें।
यदि आप स्वयं su का उपयोग करते हैं, तो Linux अन्य उपयोगकर्ता खाते में तब तक चला जाएगा जब तक आप "बाहर निकलें" कमांड का उपयोग नहीं करते हैं। यह याद रखना महत्वपूर्ण है या उस सत्र में टर्मिनल तक पहुंचने वाले अगले उपयोगकर्ता के पास अभी भी उन्नत अनुमतियां होंगी। यही कारण है कि आमतौर पर सु के बजाय सूडो का उपयोग करना बेहतर होता है।
सूडो समय सीमा
पहली बार जब आप सूडो कमांड का उपयोग करते हैं, तो आप पासवर्ड डालना होगा। फिर, वह पासवर्ड 15 मिनट के लिए वैध रहेगा। आप sudo visudoकमांड चलाकर और "timestamp_timeout=" को लंबे या छोटे मान में बदलकर इस डिफ़ॉल्ट को बदल सकते हैं। हालांकि, हम अनुशंसा नहीं करते हैं कि आप ऐसा तब तक करें जब तक आपके पास सूडो पासवर्ड के वैध रहने की अवधि को बढ़ाने या छोटा करने का कोई अच्छा कारण न हो।
Sudo Option स्विचेस
हालांकि sudo सिंटैक्स है सरल, कई स्विच के बारे में जानने लायक हैं। ये आदेश अतिरिक्त जानकारी खोलते हैं या सूडो सत्र को नियंत्रित करने में आपकी सहायता करते हैं:
सुडो में और भी कई विकल्प हैं, और आप उन सभी को ऊपर सूचीबद्ध पहले -h स्विच का उपयोग करके देख सकते हैं।
उपरोक्त स्क्रीनशॉट वह परिणाम है जो आप उपयोग करते हैं सहायता विकल्प।
उपयोगी सूडो कमांड
तो प्रत्येक लिनक्स उपयोगकर्ता को सूडो द्वारा सशक्त किन आदेशों को जानना चाहिए? हमने पहले ही sudo apt-get अपडेट को कवर कर लिया है, लेकिन इन पर भी ध्यान दें:
ये संभवत: पहले सूडो कमांड हैं जिनका आपको उपयोग करना होगा, लेकिन जैसा कि आपने ऊपर सीखा है, कोई भी कमांड सूडो का अनुसरण कर सकता है, लेकिन आपको केवल उन्हीं का उपयोग करना चाहिए जिन्हें इसके साथ उच्च विशेषाधिकार की आवश्यकता होती है।