जवाबों:
मुख्य दो कमांडलाइन संभावनाएं हैं:
su
जब संकेत दिया रूट पासवर्ड का उपयोग करें और दर्ज करें ।sudo
कमांड के सामने रखें , और संकेत मिलने पर अपना पासवर्ड डालें।यह उबंटू, लिनक्स टकसाल, (यकीनन) डेबियन, और अन्य सहित अधिकांश प्रणालियों पर पसंदीदा तरीका है। यदि आप एक अलग रूट पासवर्ड नहीं जानते हैं, तो इस विधि का उपयोग करें।
सूडो के लिए आवश्यक है कि आप अपना पासवर्ड टाइप करें। (यदि आप अपने कीबोर्ड को अनअटेंडेड और अनलॉक कर छोड़ते हैं, तो क्षति को सीमित करना उद्देश्य है, और यह भी सुनिश्चित करना है कि आप वास्तव में उस कमांड को चलाना चाहते हैं और यह उदाहरण के लिए टाइपो नहीं था।) यह अक्सर कुछ के लिए फिर से नहीं पूछने के लिए कॉन्फ़िगर किया गया है। मिनट ताकि आप sudo
उत्तराधिकार में कई कमांड चला सकें ।
उदाहरण:
sudo service apache restart
यदि आपको रूट के रूप में कई कमांड चलाने की आवश्यकता है, तो उनमें से प्रत्येक के साथ उपसर्ग करें sudo
। कभी-कभी, रूट के रूप में एक इंटरैक्टिव शेल चलाने के लिए यह अधिक सुविधाजनक है। आप इसके लिए उपयोग कर सकते हैं sudo -i
:
$ sudo -i
# command 1
# command 2
...
# exit
इसके बजाय sudo -i
, आप उपयोग कर सकते हैं sudo -s
। अंतर यह है कि है -i
फिर मैं समझदार चूक के लिए पर्यावरण nitializes, जबकि -s
बेहतर करने के लिए या बदतर के लिए अपने विन्यास फाइल का उपयोग करता है।
अधिक जानकारी के लिए, sudo वेबसाइट देखें , या man sudo
अपने सिस्टम पर टाइप करें। सूडो बहुत विन्यास है; उदाहरण के लिए इसे एक निश्चित उपयोगकर्ता को केवल कुछ कमांड को रूट के रूप में निष्पादित करने के लिए कॉन्फ़िगर किया जा सकता है। अधिक जानकारी के लिए sudoers
मैन पेज पढ़ें ; sudo visudo
sudoers फ़ाइल को संपादित करने के लिए उपयोग करें।
su
आदेश सबसे यूनिक्स सिस्टम पर मौजूद है। यह आपको एक अन्य उपयोगकर्ता के रूप में एक कमांड चलाने देता है, बशर्ते आप उस उपयोगकर्ता का पासवर्ड जानते हों। जब कोई उपयोगकर्ता निर्दिष्ट नहीं किया जाता है, su
तो रूट खाते में डिफ़ॉल्ट होगा।
उदाहरण:
su -c 'service apache restart'
चलाने के लिए आदेश -c
विकल्प का उपयोग कर पारित किया जाना चाहिए । ध्यान दें कि आपको उद्धरण चिह्नों की आवश्यकता है ताकि कमांड आपके शेल द्वारा पार्स न हो, लेकिन जो रूट शेल su
चलाता है , उसके पास बरकरार रहे ।
रूट के रूप में कई कमांड चलाने के लिए, इंटरेक्टिव शेल शुरू करना अधिक सुविधाजनक है।
$ su
# command 1
# command 2
...
# exit
कुछ प्रणालियों पर, आपको उपयोग करने के लिए समूह संख्या 0 (बुलाया wheel
) में होना चाहिए su
। (बिंदु नुकसान को सीमित करने के लिए है यदि रूट पासवर्ड गलती से किसी को लीक हो गया है।)
यदि कोई रूट पासवर्ड सेट है और आप उसके कब्जे में हैं, तो आप बस root
लॉगिन प्रॉम्प्ट पर टाइप कर सकते हैं और रूट पासवर्ड दर्ज कर सकते हैं। बहुत सावधान रहें, और जटिल अनुप्रयोगों को जड़ के रूप में चलाने से बचें क्योंकि वे ऐसा कुछ कर सकते हैं जो आपने इरादा नहीं किया था। सीधे रूट के रूप में लॉग इन करना मुख्य रूप से आपातकालीन स्थितियों में उपयोगी है, जैसे कि डिस्क विफलता या जब आपने अपने खाते से खुद को लॉक कर लिया हो।
एकल उपयोगकर्ता मोड, या रन-लेवल 1, आपको रूट विशेषाधिकार भी देता है। यह मुख्य रूप से आपातकालीन रखरखाव स्थितियों के लिए है जहां बहु-उपयोगकर्ता रन-स्तर में बूटिंग संभव नहीं है। आप पास single
या emergency
कर्नेल कमांड लाइन पर एकल उपयोगकर्ता मोड में बूट कर सकते हैं । ध्यान दें कि एकल-उपयोगकर्ता मोड में बूटिंग सिस्टम को सामान्य रूप से बूट करने और रूट के रूप में लॉग करने के समान नहीं है। बल्कि, सिस्टम केवल रन-लेवल के लिए परिभाषित सेवाओं को शुरू करेगा। आमतौर पर, यह प्रयोग करने योग्य प्रणाली के लिए आवश्यक सेवाओं की सबसे छोटी संख्या है।
आप टेलिनिट कमांड का उपयोग करके एकल उपयोगकर्ता मोड में भी प्राप्त कर सकते हैं telinit 1
:; हालाँकि, इस आदेश को चलाने के लिए आपको पहले से ही किसी अन्य विधि के माध्यम से रूट विशेषाधिकार प्राप्त करने की आवश्यकता है।
कई प्रणालियों में एकल उपयोगकर्ता मोड में बूट करने पर उपयोगकर्ता को पासवर्ड के लिए संकेत दिए बिना रूट शेल तक पहुंच प्राप्त होगी। विशेष रूप से, systemd
-बेड सिस्टम आपको रूट पासवर्ड के लिए संकेत देगा जब आप इस तरह से बूट करेंगे।
यदि आप अधिकृत हैं, तो Calife आपको अपना पासवर्ड टाइप करके दूसरे उपयोगकर्ता के रूप में कमांड चलाने देता है। यह बहुत अधिक व्यापक सूडो (ऊपर देखें) के समान है। Calife sudo की तुलना में अधिक हल्के वजन की है, लेकिन कम विन्यास योग्य भी है।
Op आपको रूट सहित अन्य उपयोगकर्ता के रूप में कमांड चलाने देता है। यह मनमाना आदेशों को चलाने के लिए एक पूर्ण विकसित उपकरण नहीं है: आप एक विशिष्ट कमांड को चलाने के लिए सिस्टम प्रशासक द्वारा कॉन्फ़िगर किए गए mnemonicop
द्वारा पीछा करते हैं।
सुपर आपको रूट सहित अन्य उपयोगकर्ता के रूप में कमांड चलाने देता है। सिस्टम व्यवस्थापक द्वारा कमांड को अनुमति दी जानी चाहिए।
विकिपीडिया भी देखें ।
बस कमांड के साथ अपने वांछित कमांड को उपसर्ग करें pkexec
। ध्यान रखें कि जबकि यह ज्यादातर मामलों में काम करता है, यह सार्वभौमिक रूप से काम नहीं करता है।
man pkexec
अधिक जानकारी के लिए देखें ।
kdesu
और क्रमशः kdesudo
ग्राफिकल फ्रंट- su
एंड sudo
हैं। वे आपको बिना किसी परेशानी के रूट के रूप में एक्स विंडो प्रोग्राम चलाने की अनुमति देते हैं। वे केडीई का हिस्सा हैं । प्रकार
kdesu -c 'command --option argument'
और रूट पासवर्ड, या टाइप करें
kdesudo -c 'command --option argument'
और अपना पासवर्ड दर्ज करें (यदि चलाने के लिए अधिकृत है sudo
)। यदि आप KdeSu में "पासवर्ड रखें" विकल्प की जांच करते हैं, तो आपको लॉगिन सत्र के अनुसार केवल रूट पासवर्ड टाइप करना होगा।
Ktsuss ("सु सरल रखो, बेवकूफ") सु का एक चित्रमय संस्करण है।
BeesuBeesu सु आदेश है कि रेड हैट-आधारित ऑपरेटिंग सिस्टम में Gksu की जगह है करने के लिए एक ग्राफिकल सामने के अंत है। यह मुख्य रूप से आरएचईएल और फेडोरा के लिए विकसित किया गया है।
gksu
तथा gksudo
gksu
और क्रमशः gksudo
ग्राफिकल फ्रंट- su
एंड sudo
हैं। वे आपको बिना किसी परेशानी के रूट के रूप में एक्स विंडो प्रोग्राम चलाने की अनुमति देते हैं। वे सूक्ति का हिस्सा हैं । प्रकार
gksu command --option argument
और रूट पासवर्ड, या टाइप करें
gksudo command --option argument
और अपना पासवर्ड दर्ज करें (यदि चलाने के लिए अधिकृत है sudo
)।
gksu
और gksudo
अप्रचलित हैं। उन्हें गनोम में पॉलिसीकीट द्वारा बदल दिया गया है, और कई वितरण (जैसे उबंटू) अब डिफ़ॉल्ट रूप से उन्हें स्थापित नहीं करते हैं। आपको उन्हें उपलब्ध होने या ठीक से काम करने पर निर्भर नहीं होना चाहिए।
"शेल सेक्शन को रूट सेक्शन के रूप में चलाने" में से किसी एक विधि का उपयोग करें। आपको यह सुनिश्चित करने की आवश्यकता होगी कि रूट करने के लिए संक्रमण के दौरान न तो DISPLAY
पर्यावरण चर और न ही XAUTHORITY
वातावरण रीसेट हो। इसके लिए उन तरीकों के अतिरिक्त कॉन्फ़िगरेशन की आवश्यकता हो सकती है जो इस प्रश्न के दायरे से बाहर हैं।
कुल मिलाकर, यह एक बुरा विचार है, क्योंकि ज्यादातर ग्राफ़िकल एप्लिकेशन कॉन्फ़िगरेशन फ़ाइलों को रूट के रूप में पढ़ेंगे और लिखेंगे, और जब आप उन एप्लिकेशन को फिर से अपने सामान्य उपयोगकर्ता के रूप में उपयोग करने का प्रयास करते हैं, तो उन अनुप्रयोगों को अपने स्वयं के कॉन्फ़िगरेशन को पढ़ने की अनुमति नहीं होगी।
sudo
केवल तभी काम करेगा यदि (1) यह स्थापित है और (2) यदि आपका उपयोग sudoers फ़ाइल में है और इसने ऑपरेशन करने की अनुमति दी है।
pkexec
बदल रहा है। gksu
gksudo
उपयोग करें su
:
$ su -c command
या
$ su
# command
# exit
किसी भी स्थिति में, आपको root
पासवर्ड के लिए संकेत दिया जाएगा । अधिक जानकारी के लिए, मैनुअल पेज देखें ।
चूंकि प्रश्न लिनक्स विशिष्ट नहीं था, यहां आप सोलारिस 9+ (या ट्रस्टेड सोलारिस 8) में समान लक्ष्य कैसे प्राप्त करते हैं:
सोलारिस, संस्करण 9 के बाद से, आरबीएसी या रोल बेस्ड एक्सेस कंट्रोल के रूप में संदर्भित उपकरणों का एक सूट शामिल है।
RBAC का अभिप्राय यह है कि उपयोगकर्ताओं और / या भूमिका को प्राधिकरणों और अधिकारों के अनुदान के माध्यम से, या उपयोगकर्ताओं को रोल्स प्रदान करने के माध्यम से, आप अविश्वसनीय रूप से ठीक दाने वाले मॉडल बना सकते हैं जो कौन से विशेषाधिकार के साथ चला सकते हैं।
अनिवार्य रूप से, आप / etc / सुरक्षा / Andor_attr में प्राधिकरण की पहचान करते हैं, फिर उन्हें उपयोगकर्ताओं को / etc / user_rr में भूमिका या अनुदान देते हैं।
आप प्रोफ़ाइल को / etc / सुरक्षा / prof_attr में परिभाषित करते हैं। फिर आप उन प्रोफाइल के साथ / etc / security / exec_attr को जोड़ते हैं, उसके बाद उन प्रोफाइल को / etc / user_attr फ़ाइल में उपयोगकर्ताओं को असाइन करते हैं।
एक बार जब वे चीजें हो जाती हैं, तो आप वास्तव pfexec <command>
में कमांड को विशेषाधिकार प्राप्त या प्राधिकरण के साथ निष्पादित करने के लिए चलाते हैं जो उस कमांड के लिए उस उपयोगकर्ता को दिए जाते हैं ।
RBAC के बारे में अच्छी बात यह है कि केवल उपयोगकर्ता या कमांड के संयोजन के लिए कोई अतिरिक्त विशेषाधिकार स्वयं या उपयोगकर्ता को दिए गए आदेश नहीं हैं। तो यह बाइनरी + एस बनाने से ज्यादा सुरक्षित है, या केवल एक उपयोगकर्ता को कुछ भी निष्पादित करने में सक्षम होने के लिए सुडो का उपयोग करना। (मुझे पता है कि आप सूडो को बंद कर सकते हैं, लेकिन मेरे अनुभव में ज्यादातर लोग नहीं करते हैं)
RBAC का एक और फायदा यह है कि आप रूट को एक खाता बना सकते हैं, और उस भूमिका को उन उपयोगकर्ताओं को सौंप सकते हैं जो 'su' कमांड और रूट पासवर्ड के साथ रूट बनने में सक्षम हैं। रूट उपयोगकर्ता एकल उपयोगकर्ता मोड में लॉग इन करने में भी सक्षम होगा, जो लिनक्स मॉडल की तुलना में बेहतर (मेरी राय में) है जहां आप रूट पासवर्ड को अक्षम कर सकते हैं passwd -d root
, या रूट खाते को लॉक कर सकते हैं passwd -l root
, दोनों ही रूट में लॉगिंग को काफी बनाते हैं। कठिन जब कुछ गलत हो जाता है।
बेन रॉकवुड का RBAC पर एक महान ब्लॉग पोस्ट है जिसे RBAC on (Open) Solaris का उपयोग करके पढ़ा जा सकता है ।
या आप कुछ कमांड्स को एक महाशक्ति दे सकते हैं। मैं विशेष अनुमतियों के बारे में बात कर रहा हूं जिसमें स्वामी की अनुमति के साथ आदेश निष्पादित किए जाते हैं।
उस पथ के #which <command>
लिए SUID या SGID द्वारा कमांड का पथ प्राप्त करें और सेट करें।
PS - SUID और SGID बिट्स को सावधानी के साथ दिया जाना चाहिए। वे आपके सिस्टम को असुरक्षित बना सकते हैं।