it-swarm.com.de

Wie starte ich eine Anwendung als root in Unity Launcher?

Hauptsächlich suche ich nach einer Möglichkeit, eine Anwendung an die Unity-Startleiste anzuheften und als Root auszuführen.

Selbst wenn ich die Anwendung derzeit mit Sudo starte und sie nach dem Start anhefte, wird sie das nächste Mal als aktueller Benutzer gestartet.

Schade, aber es gibt keinen Kontextmenüpunkt "Ausführen als ...".

pdate: Ich habe zu gnome3 gewechselt und bin jetzt froh, dass mir nur die Suche fehlt.

80
sorin

Wenn die App immer als root ausgeführt werden soll

  1. Befestigen Sie die Anwendung wie gewohnt am Launcher.

  2. Suchen Sie die .desktop-Datei der Anwendung, die sich in folgenden Verzeichnissen befindet:

    • /usr/share/applications/APPNAME.desktop
    • ~/.local/share/applications/APPNAME.desktop
    • oder irgendwo anders, benutze locate .desktop|grep APPAME
  3. Öffne mit gedit:

    gksudo gedit /usr/share/applications/APPNAME.desktop
    
  4. Dann ändern Sie die Zeile

    Exec=APP_COMMAND
    

    zu

    Exec=gksudo -k -u root APP_COMMAND
    
  5. Sparen

Mit diesem Befehl wird auch Ihre Umgebung erhalten, was sehr nützlich ist, wenn Sie eine Verbindung zu anderen Servern herstellen und Ihren privaten Schlüssel verwenden müssen.

m eine Quicklist-Option zu 'Run as root' hinzuzufügen

Befolgen Sie die obigen Schritte 1, 2 und 3

Wenn der Launcher derzeit keine anderen Optionen für die Schnellliste hat, hängen Sie diese einfach an das Ende des Dokuments an

X-Ayatana-Desktop-Shortcuts=Runroot

[Runroot Shortcut Group]
Name=Run as root
Exec=gksudo -k -u root APP_COMMAND
TargetEnvironment=Unity
89
edm

Geben Sie im Hauptmenü unter "System" unter "Einstellungen" im Feld "Befehl" unter "Eigenschaften des Startprogramms" die Zeichenfolge "gksudo" ein, z.

/usr/bin/gksudo /usr/bin/yourapplication

Ihr Namensfeld könnte lauten:

Sudo IhreAnwendung

So wissen Benutzer, dass sie möglicherweise ein Passwort-Popup sehen und warum ...

Ich bin mir nicht sicher, ob es sich bei Unity Launcher gegen das Hauptmenü handelt. Vielleicht hilft das?

Viel Glück

4
boolship

Als schnelle und einfache Alternative zu den umständlichen Anforderungen, die in den Antworten hier beschrieben werden, habe ich mir angewöhnt, Folgendes zu tun ...

  1. Starten Sie ein neues Terminal.
  2. Geben Sie gksu nautilus ein

    (Sudo -i nautilus funktioniert auch.)

Das resultierende Fenster befindet sich unter dem Sudo-Dach, sodass Sie darauf zugreifen und Dateien mit Sudo-Root-Rechten nach Herzenslust starten können, bis es geschlossen wird. Dies ist praktisch für vorübergehende Situationen, in denen Sie keine dauerhaftere Lösung benötigen. Ich verwende es routinemäßig, um komprimierte Dateien beispielsweise in geschützte Systemordner zu extrahieren.

2
Syndog

Folgendes scheint dasselbe zu tun, ohne private Attribute zu benötigen:

Actions=Runroot;Another

[Desktop Action Runroot]
Name=Run as root
Exec=gksudo -k -u root APP_COMMAND

[Desktop Action Another]
Name=Another action
Exec=whatever
2
Daniel

Ich poste dies als Antwort auf die Frage @ Chris , die in den Kommentaren gestellt wurde:

Angenommen, Sie möchten einen Starter erstellen, der "Dateimanager (Nautilus)" als Root öffnet. Dann können Sie dies tun:

Terminal öffnen. Art:

Sudo -H gedit /usr/share/applications/nautilus_root.desktop

Drücke Enter. Wenn Sie dazu aufgefordert werden, geben Sie Ihr Login-Passwort ein und drücken Sie die Eingabetaste. Dies öffnet gedit (Texteditor). Fügen Sie dort nun Folgendes ein:

[DesktopEntry]
Encoding=UTF-8
Name=Nautilus(Root)
Comment=FileManager
Exec=gksu nautilus
Icon=file-manager
Categories=System;
Type=Application
Terminal=0

Speichern Sie es jetzt und beenden Sie es. Du bist fertig. Wenn Sie nun nach Dash suchen, finden Sie einen neuen Launcher "Nautilus (Root)". Wenn Sie darauf klicken, werden Sie nach Ihrem Passwort gefragt. Nach der Authentifizierung wird Nautilus als root geöffnet.

Hinweis: Seien Sie vorsichtig, wenn Sie "Nautilus (Root)" ausführen. In diesem Modus können Sie fast alles aus / löschen und das System beschädigen.

1

Dies sollte vielleicht ein Kommentar zu Daniels Lösung sein. Es funktioniert bei mir sogar in Ubuntu 15.04. Ich musste den Befehl wegen des zusätzlichen Arguments zwischen Anführungszeichen Exec=gksu "nautilus --new-window" setzen. Irgendwie weiß ich auch nicht warum, ich musste den Launcher direkt bearbeiten, um das ursprüngliche Menü (zusammen mit der neuen Option) beizubehalten. Wenn Sie Ihren eigenen Launcher ziehen, wird dieser registriert, Sie haben jedoch nicht das gleiche Menü.

In Ubuntu 15.04 ist der Launcher für Nautilus usr/share/applications/org.gnome.Nautilus.desktop. Sie müssen die Befehlszeile verwenden, um den tatsächlichen Dateinamen anzuzeigen.

Weitere Nachforschungen haben mich zu einer meiner Meinung nach besseren Option geführt: http://ubuntuhandbook.org/index.php/2014/04/ubuntu-14-04-add-open-as-rootadministrator-to-context -Menü / . Anstatt Nautilus vollständig als Root zu öffnen, können Sie ausgewählte Verzeichnisse in Nautilus als Root öffnen. Jedenfalls habe ich überprüft, und diese beiden Optionen sind kompatibel. Wenn Sie Nautilus als Root öffnen und dann mit der zweiten Option ein Verzeichnis als Root öffnen, wird es einfach geöffnet, ohne dass Sie nach dem Kennwort gefragt werden.

0
Dominic108