GUI अनुप्रयोगों पर sudo का उपयोग करना


10

जब मैं कुबंटू का उपयोग कर रहा था, तो मैं हमेशा sudo kateउदाहरण के लिए , सूडो के साथ एक्स एप्लिकेशन खोल सकता था । अब जब मैंने उस आर्क पर स्विच कर लिया है जो काम नहीं करता है। मुझे पता है कि मुझे हमेशा kdesu का उपयोग करने के लिए कहा गया है, लेकिन kubuntu में ऐसी कौन सी सेटिंग है जो मुझे X ऐप्स पर sudo का उपयोग करने देती है जो मुझे आर्क पर करने से रोकती है?

संपादित करें :
क्षमा करें, मैंने खुद से वही किया है जिससे मैं बहुत नफरत करता हूं> _ <

यही मैं करने की कोशिश कर रहा हूँ:

[falmarri @ falmarri-z-arch डाउनलोड] $ sudo केट
कुंजिका: 
कोई प्रोटोकॉल निर्दिष्ट नहीं है
kate: X सर्वर से कनेक्ट नहीं हो सकता: 0.0

ध्यान दें कि यह केवल एक नियमित टर्मिनल सत्र है जो कॉनसोल का उपयोग कर रहा है, मैं एसएसएच का उपयोग नहीं कर रहा हूं

/ etc / sudoers :

## sudoers फ़ाइल।
##
## इस फ़ाइल को रूट के रूप में 'visudo' कमांड के साथ संपादित किया जाना चाहिए।
## 'विडोको' का उपयोग करने में विफलता के परिणामस्वरूप सिंटैक्स या फ़ाइल अनुमति त्रुटियां हो सकती हैं
## जो सूडो को चलने से रोकते हैं।
##
## sudoers फ़ाइल लिखने के तरीके के विवरण के लिए sudoers मैन पेज देखें।
##

##
## मेजबान उपनाम विनिर्देश
##
## मशीनों के समूह। इनमें होस्ट नाम (वैकल्पिक रूप से वाइल्डकार्ड) शामिल हो सकते हैं,
## आईपी पते, नेटवर्क नंबर या नेटग्रुप।
# Host_Alias ​​WEBSERVERS = www1, www2, www3

##
## उपयोगकर्ता उपनाम अन्य विनिर्देश
##
## उपयोगकर्ताओं के समूह। इनमें उपयोगकर्ता नाम, uids, यूनिक्स समूह शामिल हो सकते हैं,
## या नेटग्रुप्स।
# उपयोगकर्ता_आलिस ADMINS = मिलर्ट, डाउडी, माइकफ

##
## Cmnd उर्फ ​​विनिर्देशन
##
## आदेशों के समूह। अक्सर संबंधित आदेशों को एक साथ करने के लिए उपयोग किया जाता है।                                                               
# Cmnd_Alias ​​प्रक्रियाओं = / usr / बिन / अच्छा, / बिन / मार, / usr / बिन / त्याग, \                                                             
# / usr / bin / pkill, / usr / bin / top                                                                             

##                                                                                                                                   
## Defaults विनिर्देश                                                                                                            
##                                                                                                                                   
## आप निम्न में से कुछ पर्यावरण चर रखना चाह सकते हैं                                                                  
## sudo के माध्यम से कमांड चलाते समय।                                                                                                   
##                                                                                                                                   
## लोकेल सेटिंग                                                                                                                   
# डिफ़ाल्ट्स env_keep + = "लैंग लैंग्वेज LINGUAS LC_ * _XKB_CHARETET"                                                                     
##                                                                                                                                   
## sudo के माध्यम से एक्स एप्लिकेशन चलाएं; घर का उपयोग खोजने के लिए किया जाता है                                                                         
## .Xauthority फ़ाइल। ध्यान दें कि अन्य प्रोग्राम खोजने के लिए गृह का उपयोग करते हैं                                                                      
## कॉन्फ़िगरेशन फ़ाइलें और इससे विशेषाधिकार वृद्धि हो सकती है!                                                                    
 डिफ़ाल्ट्स env_keep + = "HOME"                                                                                                         
##                                                                                                                                   
## X11 संसाधन पथ सेटिंग्स                                                                                                        
 डिफ़ाल्ट्स env_keep + = "XAPPLRESDIR XFILESEARCHPATH XUSERFILESEARCHPATH"                                                              
##                                                                                                                                   
## डेस्कटॉप पथ सेटिंग्स                                                                                                             
 डिफॉल्ट्स env_keep + = "क्यूटीडीआर केडिरिर"                                                                                                 
##                                                                                                                                   
## कॉलर-कंसोल कंसोल को इनहेरिट करने के लिए सुडो-रन कमांड की अनुमति दें
# डिफॉल्ट्स env_keep + = "XDG_SESSION_COOKIE"
##
विशेष इनपुट विधियों को सक्षम करने के लिए ## Uncomment। देखभाल के रूप में लिया जाना चाहिए
## इससे उपयोगकर्ता sudo के माध्यम से चलाई जा रही कमांड को हटा सकते हैं।
 डिफ़ॉल्ट्स env_keep + = "XMODIFIERS GTK_IM_MODULE QT_IM_MODULE QT_IM_SWITCHER"
##
## कमांड के आउटपुट को लॉग करने में सक्षम करने के लिए, इसके अलावा
## सुडौल और रिबूट। लॉग सत्रों को वापस चलाने के लिए sudoreplay का उपयोग करें।
# डिफ़ॉल्ट log_output
# चूक! / Usr / bin / sudoreplay! Log_output
# चूक! / Usr / स्थानीय / बिन / sudoreplay! Log_output
# चूक! / Sbin / रिबूट! Log_output

##
## रनस उर्फ ​​विनिर्देश
##


चूक: फलमरी टाइमस्टैम्प_टाइम = 10

##
## उपयोगकर्ता विशेषाधिकार विनिर्देश
##
रूट ऑल = (ALL) ऑल

## किसी भी कमांड को निष्पादित करने के लिए ग्रुप व्हील के सदस्यों को अनुमति देने में असुविधा
% पहिया ALL = (ALL) ALL

## एक पासवर्ड के बिना एक ही बात
#% पहिया ALL = (ALL) NOPASSWD: ALL

## समूह sudo के सदस्यों को किसी भी कमांड को निष्पादित करने की अनुमति देने में असमर्थता
#% sudo ALL = (ALL) ALL

## किसी भी उपयोगकर्ता को पासवर्ड चलाने के लिए सूडो चलाने की अनुमति न दें
उपयोगकर्ता के ## वे कमांड (मूल रूप से मूल) के रूप में चला रहे हैं।
# डिफॉल्ट्स टारग्पव # टारगेट यूजर का पासवर्ड पूछें
# ALL ALL = (ALL) ALL # WARNING: इसे केवल 'Defaults targetpw' के साथ प्रयोग करें

## /etc/sudoers.d से ड्रॉप-इन फ़ाइलों को पढ़ें
## ('' # 'यहाँ एक टिप्पणी नहीं दर्शाता है)
#includedir /etc/sudoers.d


परिभाषित करें "काम नहीं करता है"। आपको क्या त्रुटि मिल रही है? क्या आपने sudoठीक से सेटअप किया है? क्या आप गैर-जीयूआई एप्लिकेशन का उपयोग शुरू कर सकते हैं sudo?
sepp2k

ps। आप एक ऐप भी आजमा सकते हैं, suxजो मूल रूप से "su with X" है
xenoterracide

जवाबों:


6

यह आर्क लिनक्स में एक जानबूझकर कॉन्फ़िगरेशन जैसा दिखता है। समाधान के लिंक के साथ चर्चा के लिए इसे देखें

लगता है कि सबसे अच्छा टिप "env_keep" चूक में "DISPLAY XAUTHORITY" को जोड़ना है /etc/sudoers

फेडोरा में /etc/sudoersनिम्नलिखित है और यह sudo somexapp को सफल होने की अनुमति देता है।

Defaults    env_reset
Defaults    env_keep =  "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
Defaults    env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults    env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults    env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults    env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"

मैंने / etc / sudoers फ़ाइल पढ़ी और इसने इस तथ्य का उल्लेख किया कि यह एक विशेषता थी। मैंने उन पंक्तियों को अनसुना कर दिया, जो मुझे बताती हैं, लेकिन यह अभी भी काम नहीं कर रही है। मैंने अपने प्रश्न में अपनी / etc / sudoers फ़ाइल पोस्ट की है।
फल्म्रीरी

मैंने अपने जवाब में फेडोरा सेटिंग्स को जोड़ा। मुझे लगता है कि आपको अपनी पोस्ट की गई फ़ाइल में अभी भी DISPLAY और XAUTHORITY याद है।
fschmitt

वास्तव में यह अब काम करने लगता है। मुझे यकीन नहीं है कि मैं बस को बचाने या कुछ करना भूल गया। धन्यवाद =]
फल्म्रीरी

9

ग्राफिकल कार्यक्रमों को सुडो के साथ नहीं चलाया जाना चाहिए। kdesudoजीयूआई कार्यक्रमों को रूट के रूप में, या gksuगनोम में चलाने के लिए केडीई में उपयोग करने का सही तरीका है ।

रूट के रूप में चित्रमय कार्यक्रमों को चलाने से गंभीर मुद्दों का कारण बनने की क्षमता है, यही कारण है कि रैपर प्रदान किए जाते हैं। किसी गंभीर समस्या के लिए यह आर्क मेलिंग सूची धागा पढ़ें जिसे आप sudoGUI ऐप लॉन्च करने की कोशिश कर सकते हैं ।


मैं उलझन में हूँ कि वह धागा क्या कह रहा था। क्या यह केवल एक मुद्दा है जब एक्स को रूट के रूप में चलाया जा रहा है? मुझे X सत्र से
सूडो

3
GUI ऐप्स को सुडो के साथ रूट के रूप में चलाना संभवतः फ़ाइलों को रूट के स्वामित्व में बदल सकता है। एक विशेष रूप से बुरा फ़ाइल यह हो सकता है ~/.ICEauthority। यह आपको Google "ICEauthority" में लॉगिन करने से रोक सकता है और आप देखेंगे कि परिणाम ऐसे लोगों से भरे हुए हैं जो अपने सिस्टम में लॉग इन नहीं कर सकते क्योंकि फ़ाइल रूट के स्वामित्व में हो गई। मैंने अभी उस एक को उठाया है क्योंकि वह आर्क पर है, उपयोगकर्ता का ओएस।
andrewsomething
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.