Hallo Debianer,
ich versuche jetzt schon länger, ein Programm mit root Rechten aus dem Mate Menü zu starten, bekomme aber oben genannte Fehlermeldung.
Seit Buster gibt es ja kein gksudo mehr und ich werde aus pkexec nicht ganz schlau.
Es handelt sich um USBGuard, der Befehl ist usbguard-applet-qt.
Laut 'man pkexec' muss ich ein File in /usr/share/polkit-1/actions erstellen, aber mir ist aus dem Manual nicht ganz ersichtlich, wie dieses File heißen soll, weshalb ich glaube, daß das nicht funktionert. Ich habe schon ein paar Namen auf gut Glück getestet, aber hatte keinen Erfolg.
Ich finde beim ducken auch immer nur das selbe "Frobnicate" Beispiel aus der man page.
Hat jemand eine Idee?
(gelöst) pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
(gelöst) pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
Zuletzt geändert von SirArthur am 11.01.2020 15:02:33, insgesamt 1-mal geändert.
-
- Beiträge: 5528
- Registriert: 30.12.2004 15:31:07
- Wohnort: Wegberg
Re: pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
Hallo
warum benutzt du dafür überhaupt eine gui, das geht auch seht gut per cli.
mfg
schwedenmann
warum benutzt du dafür überhaupt eine gui, das geht auch seht gut per cli.
mfg
schwedenmann
Re: pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
Im Repo ist nur ein Paket usbguard, das ist aber nicht Deins, oder?
Das Repopaket erstellt bei der Installation automatisch auch eine Action in /usr/share/polkit-1.
Das kannst Du ja als Muster nehmen. Vielleicht auch nur das Paket herunterladen, entpacken und nur die XML-Datei dorthin kopieren,
evtl. reicht das schon.
Das Repopaket erstellt bei der Installation automatisch auch eine Action in /usr/share/polkit-1.
Das kannst Du ja als Muster nehmen. Vielleicht auch nur das Paket herunterladen, entpacken und nur die XML-Datei dorthin kopieren,
evtl. reicht das schon.
Re: pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
Wahrscheinliche Lösung wie Immer: Ganz unten Trifft nur für KDE zu
Ich mache das so:
1) Policy kurz und knackig anlegen z.B. Für Mouspad: :
mit
Kannst du Mousepad nach PW- Abfrage als Root ausführen.
wenn du die Zeile
änderst in
geht es auch ohne PW- Abfrage
Wenn ich mir die Namensgebung in diesem Verzeichnis ansehe, ist der Name - bis auf die Konventionen -
nicht so entscheidend.40956
Edit
Mal hier gelesen ?
https://www.freedesktop.org/software/po ... kit.8.html
Hier ist noch ein Thread dazu:
viewtopic.php?f=29&t=174364
EDIT 2
Analog Dolphin müsstest du also was Ähnliches kreieren (einen Policy wäre dann wahrscheinlich gar nicht nötig):
Ich mache das so:
1) Policy kurz und knackig anlegen z.B. Für Mouspad: :
Code: Alles auswählen
cat /usr/share/polkit-1/actions/org.xfce.mousepad.policy
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<vendor>Mousepad</vendor>
<vendor_url>http://xfce.org/</vendor_url>
<icon_name>accessories-text-editor</icon_name>
<action id="org.xfce.mousepad">
<description>Run Mousepad as root</description>
<description xml:lang="de">Mousepad als Systemverwalter ausführen</description>
<description xml:lang="en_AU">Run Mousepad as root</description>
<message>Authentication is required to run Mousepad as root.</message>
<message xml:lang="de">Authentifizierung notwendig, um Mousepad als Systemverwalter auszuführen.</message>
<message xml:lang="en_AU">Authentication is required to run Mousepad as root.</message>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/mousepad</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
</action>
</policyconfig>
Code: Alles auswählen
pkexec mousepad
wenn du die Zeile
Code: Alles auswählen
<allow_active>auth_admin</allow_active>
Code: Alles auswählen
<allow_active>yes</allow_active>
Wenn ich mir die Namensgebung in diesem Verzeichnis ansehe, ist der Name - bis auf die Konventionen -
nicht so entscheidend.40956
Edit
Mal hier gelesen ?
https://www.freedesktop.org/software/po ... kit.8.html
Hier ist noch ein Thread dazu:
viewtopic.php?f=29&t=174364
EDIT 2
Analog Dolphin müsstest du also was Ähnliches kreieren (einen Policy wäre dann wahrscheinlich gar nicht nötig):
Code: Alles auswählen
pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY KDE_SESSION_VERSION=5 KDE_FULL_SESSION=true dolphin
Zuletzt geändert von willy4711 am 11.01.2020 14:26:49, insgesamt 2-mal geändert.
Re: pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
@schwedenmann
Ich bin grundsätzlich schon ein Freund des Terminals, war aber mit dem GUI in dem Fall um einiges schneller, weshalb ich den dann verwendet habe. Es geht ja meistens nur darum, einen USB Stick freizugeben und das hatte ich dann mit drei Clicks und Passworteingabe erledigt.
Sollte ich den GUI nicht zum Laufen bringen, bin ich allerdings geneigt, mir was mit Dialog und ein paar Hotkeys zusammenzustoppeln
@KP97
Doch, ich habe das Paket aus den Repos. Die org.usbguard.policy ist auch vorhanden, aber da bekomme ich oben genannte Fehlermeldung.
Mich verwirrt, daß da "qt.qpa.screen" steht, das übersteigt meine Kenntnisse leider...
@Willy
Danke Ich habe folgendes zusätzlich in die schon vorhandene org.usbguard.policy eingetragen und jetzt funktioniert alles!
Merci viele male, bestes Forum aller Zeiten
Ich bin grundsätzlich schon ein Freund des Terminals, war aber mit dem GUI in dem Fall um einiges schneller, weshalb ich den dann verwendet habe. Es geht ja meistens nur darum, einen USB Stick freizugeben und das hatte ich dann mit drei Clicks und Passworteingabe erledigt.
Sollte ich den GUI nicht zum Laufen bringen, bin ich allerdings geneigt, mir was mit Dialog und ein paar Hotkeys zusammenzustoppeln
@KP97
Doch, ich habe das Paket aus den Repos. Die org.usbguard.policy ist auch vorhanden, aber da bekomme ich oben genannte Fehlermeldung.
Mich verwirrt, daß da "qt.qpa.screen" steht, das übersteigt meine Kenntnisse leider...
@Willy
Danke Ich habe folgendes zusätzlich in die schon vorhandene org.usbguard.policy eingetragen und jetzt funktioniert alles!
Code: Alles auswählen
<action id="usbguard-applet-qt">
<description>Run USBGuard</description>
<description xml:lang="de">USBGuard als Systemverwalter ausführen</description>
<description xml:lang="el">Εκτέλεση USBGuard ως διαχειριστής</description>
<description xml:lang="en_AU">Run USBGuard as root</description>
<message>Authentication is required to run USBGuard as root.</message>
<message xml:lang="de">Authentifizierung notwendig, um USBGuard als Systemverwalter auszuführen.</message>
<message xml:lang="en_AU">Authentication is required to run USBGuard as root.</message>
<defaults>
<allow_any>no</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/bin/usbguard-applet-qt</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
</action>
Zuletzt geändert von SirArthur am 12.01.2020 05:30:15, insgesamt 1-mal geändert.
Re: pkexec - qt.qpa.screen: QXcbConnection: Could not connect to display Could not connect to any X display.
Ahja, jetzt war ich selbst mit meinen Edits auf dem Holzweg. Du hast ja Mate und nicht KDE.
Werde das mal oben wieder streichen.
P.s.
Das griechische hab ich oben schon raus genommen, und der Richtigen Auch. Hatte ich wohl beim Erstellen übersehen.
Werde das mal oben wieder streichen.
P.s.
Das griechische hab ich oben schon raus genommen, und der Richtigen Auch. Hatte ich wohl beim Erstellen übersehen.