क्या सूदो और गक्सू के बीच अंतर सूदो -आई और सूदो-एस के बीच का अंतर है?


26

के बीच अंतर है sudo cmdऔर gksu cmd, अंतर के रूप में एक ही
साथ एक खोल शुरू करने के बीच sudo -iऔर sudo -s?

... या एक और तरीका है,
के sudo cmd रूप में sudo -i cmd
और gksu cmdके रूप में ही है sudo -s cmd?

संपादित करें: मैं उबंटू दस्तावेज़ीकरण पृष्ठ पर जो कुछ भी पढ़ता हूं, उसके आधार पर यह कहता है:

You should never use normal sudo to start graphical applications as root.  
You should use gksudo (kdesudo on Kubuntu) to run such programs. gksudo sets  
HOME=~root, and copies .Xauthority to a tmp directory. This prevents files  
in your home directory becoming owned by root.  
(AFAICT, this is all that's special about the environment of the started   
 process with gksudo vs. sudo).

"AFAICT" वास्तव में मुझे पूरा भरोसा कुछ भी नहीं करने के लिए अधिक है कि वहाँ दे doen't।


(.. एक दावा किया गया अद्यतन : मैंने आज (2 महीने बाद) के बारे में उनके स्मारक का परीक्षण किया:
"यह आपके घर निर्देशिका में फ़ाइलों को रूट के स्वामित्व में आने से रोकता है।"
सुडो / gksu के माध्यम से बनाई गई सभी फाइलें " रूट ", और सभी के स्वामित्व में थीं। समूह " मूल " था।)


मैं के कुछ हिस्सों को पढ़ा है info sudoऔर देखा है -iऔर -s लगता है कि AFAICT पर्यावरण के मुद्दे के रूप में एक ही काम कर
रहा है ... लेकिन मैंने ओवरलोड मारा .. तो मैंने यहां अपना प्रश्न पूछा है।

PS .. मेरा सवाल sudo vs gksu के बारे में नहीं है
। यह अधिक है: क्या gksu sudo -s जैसा ही है
.. और यदि नहीं, तो वे कैसे भिन्न हैं?

जवाबों:


16

gksuमूल रूप से सुडो के लिए एक ग्राफिकल फ्रंटेंड है जो एक्स टर्मिनल एमुलेटर चलाने और सीधे एसयू का उपयोग करने की आवश्यकता के बिना ग्राफिकल कमांड को चलाने की अनुमति देता है। यह सुपरयुसर कमांड के लिए प्रभावी रूप से सिर्फ एक GTK + त्वचा है।

इसलिए यदि आप GUI आधारित प्रोग्राम को रूट के रूप में चलाना चाहते हैं, तो आप इसे कंसोल प्रोग्राम को रूट के रूप में उपयोग करने के gksu cmdबजाय, इसके साथ sudo cmdलागू करेंगे।


1
मुझे नहीं पता है कि आप एक graphicalदृश्यपटल से क्या मतलब हो सकता है ... एक GTK ऐप काफी खुशी से चलता है चाहे वह sudo या gksu के माध्यम से शुरू किया गया हो ... लेकिन यह एक अलग वातावरण में progam को चलाता है ... (I) मेरे सवाल में कुछ और जोड़ दूंगा कि मैंने यह सवाल क्यों पूछा है ...
पीटर।

2
मैं अंत में समझ गया हूं कि आपका क्या मतलब है graphical frontend। मैं हमेशा sudo / gksu को चलाने के लिए टर्मिनल का उपयोग करता हूं ... लेकिन जानवर-बल की भावना में मैं जो कुछ भी सोच सकता था, वह कोशिश कर रहा था, मैंने चलाने की कोशिश की sudoऔर gksuAlt + F2 के माध्यम से ... बिंगो! .. sudoशून्य में गायब हो गया, लेकिन gksuइस अवसर पर पहुंच गया और मुझे (पौराणिक) के साथ प्रस्तुत किया graphical forntend... यह उसी तरह का संवाद है, जो सिनैप्टिक पैकेज मैनेजर आदि के लिए प्रकट होता है ...
पीटर.ओ.

PS .. मैंने अभी-अभी एक नए टर्मिनल में gksu की कोशिश की है। पासवर्ड डायलॉग वहाँ भी पॉप होता है ... मैंने इसे पहले भी देखा होगा लेकिन पासवर्ड (केवल) से जुड़ा हुआ है, और इस तथ्य से नहीं कि यह GUI डायलॉग था एक टर्मिनल कमांड ... ("मैं देखता हूं"। अंधे आदमी ने कहा :) ... धन्यवाद ...
पीटर।

। आपके उत्तर पर आगे बढ़ते हुए, ऐसा लगता है कि यह gksuXAUTHORITY फ़ोल्डर को बदल देता है, और sudoऐसा नहीं करता है ... मुझे यकीन नहीं है कि यह सब क्या है, लेकिन यह महत्वपूर्ण लगता है! ... इससे मेरी दुविधा हल हो गई है ... (नीचे मेरे उत्तर में विवरण)
पीटर

10

sudo -iलक्ष्य उपयोगकर्ता के लिए लॉगिन वातावरण रीसेट करता है ( मूल , इस मामले में)। मुख्य रूप से, यह है कि HOMEपर्यावरण चर को बदल दिया जाता है, जिसका अर्थ है कि लक्ष्य उपयोगकर्ता ~/.bashrcलोड किया गया है।

gksuइसलिए, जैसे sudo -iकि रूट उपयोगकर्ता के $HOMEलिए स्विच है ।


धन्यवाद केसी .. यह मेरे लिए (धीमी, धीरे) समझदारी शुरू कर रहा है ... लेकिन यह स्पष्ट लगता है कि गक्सु, XAUTHORITY की एक प्रति बनाकर, और (?) से काम करते हुए, गक्सु को एक श्रेणी में डाल देता है, जो काफी अलग रूप में है। किसी भी sudoवेरिएंट का, जिसका मैंने उल्लेख किया है ... और यह एहसास अह का रहा है! मेरे लिए क्षण ... अपशॉट है: GUI ऐप्स के लिए gksu का उपयोग करें! .. लेकिन मैं एक और अनसुलझे प्रश्न के साथ छोड़ दिया गया हूं ... क्या जीकेयू केवल जीटीके ऐप पर लागू होता है , या केडीई जीयूआई ऐप चलाते समय जीकेएसयू का उपयोग करना पूरी तरह से ठीक है ?
पीटर

5

यह वास्तव में एक उत्तर नहीं है, लेकिन यह कुछ रुचि का हो सकता है ...
मुझे इन सू कमांडों के साथ क्या हो
रहा है , इसका अंदाजा लगने लगा है, लेकिन मैं अभी तक वहां नहीं हूं ... मैं इसका उपयोग नहीं करता gksu। .. यह और अधिक मेरे लिए समझने का एक यात्रा है ... और मुझे समझने के लिए करता है, तो wan't gksuके लिए मान्य है konsoleया kate, या चाहिए मैं केडीई भिन्न रूप का उपयोग kdesu..

यहाँ कुछ परीक्षणों के कुछ परिणाम दिए गए हैं जिन्हें मैंने अभी आज़माया है।

From user fred's terminal, launch gnome-terminal

su style   resulting            custom   (ls)   new file
command    prompt               prompt   home   ownership
---------  -------------------- -------  -----  ----------
sudo      .root@DT:~#           fred's   fred   root
gksu       root@DT:/home/fred#  root's   fred   root
sudo -i    root@DT:~#           root's   root   root
sudo -s   .root@DT:~#           fred's   fred   root

ये परिणाम उबंटू प्रलेखन पृष्ठ से सहमत नहीं हैं , जहाँ यह कहता है:

 This prevents files in your home directory becoming owned by root

अद्यतन: XAUTHORITY envके लिए चर sudo और gksu लागू टर्मिनल अलग (के रूप में पर उल्लेख कर रहे हैं उबंटू दस्तावेज़ीकरण पृष्ठ ) ..

sudo    #### XAUTHORITY=/var/run/gdm/auth-for-fred-RsngLK/database
sudo -i #### XAUTHORITY=/var/run/gdm/auth-for-fred-RsngLK/database
sudo -s #### XAUTHORITY=/var/run/gdm/auth-for-fred-RsngLK/database
gksu    #### XAUTHORITY=/tmp/libgksu-xR2OGn/.Xauthority   

इससे पता चलता है कि gksuनिश्चित रूप से उस sudo -sकमांड के समान नहीं है जिसे मैंने प्रश्न में संदर्भित किया था ... और इसलिए मेरे ओटिजिनल प्रश्न (कुछ अभी भी अस्पष्ट तरीके से) का समर्थन करता है ... और क्रिस का जवाब निश्चित रूप से मुझे इस पर बहुत सोच समझ कर मिला! ... मुझे कॉफी की जरूरत है!!


3

sudo कमांड लाइन ऐप्स, gksu / gksudo के लिए ग्राफिकल वाले के लिए है


धन्यवाद, मेरा प्रश्न इस मुद्दे की मेरी मूल समझ के रूप में अस्पष्ट हो सकता है ... मैं मुख्य रूप से यह पता लगाने की कोशिश कर रहा था कि विशिष्ट अंतर क्या था जिससे दोनों कमांड होना आवश्यक था .. ऐसा लगता है कि मुख्य अंतर है। जिस तरह gksuसे XAUTHORITY की एक अस्थायी कॉपी से काम होता है .. मैं इस बात पर स्पष्ट नहीं हूं कि XAUTHORITY को विशेष रूप से संभालने की आवश्यकता क्यों है, लेकिन एक प्रमुख बात है जो इसके व्यवहार को अलग करती हैsudo
पीटर।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.