ubuntuusers.de

gksu gedit

Status: Gelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

-christopher-

Anmeldungsdatum:
20. Dezember 2011

Beiträge: Zähle...

Hallo,

wie kann ich gedit mit root Rechten öffnen? Wenn ich gksu gedit aufrufe kommt der Fehler:

1
2
gksu gedit
(gksu:3085): GConf-CRITICAL **: gconf_value_free: assertion 'value != NULL' failed

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 11260

Wohnort: München

Versuch es mal mit gksudo wie im Wiki angegeben: sudo (Abschnitt „root-bei-grafischen-Programmen“) - ich habe gerade nur eine VM mit Ubuntu Mate 16.04 zur Hand, da lässt sich gedit damit starten.

Cruiz Team-Icon

Avatar von Cruiz

Anmeldungsdatum:
6. März 2014

Beiträge: 5557

Wohnort: Freiburg i. Brsg.

Hallo,

gksu versucht mittels des Root-Accounts zu starten. Den gibt es bei Ubuntu aber standardmäßig nicht, daher kann das nicht funktionieren. Sudo und dementsprechend gksudo sind das Mittel der Wahl. 😉

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

Erzähl' das mal einem gewissen User, vorn mit "B", hinten mit "7", der gksu für sich mit Schreibfaulheit begründend (und das bei ihm) zum Quasiprinzip erkoren hat!

Davon abgesehen funktioniert hier mit LXenial - und ich habe garantiert keinen aktivierten root-Account - testweise folgendes klaglos ohne solche Ausgaben:

~$ gksu leafpad
~$ 

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 11260

Wohnort: München

axt schrieb:

Erzähl' das mal einem gewissen User, vorn mit "B", hinten mit "7", der gksu für sich mit Schreibfaulheit begründend (und das bei ihm) zum Quasiprinzip erkoren hat!

Wenn er sich einen Alias dafür auf gksudo angelegt hat, ist das ja ok, ansonsten kann man in interessante Probleme beim Quoting laufen: https://bugs.launchpad.net/ubuntu/+source/gksu/+bug/1186676

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

Ach, der Bugreport ist erst 35 Monate alt, da kann man schon noch undecided sein.

seahawk1986 schrieb:

Wenn er sich einen Alias dafür auf gksudo angelegt hat, ist das ja ok,

Apropos...gksudo ist ein Link auf gksu. Und nu'? 😉

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 11260

Wohnort: München

Link ja, aber unterschiedliche Funktion laut Manpage: http://linux.die.net/man/1/gksudo

This manual page documents briefly gksu and gksudo
gksu is a frontend to su and gksudo is a frontend to sudo. Their primary purpose is to run graphical commands that need root without the need to run an X terminal emulator and using su directly.

Notice that all the magic is done by the underlying library, libgksu. Also notice that the library will decide if it should use su or sudo as backend using the /apps/gksu/sudo-mode gconf key, if you call the gksu command. You can force the backend by using the gksudo command, or by using the --sudo-mode and --su-mode options.

If no command is given, the gksu program will display a small window that allows you to type in a command to be run, and to select what user the program should be run as. The other options are disregarded, right now, in this mode.

axt

Anmeldungsdatum:
22. November 2006

Beiträge: 34254

seahawk1986 schrieb:

Link ja, aber unterschiedliche Funktion laut Manpage

Nochmal:

gksudo ist ein Link auf gksu.

Wir reden hier von Ubuntu (also einer Linux-Distribution, die durchaus das Eine oder Andere verändert hat, sprich allgemeine Manpage her oder hin), derzeit 16.04. Link bedeutet, es ist egal, ob gksu oder gksudo, der Verweis darauf, ausgeführt wird.

Ich werde auch weiterhin gksudo und nicht gksu verwenden, schon um keine zusätzlichen Irritationen zu schaffen. Fakt ist jedenfalls, daß Cruiz' Erklärungsversuch nicht zutreffen kann, die Fehlerursache eine andere sein muß.

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 11260

Wohnort: München

axt schrieb:

seahawk1986 schrieb:

Link ja, aber unterschiedliche Funktion laut Manpage

Nochmal:

gksudo ist ein Link auf gksu.

Ja genauso wie bei Ubuntu 16.04 poweroff, shutdown und reboot Links auf systemctl sind - ist ja nicht schwer das erste Argument, mit dem das Programm aufgerufen wird, auszuwerten, um die Funktion des Programms zu ändern...

Ich nehme z.B. eine test.py mit diesem Inhalt

1
2
3
4
5
6
7
8
#!/usr/bin/env python3

import sys

if sys.argv[0] == "test.py":
    print("Foo")
elif sys.argv[0] == "symlink":
    print("Bar")

Dann lege ich einen Symlink darauf an:

ln -s test.py symlink

Und rufe beide Varianten auf:

$ python3 test.py
Foo
$ python3 symlink
Bar

Bei gksudo (http://archive.ubuntu.com/ubuntu/pool/universe/g/gksu/gksu_2.0.2.orig.tar.gz Datei gksu/gksu.c Zeile 588 ff.) ist das ähnlich gelöst - er schaltet dann einfach in den SUDO_MODE, nimmt also sudo statt su als Backend (und ja, man kann mit Argumenten für beide Varianten das Verhalten jeweils zum anderen ändern, aber dann spart man sich keine Tipparbeit mehr 😉):

1
2
3
4
5
6
  { /* support gksu_sudo_run */
    gchar *myname = g_path_get_basename (argv[0]);
    if (!strcmp(myname, "gksudo"))
      run_mode = SUDO_MODE;
    g_free (myname);
  }

hakel

Anmeldungsdatum:
13. August 2009

Beiträge: 23336

Besser gleich "sudo nano" nehmen angewöhnen, wenn man schon im Terminal ist. 😈

-christopher-

(Themenstarter)

Anmeldungsdatum:
20. Dezember 2011

Beiträge: 71

Dankeschön das ihr mir gksu/gksudo so ausführlich erklärt habt, mit gksudo gedit hat es geklappt ☺ . Und gksu funktioniert heute auch 😲!

Prioinix

Anmeldungsdatum:
10. August 2009

Beiträge: 220

Wohnort: Bayern

axt schrieb:

Davon abgesehen funktioniert hier mit LXenial - und ich habe garantiert keinen aktivierten root-Account - testweise folgendes klaglos ohne solche Ausgaben:

~$ gksu leafpad
~$ 

Gnome-Terminal funktioniert auch, mit Guake-Terminal nur gksudo ☺

Antworten |