क्यों नहीं gksu / gksudo या Wayland के साथ sudo काम के साथ एक ग्राफिकल एप्लिकेशन लॉन्च कर रहा है?


44

मैंने Ubuntu 17.10 स्थापित किया। अब मुझे इससे परेशानी हो रही है gksu:

$ gksu -dg synaptic
No ask_pass set, using default!
xauth: /tmp/libgksu-HgUjgQ/.Xauthority
STARTUP_ID: gksu/synaptic/8760-0-alex-XPS-15-9530_TIME4974977
cmd[0]: /usr/bin/sudo
cmd[1]: -H
cmd[2]: -S
cmd[3]: -p
cmd[4]: GNOME_SUDO_PASS
cmd[5]: -u
cmd[6]: root
cmd[7]: --
cmd[8]: synaptic
buffer: -GNOME_SUDO_PASS-
brute force GNOME_SUDO_PASS ended...
Yeah, we're in...
Unable to init server: Could not connect: Connection refused
(synaptic:8767): Gtk-WARNING **: cannot open display: :1
xauth: /tmp/libgksu-HgUjgQ/.Xauthority
xauth_env: (null)
dir: /tmp/libgksu-HgUjgQ

यदि मैं उपयोग नहीं करता हूं -g, तो पासवर्ड संवाद अक्षम है। तो जड़ के लिए एक ट्टी बनाने के साथ एक समस्या की तरह दिखता है।

कोई सलाह?


1
gksudoएक वेलैंड सत्र में काम नहीं करेगा , आप एक Xorg सत्र पर स्विच कर सकते हैं और कोशिश कर सकते हैं।
पोम्स्की

2
यदि X त्रुटि "केवल प्रदर्शन नहीं खोल सकती:: 1"। वायलैंड को इस तरह से डिज़ाइन किया गया है और डेवलपर्स की राय में, आपको कमांड लाइन से रूट के रूप में ग्राफिकल एप्लिकेशन नहीं चलाना चाहिए। आप xhost के साथ काम कर सकते हैं।
पैंथर

1
gksu -dg synaptic आपको कभी भी ऐसा नहीं करना चाहिए।
Rinzwind

3
@ N0rbert 17.10 में 17.10 प्रश्नों को जोड़ना बंद कर देता है । यदि संस्करण उस रिलीज़ के लिए विशिष्ट है तो संस्करण टैग का उपयोग किया जाना है। इन प्रश्नों में से अधिकांश आमतौर पर लागू होते हैं जहाँ भी वेलैंड, गनोम शेल, आदि उपलब्ध हैं, और जिसमें अतीत और भविष्य के संस्करण शामिल हैं।
मुरु

@maru। 16.04 एलटीएस चालू है, 17.04 ईओएल के पास है, इसलिए सामान्य 17.10 का अर्थ है वायलैंड और डिफ़ॉल्ट GNOME शेल, इसलिए 17.10 टैग उपयोगी है, मुझे लगता है। यह है सवाल, जहाँ उपयोगकर्ताओं को 17.10 समस्याएं आ रही हैं लगता है, लेकिन यहां कोई जवाब और टिप्पणी है करने के लिए मुश्किल । उन्हें जवाब चाहिए, लेकिन पूछने पर 17.10 टैग जोड़ना भूल गए। मैं टैग जोड़ना बंद कर सकता हूं। यह एक सद्भावना थी।
N0rbert

जवाबों:


55

ध्यान दें कि यह उत्तर वेनलैंड का उपयोग करते हुए उबंटू के संस्करणों के लिए विशिष्ट है, 17.10 डिफ़ॉल्ट रूप से वायलैंड का उपयोग करने वाली पहली रिलीज है।

यह एक बग नहीं एक सुविधा है! यह वायलैंड की एक डिज़ाइन विशेषता है कि आप टर्मिनल से रूट के रूप में ग्राफिकल एप्लिकेशन शुरू नहीं कर सकते हैं।

मुख्य चर्चा फेडोरा साइटों पर निश्चित रूप से हैं। फेडोरा बग देखें # 1274451 और ग्राफिकल एप्लिकेशन रूट फेडरल में रूट के रूप में नहीं चलाए जा सकते हैं (उदाहरण के लिए गेडिट, बीसू, गार्टर्ड, नॉटिलस) फेडोरा पर । लेकिन उबंटू साइटों पर भी कुछ चर्चा है ( उबंटू देव्स ने 17.10 में डिफ़ॉल्ट रूप से वेलैंड का उपयोग करने के बारे में पता लगाया है - ओएमजी! उबंटू )।

उबंटू बग रिपोर्ट: वायलैंड सत्र पर pkexec'ed अनुप्रयोगों को लॉन्च करने में असमर्थ

चारों ओर संभावित कार्य - यदि आप एक ग्राफिकल एडिटर (जैसे गेडिट) के साथ सिस्टम फ़ाइलों को संपादित कर रहे हैं, तो जैसे nanoया vimया कमांड लाइन टूल का उपयोग करें emacsnanoआम तौर पर नए उपयोगकर्ताओं के लिए आसान है, vimअधिक शक्तिशाली है और इसमें अधिक विशेषताएं हैं, इस विम ट्यूटोरियल या समान देखें।

किसी भी दर पर, यदि आप वास्तव में ग्राफिकल ऐप्स को रूट के रूप में चलाना या चलाना चाहते हैं, तो xhostपहले सेट करें कि कौन-सी फोर्स एक्सरेवर में आती है।

अनुमतियाँ चलाने के लिए:

xhost si:localuser:root 

जब आप समाप्त हो जाते हैं, तो अनुमतियाँ निकालने के लिए

xhost -si:localuser:root 

आप इस synaptic बग रिपोर्ट के अनुसार ऐसा करने के लिए एक ग्राफिकल / डेस्कटॉप विकल्प जोड़ सकते हैं

pkexec'ed अनुप्रयोगों को xhost +si:localuser:rootXDG ऑटोस्टार्ट में निम्नानुसार ठीक किया जा सकता है (N0rbert के विचार):

cat <<EOF | sudo tee /etc/xdg/autostart/xhost.desktop
[Desktop Entry]
Name=xhost
Comment=Fix graphical root applications
Exec="xhost +si:localuser:root"
Terminal=false
Type=Application
EOF

आप इस xhost कमांड को .bashrc में जोड़ सकते हैं, लेकिन मैं एक जोड़ी उपनाम की सलाह दूंगा

alias gsuon='xhost si:localuser:root'

alias gsuoff='xhost -si:localuser:root'

आप अपनी इच्छानुसार उपनामों को नाम दे सकते हैं।

विवरण के लिए देखें:


Xorg पर वापस जाएं

यदि आप किसी कारण से Xorg पसंद करते हैं, तो आप लॉगिन पर Xorg पर चलने का चयन कर सकते हैं

देखें कि आप उबंटू में Xorg 17.10 में वायलैंड से वापस कैसे स्विच करते हैं?


क्या यह वर्क मीर के साथ भी काम करता है ?
एलियाह कगन

मैं MIR के बारे में नहीं जानता, यह हो सकता है।
पैंथर

1
या बसxhost +local:
chaskes

18
"यह एक बग नहीं एक विशेषता है!" ... आह। इस तरह की चीजें बिल्कुल कारण है कि मैं अपने दोस्त और सहकर्मियों को लिनक्स पर जाने के लिए मना नहीं कर सकता। VIM और नैनो का उपयोग करना GEdit का विकल्प नहीं है। गेडिट नोटपैड की तरह काम करता है, जबकि आपको उन अन्य लोगों के लिए सीआरटीएल-कोड सीखने की जरूरत है। और उदाहरण के लिए नैनो को "सेव" के बजाय "राइट आउट" जैसे शब्दों का उपयोग करें।
JHBonarius

9
यह भी पूरी तरह से टूट जाता है, जो एक महत्वपूर्ण बात है जिसका उपयोग करना महत्वपूर्ण है। क्या हुआ कभी "बेवकूफ लोगों को बेवकूफ चीजें करने से रोकने की कोशिश न करें? आप केवल चतुर लोगों को चतुर चीजें करने से रोकने में सफल होंगे।"
मैथ्यू नजमन

21

यहाँ छवि विवरण दर्ज करें समाधान

वेलैंड में अक्सर उन्नत (sudo -H, gksu ...) अनुमतियों के साथ GUI एप्लिकेशन प्रोग्राम चलाना मुश्किल है। कमांड लाइन टूल के साथ ऐसे कार्यों को करना एक अच्छा विचार है।

लेकिन वर्कअराउंड हैं, अगर आपके पास एक GUI टूल है, जो आपके लिए अच्छी तरह से काम करता है और एलिवेटेड परमिशन की आवश्यकता है। (मैं ऐसे दो मानक उपकरणों का उपयोग करता हूं: सिनैप्टिक पैकेज मैनेजर, synapticऔर विभाजन उपकरण Gparted gparted। मैं USB बूट ड्राइव बनाने के लिए MakeUSB का उपयोग करता हूं mkusb, भी, लेकिन यह उन हिस्सों को चला सकता है जिन्हें ग्राफिक्स के बिना उन्नत अनुमतियों की आवश्यकता होती है।)

xhost तथा sudo -H

  1. वेनलैंड में लॉग इन उपयोगकर्ता की तुलना में अन्य उपयोगकर्ताओं के स्वामित्व वाले ग्राफिकल एप्लिकेशन प्रोग्राम को अनुमति देने के लिए वर्कअराउंड है,

    xhost +si:localuser:root
    
  2. gksuऔर gksudoमानक उबंटू के साथ बंडल नहीं किए जाते हैं और यहां काम नहीं करते हैं, लेकिन वे Xorg में काम करते हैं।

    इसके बजाय आप उपयोग कर सकते हैं

    sudo -H
    
  3. बाद में लॉग इन उपयोगकर्ता की तुलना में अन्य उपयोगकर्ताओं के स्वामित्व वाले ग्राफिकल एप्लिकेशन प्रोग्राम को रोकना एक अच्छा विचार है।

    xhost -si:localuser:root
    

gvfs व्यवस्थापक बैकएंड

Ubuntu 17.10 (gvfs> = 1.29.4) में आप gvfs व्यवस्थापक बैकएंड का उपयोग कर सकते हैं। ध्यान दें कि आपको पूर्ण पथ की आवश्यकता है,

gedit admin:///path/to/file

सिद्धांत रूप में, gvfs व्यवस्थापक बैकएंड विधि (जो polkit उपयोग करता है) के लिए बेहतर है और सुरक्षित (से xhostऔर xudo -Hयूआई आप उपयोग की परवाह किए बिना),।

आप पूरे एप्लिकेशन को रूट के रूप में नहीं चलाते हैं। विशेषाधिकार वृद्धि केवल तभी होती है जब कड़ाई से आवश्यक हो। निम्नलिखित लिंक और इससे लिंक देखें,

Nautilus-व्यवस्थापक

nautilus-adminएलिवेटेड अनुमतियों के साथ फ़ाइल संचालन के लिए उपयोग geditकरना और उन्नत अनुमतियों के साथ उपयोग करना भी संभव है । यह निम्नलिखित AskUbuntu उत्तर में वर्णित है,

रूट के लिए अस्थायी पहुंच समारोह के माध्यम से वीलैंड डेस्कटॉप के लिए gks

कृपया टालें sudo GUI-program। यह आपके रेग्युलर यूजर आईडी के लिए सिस्टम फाइल को रेग्युलर फाइल आईडी से ओवरराइट करने का कारण बन सकता है और आपके रेगुलर यूजर आईडी rootको फिट rootऔर लॉक करने के लिए ओनरशिप और परमिशन सेट करता है । आपको GUI अनुप्रयोगों को चलाना चाहिए sudo -H, जो कॉन्फ़िगरेशन फ़ाइलों को rootहोम डायरेक्टरी में लिखते हैं /root। उदाहरण:

sudo -H gedit myfile.txt

लेकिन एक जोखिम है जिसे आप भूल जाते हैं -H। इसके बजाय आप एक फ़ंक्शन बना सकते हैं, उदाहरण के लिएgks

gks () { xhost +si:localuser:root; sudo -H "$@"; xhost -si:localuser:root; }

और इसे अपने ~/.bashrcपास के उपनामों में संग्रहीत करें । तब तुम दौड़ सकते हो

gks gedit myfile.txt

एक तरह से आप gksudoपहले कैसे इस्तेमाल किया ।

परिक्षण

आप निम्न कमांड के साथ कैसे sudo, sudo -Hऔर gksकाम कर सकते हैं

sudodus@xenial32 ~ $ sudo bash -c "echo ~"
/home/sudodus
sudodus@xenial32 ~ $ sudo -H bash -c "echo ~"
/root
sudodus@xenial32 ~ $ gks () { xhost +si:localuser:root; sudo -H "$@"; xhost -si:localuser:root; }
sudodus@xenial32 ~ $ gks bash -c "echo ~"
localuser:root being added to access control list
/root
localuser:root being removed from access control list
sudodus@xenial32 ~ $ 

और निश्चित रूप से

gks gedit myfile.txt

पिछले अनुभाग में उदाहरण के अनुसार।

वह विधि जो Alt-F2 और गनोम शेल मेनू के माध्यम से काम करती है

के लिए एक सरल एक-लाइन फ़ंक्शन को जोड़ने के बजाय ~/.bashrc, आप एक सिस्टम बना सकते हैं, जो बिना किसी कोस किए भी काम करता है। यह उपयोग करने के लिए सुविधाजनक हो सकता है, लेकिन स्थापित करने के लिए अधिक जटिल है। कृपया ध्यान दें कि आपको केवल एक विकल्प स्थापित करना चाहिए, क्योंकि एक-लाइन फ़ंक्शन इस अधिक जटिल प्रणाली का उपयोग करके परेशान करेगा।

तीन फाइलें

शेलस्क्रिप्ट gks:

#!/bin/bash

xhost +si:localuser:root

if [ $# -eq 0 ]
then
  xterm -T "gks console - enter command and password" \
  -fa default -fs 14 -geometry 60x4 \
  -e bash -c 'echo "gks lets you run command lines with GUI programs
with temporary elevated permissions in Wayland."; \
read -p "Enter command: " cmd; \
cmdfile=$(mktemp); echo "$cmd" > "$cmdfile"; \
sudo -H bash "$cmdfile"; rm "$cmdfile"'
else
 xterm -T "gks console - enter password" -fa default -fs 14 -geometry 60x4 -e sudo -H "$@"
fi 

xhost -si:localuser:root;

डेस्कटॉप फ़ाइल gks.desktop:

[Desktop Entry]
Version=1.0
Categories=Application;System;
Type=Application
Name=gks
Description=Run program with temporary elevated permissions in Wayland
Comment=Run program with temporary elevated permissions in Wayland
Exec=gks %f
Icon=/usr/share/icons/gks.svg
Terminal=false
StartupNotify=false
GenericName[en_US.UTF-8]=Run program with temporary elevated permissions in Wayland

आइकन फ़ाइल gks.svgइस तरह दिखती है:

यहाँ छवि विवरण दर्ज करें

आप इस लिंक से तीनों फाइलों के साथ आइकन फाइल या टैरबॉल डाउनलोड कर सकते हैं,

wiki.ubuntu.com/Wayland/gks

निम्नलिखित स्थानों पर [निकाले या प्रतिलिपि किए गए और चिपकाए गए] फ़ाइलों की प्रतिलिपि बनाएँ,

sudo cp gks /usr/bin
sudo cp gks.desktop /usr/share/applications/
sudo cp gks.svg /usr/share/icons

लॉगआउट / लॉगिन या रिबूट, और एक काम करने वाला डेस्कटॉप आइकन होना चाहिए। यह एक टर्मिनल विंडो से काम करेगा जैसे फ़ंक्शन के साथ सरल समाधान।

Alt F2 डिब्बा:

यहाँ छवि विवरण दर्ज करें

सूक्ति शैल मेनू:

यहाँ छवि विवरण दर्ज करें

gks कंसोल और gparted:

यहाँ छवि विवरण दर्ज करें

कस्टम स्क्रिप्ट और डेस्कटॉप फ़ाइल

यदि आपके पास केवल कुछ GUI अनुप्रयोग हैं, जिन्हें उन्नत अनुमतियों की आवश्यकता है, तो आप उनके लिए कस्टम स्क्रिप्ट और डेस्कटॉप फ़ाइलें बना सकते हैं और कमांड (एप्लिकेशन नाम) दर्ज करने से बच सकते हैं। आप केवल पासवर्ड दर्ज करेंगे, जो उबंटू के पिछले संस्करणों की तुलना में अधिक कठिन नहीं है (आपको वैसे भी पासवर्ड दर्ज करना चाहिए)।

सरल GUI प्रोग्राम के साथ उदाहरण xlogoजो प्रोग्राम पैकेज के साथ आता है x11-apps:

गोले gkslogo(तुलना में सरलीकृत gks),

#!/bin/bash

xhost +si:localuser:root

xterm -T "gks console - enter password" -fa default -fs 14 -geometry 60x4 -e sudo -H xlogo

xhost -si:localuser:root;

डेस्कटॉप फ़ाइल gkslogo.desktop:

[Desktop Entry]
Version=1.0
Categories=Application;System;
Type=Application
Name=gkslogo
Description=Run program with temporary elevated permissions in Wayland
Comment=Run program with temporary elevated permissions in Wayland
Exec=gkslogo
Icon=/usr/share/icons/gks.svg
Terminal=false
StartupNotify=false
GenericName[en_US.UTF-8]=Run program with temporary elevated permissions in Wayland

मैं आलसी था और एक ही आइकन फ़ाइल का उपयोग करता था gks.svg

[कॉपी और पेस्ट की गई] फाइलों को निम्न स्थानों पर कॉपी करें,

sudo cp gkslogo /usr/bin
sudo cp gkslogo.desktop /usr/share/applications/

gks [लोगो] कंसोल और xlogo:

यहाँ छवि विवरण दर्ज करें


क्या "फंक्शन जीक्स के माध्यम से वीलैंड डेस्कटॉप के लिए रूट की अस्थायी पहुंच" एक सुरक्षित तरीका है (जैसे कि एक फ़ाइल को जोड़ने /etc/xdg/autostart/xhost.destopजैसा सुझाव भी दिया गया है) क्योंकि यह मूल वातावरण को बहाल करके समाप्त होता है? और हम सुरक्षित रूप से जगह ले सकता है sudo -Hके साथ gksuउर्फ में तो उपयोग डालने के रूप में .desktop फ़ाइलें, आदि में?
सादी

1
हां, मुझे लगता है कि केवल आवश्यक होने पर ही डेस्कटॉप पर रूट एक्सेस की अनुमति देना सुरक्षित है। और हाँ, आप बदल सकते हैं sudo -Hके साथ gksuसमारोह में, यह आपके अनुप्रयोगों के लिए बेहतर काम कर सकते हैं।
सूडोडस

1
अत्यंत गहन उत्तर के लिए +1। अपने को इसी gksसंक्षिप्त नाम मैं सेटअप था gsuनीति किट (के लिए नए भविष्य का उपयोग करने 16.04के लिए) geditऔर nautilus। जब 18.04 निकलता है, हालांकि मुझे लगता है कि मैं सिर्फ xhost +si...रैपर स्क्रिप्ट का नाम लूंगा, gksuजिसे मैं कभी भी शुरू करने वाले पैकेज से स्थापित नहीं करूंगा 18.04
WinEunuuchs2Unix

2
"वेलैंड को जीयूआई एप्लिकेशन प्रोग्राम के साथ एलिवेटेड (सुडो-एच, जीक्सयू ...) की अनुमति नहीं देने के लिए डिज़ाइन किया गया है।" -- असत्य। Wayland रूट अनुप्रयोगों को ठीक करने की अनुमति देता है। आप इसे चलाकर देख सकते हैं sudo -E gedit। वर्तमान में एक बग है gdmजहां यह XAUTHORITY का समर्थन नहीं करने के लिए Xwayland X11 संगतता सर्वर को कॉन्फ़िगर करता है, जो काम करने के लिए रूट के रूप में चल रहे X11 अनुप्रयोगों के लिए आवश्यक है। मूल काम के रूप में चल रहे देशी वेटलैंड अनुप्रयोग ठीक काम करते हैं।
Psusi

1
@psusi, मैंने वायलैंड के डिजाइन और इरादों के बारे में बयानों से बचने के लिए उत्तर को संशोधित किया।
सुडोडुस

6

बेहतर जाँच करें कि क्या रूटलैंड वास्तव में रूट अधिकार देने से पहले पहले चल रहा है

if [ $XDG_SESSION_TYPE = "wayland" ]; then
    xhost +si:localuser:root
fi

5

यदि आप Ubuntu 17.04 या उच्चतर का उपयोग कर रहे हैं , तो यह gvfs व्यवस्थापक बैकएंड का उपयोग करने के लिए अनुशंसित है । केवल उस व्यवस्थापक को जोड़ें : // पूर्ण फाइलपाट के सामने जिसे आप टेक्स्ट एडिटर या फाइल्स ऐप जैसे ऐप में खोलना चाहते हैं

उदाहरण के लिए, बूट सेटिंग बदलने के लिए, खोलें

admin:///etc/default/grub

यह विधि PolicyKit का उपयोग करती है और अभी भी Ubuntu 17.10 के वेलैंड डिफॉल्ट के साथ काम करेगी, जबकि GUI ऐप्स के लिए sudo और gksu नहीं होंगे।


1
धन्यवाद। मेरे लिए यह गेडिट के साथ सबसे अच्छा काम करता है (एक अजीब व्यवहार को छोड़कर जब बस के रूप में इस्तेमाल किया जाता है gedit admin:), बहुत अजीब से नॉटिलस (लगभग बेकार) के साथ, और पूरी तरह से synaptic के साथ विफल । कोई विचार?
सादी

यह सिनैप्टिक के साथ काम करने वाला नहीं है। हालांकि यह नॉटिलस में ठीक काम करना चाहिए, लेकिन आपको एक निर्देशिका चुनने की आवश्यकता है जैसे कि फाइल नहींadmin:///etc/
जेरेमी बिचा

यह नौटिलस के साथ काम करता है, लेकिन आप देखेंगे कि मेरा क्या मतलब है ("बहुत अजीब तरह से", "लगभग बेकार") यहां तक ​​कि जब आप सीधे एक निर्देशिका खोलते हैं, और ऐसा करने की कोशिश करना शुरू करते हैं ;-)
Sadi

@ सादी मुझे पता नहीं है कि "यह और वह" क्या है। यदि यह सही काम नहीं करता है तो आप बग दर्ज कर सकते हैं।
जेरेमी बिचा

3

उन अनुप्रयोगों के लिए जो su-to-root और pkexec का उपयोग करते हैं , आप अपने जोखिम पर इस कोड को /etc/xdg/autostart( लॉन्चपैड पर मेरी टिप्पणी देखें ) जोड़ना चाहते हैं :

cat <<EOF | sudo tee /etc/xdg/autostart/xhost.desktop
[Desktop Entry]
Name=xhost
Comment=Fix graphical root applications
Exec="xhost +si:localuser:root"
Terminal=false
Type=Application
EOF

वेटलैंड पर अन्य रूट एप्लिकेशन भी टूट गए हैं ( बग 1713313 और बग 1713311 देखें )।


यदि आप स्थायी समाधान नहीं चाहते हैं, तो आप @ ravery की विधि का उपयोग कर सकते हैं:

xhost +si:localuser:rootविशेषाधिकार प्राप्त एप्लिकेशन लॉन्च करने से पहले बस टर्मिनल में टाइप करें


1

यदि कोई एप्लिकेशन Wayland API का समर्थन करता है तो आप इसे sudo -EH applicationकमांड का उपयोग करके रूट के रूप में चला सकते हैं ।

-E स्विच पर्यावरण के चर (साथ ही WAYLAND_SOCKET और XDG_RUNTIME_DIR) को संरक्षित करने के लिए sudo को बताता है कि उसे किन-किन अनुप्रयोगों के लिए आवश्यक है। यह हमेशा बेहतर होता है कि अन्य उत्तर में प्रस्तावित नॉस्टीहोस्ट हैक पर इस विकल्प का उपयोग किया जाए। xhost आवेदन को X रैपर के नीचे से चलाने की अनुमति देता है जो वेलैंड (साझा क्लिपबोर्ड, कीलिंग आदि) का उपयोग करने से कम सुरक्षित है। Sudo -EH ट्रिक अभ्यस्त एक ऐसे एप्लिकेशन के साथ काम करता है, जिसे वेलैंड के लिए दोबारा नहीं लिखा गया था, जैसे उदाहरण के लिए gparted, लेकिन gedit आदि के साथ काम करेगा।


0

वास्तव में निम्नलिखित कोड लगभग काम करता है:

#! /bin/bash
set -e 
if [ -z "$1" ] ; then
    echo "Application is not specified" ;  exit
fi 
if [ $XDG_SESSION_TYPE = "wayland" ]; then
    if [[ -t 1 ]]; then
       xhost +si:localuser:root
       sudo -u root "$@"
       xhost  -  
       exit 0
    fi 
fi
gksu "$@"

(कृपया मुझे बश कोडिंग की भोली शैली के लिए क्षमा करें- मैं इस विषय के साथ नौसिखिया हूं)। टी Alt-F2 से स्थिर काम नहीं करता है, अगर अंतिम चयन टर्मिनल नहीं था; इस मामले में हम सिर्फ पासवर्ड संवाद पर ध्यान केंद्रित नहीं कर सकते हैं ऐसा लगता है कि यह Gnome मेनू से काम करता है। वैसे भी <1. यह 100% समाधान नहीं है। 2. मुझे ऐसा लगता है कि उबंटू के आर्किटेक्ट सोचते हैं कि हमें किसी भी काम की तलाश नहीं करनी चाहिए।


1
मुझे लगता है कि आप "$@"(के बजाय "$1" "$2" ...) चाहते हैं ।
मोरू

हाँ बेशक: ये मेरे प्रयोगों के सिर्फ निशान हैं
एलेक्स चैपीरो
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.