लिनक्स सूडो कमांड के लिए 5 विंडोज़ विकल्प

यदि आपने कभी Linux का उपयोग किया है या किसी ऐसे व्यक्ति को जानते हैं जो Linux का उपयोग करता है, तो आपने शायद sudo कमांड के बारे में सुना होगा। कमांड लगभग हर लिनक्स(Linux) वितरण के लिए एक महत्वपूर्ण घटक है और यह जो करता है वह आपको एक अलग उपयोगकर्ता के रूप में कमांड चलाने देता है, विशेष रूप से रूट उपयोगकर्ता। कुछ लिनक्स वितरण पर, आप (Linux)su कमांड का उपयोग करके रूट उपयोगकर्ता के रूप में लॉग इन कर सकते हैं , लेकिन इसे अत्यधिक जोखिम भरा माना जाता है और कोई भी ऐसा कभी नहीं करता है।

वास्तव में, यह इतना खतरनाक है कि यह उबंटू जैसे (Ubuntu)लिनक्स(Linux) वितरण पर डिफ़ॉल्ट रूप से अक्षम है । इसके बजाय, यदि आप रूट उपयोगकर्ता के रूप में कमांड चलाना चाहते हैं तो आपको sudo कमांड का उपयोग करना होगा। (sudo)तो विंडोज(Windows) के बारे में क्या ? ठीक(Well) है, दुर्भाग्य से, अधिकांश लोग विंडोज़(Windows) में प्रशासक के रूप में लॉग इन हैं, जो कि (Administrators)लिनक्स(Linux) में रूट उपयोगकर्ता के समान है । हालाँकि, Microsoft ने (Microsoft)उपयोगकर्ता खाता नियंत्रण(User Account Control)  या UAC को सक्षम करके व्यवस्थापक के रूप में लॉग इन होने के खतरनाक प्रभावों को कम करने का प्रयास किया है ।

इस तरह, भले ही उपयोगकर्ता के पास प्रशासनिक विशेषाधिकार हों, उस खाते के अंतर्गत चल रहे एप्लिकेशन उन विशेषाधिकारों को इनहेरिट नहीं करेंगे जब तक कि यह उपयोगकर्ता द्वारा मैन्युअल रूप से अधिकृत न हो। यह मैलवेयर और स्पाइवेयर को एक व्यवस्थापक(Administrator) के रूप में लॉग इन विंडोज(Windows) उपयोगकर्ता को संक्रमित करने से रोकने में मदद करता है ।

तो जबकि लिनक्स(Linux) उपयोगकर्ताओं के पास sudo कमांड है, विंडोज(Windows) उपयोगकर्ता के पास क्या है? क्या(Are) ऐसे विकल्प हैं जिनका उपयोग विंडोज(Windows) उपयोगकर्ता उन्नत विशेषाधिकारों के साथ कमांड चलाने के लिए कर सकते हैं? क्या विंडोज़(Windows) के लिए कोई सुडो कमांड है ? इस लेख में, मैं विंडोज(Windows) उपयोगकर्ताओं के लिए sudo कमांड के पांच विकल्पों के बारे में बात करूंगा।

नोट: इनमें से कुछ उपकरण अब काफी पुराने हैं, इसलिए वे विंडोज के नवीनतम संस्करणों के साथ काम कर भी सकते हैं और नहीं भी। (Note: Some of these tools are quite old now, so they may or may not work with the latest versions of Windows. )

विंडोज रनस कमांड

विंडोज़ में रनस(runas) कमांड है, जो लिनक्स(Linux) पर सूडो का सीधा समकक्ष है । रनस कमांड का उपयोग करके, आप एक स्क्रिप्ट, प्रोग्राम या कमांड को एक अलग उपयोगकर्ता के रूप में या एक व्यवस्थापक के रूप में निष्पादित कर सकते हैं। रनस कमांड का पूरा सिंटैक्स है:

runas [{/profile|/noprofile}] [/env] [/netonly] [/smartcard] [/showtrustlevels] [/trustlevel] /user:UserAccountName program

यदि आप एक प्रशासनिक कमांड प्रॉम्प्ट खोलना चाहते हैं, तो आप निम्न टाइप कर सकते हैं:

runas /noprofile /user:Administrator cmd

रनस कमांड

/noprofile वर्तमान उपयोगकर्ता प्रोफ़ाइल लोड नहीं करेगा। आप इसे हटा सकते हैं यदि आपको उपयोगकर्ता पर्यावरण चर तक पहुंच की आवश्यकता है। यदि आप व्यवस्थापक विशेषाधिकारों के साथ नोटपैड(Notepad) का उपयोग करके एक टेक्स्ट फ़ाइल खोलना चाहते हैं , तो आप इस आदेश का उपयोग कर सकते हैं:

runas /user:Administrator "notepad my_file.txt"

इसका उपयोग करने के तरीके के बारे में अधिक जानकारी के लिए आप रनस पर टेक्नेट पेज(Technet page) चेकआउट कर सकते हैं।

ध्यान दें कि रनस कमांड का उपयोग करते समय, यदि आप कोई प्रोग्राम इंस्टॉल करते हैं या सेटिंग्स आदि में बदलाव करते हैं, तो उस उपयोगकर्ता खाते में परिवर्तन किए जाएंगे जिस पर आप कमांड चला रहे हैं। उदाहरण के लिए, मान लें कि आपके पास उपयोगकर्ता X है जो एक सामान्य उपयोगकर्ता है और उपयोगकर्ता Y, जो एक व्यवस्थापक है। यदि आप X में लॉग इन करते हैं और फिर एडमिनिस्ट्रेटर क्रेडेंशियल्स का उपयोग करते हुए रनस करते हैं, तो (Administrator)एडमिनिस्ट्रेटर(Administrator) की सेटिंग में बदलाव किए जाएंगे , यूजर X में नहीं।

इसलिए यदि आप EXE फ़ाइल पर राइट-क्लिक करके और (EXE)व्यवस्थापक(Administrator) के रूप में चलाएँ(Run) चुनकर कोई एप्लिकेशन इंस्टॉल करते हैं , तो यह अंतर्निहित व्यवस्थापक(Administrator) उपयोगकर्ता प्रोफ़ाइल में स्थापित हो जाएगा, न कि उस प्रोफ़ाइल में जिसे आपने लॉग इन किया है। यदि आप प्रोफ़ाइल मुद्दों के बिना सुडो जैसे सच्चे उन्नत विशेषाधिकार चाहते हैं, तो नीचे दिए गए अगले विकल्प को देखें।

विंडोज के लिए सूडो - सोर्सफोर्ज

विंडोज के लिए सूडो एक मुफ्त प्रोग्राम है जिसे आप इंस्टॉल कर सकते हैं जो आपको (Sudo for Windows)विंडोज(Windows) के लिए लिनक्स(Linux) पर सुडो कमांड का समान अनुभव देगा । अंतर केवल इतना है कि विंडोज(Windows) के लिए सूडो (Sudo)"उपयोगकर्ता की प्रोफ़ाइल और बनाई गई वस्तुओं के स्वामित्व को संरक्षित करता है"(“preserves the user’s profile and ownership of created objects”) जैसा कि डेवलपर ने कहा है। यह वास्तव में आसान है यदि आप ऐप्स इंस्टॉल करने या मेरे दस्तावेज़(My Documents) जैसे उपयोगकर्ता स्थानों में परिवर्तन करने के लिए उन्नत अनुमतियों का उपयोग करना पसंद करते हैं ।

यह आपको प्रशासनिक विशेषाधिकार देगा, लेकिन वर्तमान प्रोफ़ाइल में सभी परिवर्तनों को उस खाते के बजाय रखेगा जिसके साथ आप कमांड चलाने के लिए उपयोग कर रहे हैं। कार्यक्रम के लिए .NET संस्करण 2.0 की आवश्यकता है, जिसे आप व्यक्तिगत रूप से डाउनलोड नहीं कर सकते। 2.0 प्राप्त करने के लिए, आपको .NET Framework 3.5 स्थापित करना होगा , जिसमें 2.0 शामिल है।

एक बार जब आप विंडोज(Windows) के लिए सूडो(Sudo) स्थापित कर लेते हैं, तो आपको उन उपयोगकर्ता खातों को जोड़ने की आवश्यकता होती है, जिन्हें आप प्रोग्राम द्वारा बनाए गए एक विशिष्ट समूह के लिए उन्नत विशेषाधिकार प्राप्त करने की अनुमति देते हैं, जिसे S udoers कहा जाता है । My Computer या This PC पर राइट-क्लिक करें और मैनेज(Manage) पर क्लिक करें । फिर उपयोगकर्ता और समूह का विस्तार करें और (Users and Groups)समूह(Groups) पर क्लिक करें । आपको सूडोर्स(Sudoers) नामक एक देखना चाहिए ।

सूदौसर्स

Sudoers पर डबल-क्लिक करें और Add बटन पर क्लिक करें।

सदस्य जोड़ें

अगले डायलॉग पर, एडवांस्ड(Advanced) बटन पर क्लिक करें और फिर फाइंड नाउ(Find Now) पर क्लिक करें । यह सिस्टम पर सभी उपयोगकर्ताओं और समूहों को सूचीबद्ध करेगा। उस उपयोगकर्ता को डबल-क्लिक करें(Double-click) जिसे आप जोड़ना चाहते हैं।

उपयोगकर्ता को समूह में जोड़ें

जितने भी उपयोगकर्ता आप जोड़ना चाहते हैं, उनके लिए इस चरण को दोहराएं। फिर ठीक क्लिक करें और आपको ऊपर दिखाए गए सदस्य(Members) सूची बॉक्स में सूचीबद्ध सदस्यों को देखना चाहिए । ओके पर क्लिक करें और अब आप सुडो (Click OK)जीयूआई(GUI) और कमांड का उपयोग करने में सक्षम होना चाहिए । यदि आप किसी प्रोग्राम पर राइट-क्लिक करते हैं, तो आपको सूडो(Sudo) विकल्प दिखाई देगा।

सुडो राइट क्लिक

आप एक कमांड प्रॉम्प्ट भी खोल सकते हैं और उन्नत अनुमतियों के साथ कमांड चलाने के लिए sudo टाइप कर सकते हैं।

सुडो कमांड प्रॉम्प्ट

कुल मिलाकर, यह बहुत अच्छा है और बहुत अच्छा काम करता है। हालांकि, ध्यान दें कि यह विशेष प्रोग्राम प्रोग्राम या प्रक्रियाओं को राइट-क्लिक या कमांड प्रॉम्प्ट के माध्यम से लॉन्च करने के लिए वास्तव में उपयोगी है, लेकिन यह कमांड लाइन ऐप्स चलाने के लिए नहीं है। (launching)उदाहरण के लिए, यदि आप sudo mkdir “c:Program Files ew” करना चाहते हैं, तो यह Windows के लिए Sudo का उपयोग करके काम नहीं करेगा । उस कार्यक्षमता के लिए, एक ही चीज़ नामक एक और प्रोग्राम है, लेकिन एक अलग डेवलपर द्वारा। नीचे पढ़ें(Read)

विंडोज के लिए सूडो - ल्यूक सैम्पसन

एक और डेवलपर है जिसने विंडोज़ के लिए एक और सूडो(Sudo for Windows) लिखा है जो आपको कमांड लाइन ऐप्स भी निष्पादित करने देता है। तो चलिए C:Program Files में एक नया फोल्डर बनाने के उदाहरण पर वापस जाते हैं। आप वास्तव में डिफ़ॉल्ट रूप से ऐसा नहीं कर सकते।

पॉवरशेल mkdir

ऊपर मैं PowerShell का उपयोग कर रहा हूं , लेकिन आपको कमांड प्रॉम्प्ट का उपयोग करके भी वही त्रुटि मिलेगी। हालाँकि, एक बार जब आप विंडोज(Windows) के लिए सुडो स्थापित कर लेते हैं, तो बस सूडो(Sudo) शब्द को कमांड के सामने जोड़ें और यह बिना किसी त्रुटि के पूरी तरह से काम करता है!

इसे स्थापित करने के लिए, आपको पावरशेल(PowerShell) खोलना होगा और फिर क्रम में निम्नलिखित कमांड टाइप करना होगा:

iex (new-object net.webclient).downloadstring('https://get.scoop.sh')

set-executionpolicy unrestricted -s cu -f

scoop install sudo

यदि सब कुछ ठीक काम करता है, तो आपको प्रत्येक आदेश के बाद PowerShell में निम्न आउटपुट देखना चाहिए :

स्कूप सुडो स्थापित करें

इतना ही! अब आप कमांड टाइप करना शुरू कर सकते हैं और सामने sudo जोड़ सकते हैं। इस कार्यक्रम के बारे में एकमात्र कष्टप्रद बात यह है कि यूएसी(UAC) विंडो अभी भी पॉप अप होती है और आपने इसे काम करने के लिए हाँ(Yes) पर क्लिक किया है। थोड़ी सी भी झुंझलाहट के साथ, लाभ इसके लायक है।

तरक्की

एलिवेट(Elevate) एक ऐसा प्रोग्राम है जो यूएसी(UAC) के साथ काम करता है और बिल्कुल सूडो की तरह काम नहीं करता है। एलिवेट(Elevate) के साथ , यह निष्पादन उपयोगकर्ता को प्रशासक(Administrator) में बदल देगा जैसे रनस कमांड करता है। हालाँकि, यह कमांड लाइन में या बैच फ़ाइलों के साथ काम करने के लिए उपयोगी है।

तरक्की

एलिवेट का मुख्य उद्देश्य यूएसी(UAC) के आसपास जाना नहीं है , बल्कि एक गैर-एलिवेटेड शेल से एक एलिवेटेड अवस्था में एक प्रक्रिया शुरू करना और फिर कमांड पूरा होने के बाद भी सामान्य रूप से जारी रखना है। एलिवेट(Elevate) स्क्रिप्टिंग के लिए उपयोगी है क्योंकि आपको संपूर्ण राइट-क्लिक को स्क्रिप्ट करने और प्रशासक(Administrator) प्रक्रिया के रूप में कमांड प्रॉम्प्ट चलाने के बारे में चिंता करने की आवश्यकता नहीं है।

विंडोज के लिए एलिवेशन पॉवरटॉयज

आप में से जो कमांड लाइन पर बहुत काम करते हैं या स्क्रिप्ट और बैच फाइलों के साथ काम करते हैं, तो विंडोज पेज के लिए एलिवेशन पॉवरटॉयज(Elevation PowerToys for Windows) में कुछ उपयोगी टूल और स्क्रिप्ट हैं।

ऊंचाई पावरटॉयज

स्क्रिप्ट एलिवेशन पावर टॉयज (script elevation power toys)UAC के निराशाजनक पहलुओं को दूर करने के लिए बनाए गए थे जब कमांड लाइन से प्रोग्राम को ऊपर उठाने या स्क्रिप्ट को प्रशासक के रूप में चलाने का प्रयास किया जाता था।

उम्मीद है(Hopefully) , आपके लिए यह महसूस करने के लिए पर्याप्त टूल और प्रोग्राम हैं कि आप वास्तव में विंडोज़(Windows) पर sudo का उपयोग कर रहे हैं । इसके लिए कोई पूर्ण प्रतिस्थापन नहीं है, लेकिन कुछ विकल्प हैं जो करीब आते हैं। यदि आप विंडोज़(Windows) में प्रोग्राम, कमांड या स्क्रिप्ट को उन्नत करने के लिए कुछ और उपयोग करते हैं , तो हमें टिप्पणियों में बताएं। आनंद लेना!



About the author

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



Related posts