Hallo zusammen,
Ich möchte gerne mit meinem Programm Dateien aus /usr/share/icons/... herauskopieren. Dazu benötigt das Programm aber Root-Access.
Wie kann ich das Problem lösen?
Habe mir das so vorgestellt: Der User drückt auf den Button für "Kopieren", dann öffnet sich die Gnome-Passwortabfrage, nach Eingabe des Passworts werden die Dateien kopiert. Beim zweiten Klick auf "Kopieren" muss das Passwort dann nicht mehr extra eingegeben werden.
Geht das irgendwie?
Viele Grüße, Meister0815
[gelöst] Dateioperationen, die Root erfordern, ausführen
-
- Beiträge: 43
- Registriert: Sa 26. Jun 2010, 17:10
[gelöst] Dateioperationen, die Root erfordern, ausführen
Zuletzt geändert von meister0815 am Do 21. Okt 2010, 18:37, insgesamt 1-mal geändert.
Re: Dateioperationen, die Root erfordern, ausführen
Lesen muss doch möglich sein ohne root access.meister0815 hat geschrieben: Ich möchte gerne mit meinem Programm Dateien aus /usr/share/icons/... herauskopieren. Dazu benötigt das Programm aber Root-Access.
-
- Beiträge: 43
- Registriert: Sa 26. Jun 2010, 17:10
Re: Dateioperationen, die Root erfordern, ausführen
Es geht aber um kopieren, war vielleicht etwas missverständlich geschrieben.theo hat geschrieben:Lesen muss doch möglich sein ohne root access.meister0815 hat geschrieben: Ich möchte gerne mit meinem Programm Dateien aus /usr/share/icons/... herauskopieren. Dazu benötigt das Programm aber Root-Access.
Konkret:
/usr/share/icons/hicolor/22x22/status/news_feed.png.backup soll kopiert werden in die vorhandene Datei
/usr/share/icons/hicolor/22x22/status/news_feed.png (Also diese Datei soll mit dem Backup überschrieben werden)
Überhaupt werde ich wohl einiges in den Verzeichnissen rumfuhrwerken, daher benötige ich dafür root-Zugang.
Das ganze Programm mit gksudo zu starten hilft mir leider auch nicht, da ich auch Dateien im Benutzerverzeichnis bearbeite. Wenn ich mit gksudo das Programm starte, weiß ich aber nicht, wie das Benutzerverzeichnis lautet.
Darum würde ich gerne nur für ausgewählte Aktionen root-Zugang erlangen.
-
- Beiträge: 657
- Registriert: Sa 9. Jan 2010, 17:32
- OS, Lazarus, FPC: Linux 2.6.x, SVN-Lazarus, FPC 2.4.0-2
- CPU-Target: 64Bit
Re: Dateioperationen, die Root erfordern, ausführen
Das Problem hab ich schon mal gelöst.
Im Prinzip macht man es so, dass du einen TProcess aufrufst.
In dem Fall "gksudo cp src/file.end dest/ination/".
Mehrere Aufrufe von "gksudo" fragen nicht einzeln das Passwort ab.
Falls du komplexere Sachen als nur kopieren machen willst, solltest du die komplexen Sachen in ein Script auslagern (so hab ichs gemacht), oder ein Hilfsprogramm schreiben (oder das GUI-Programm vorm Erstellen der GUI verzweigen, falls Kommandozeilenparameter kommen)
Im Prinzip macht man es so, dass du einen TProcess aufrufst.
In dem Fall "gksudo cp src/file.end dest/ination/".
Mehrere Aufrufe von "gksudo" fragen nicht einzeln das Passwort ab.
Falls du komplexere Sachen als nur kopieren machen willst, solltest du die komplexen Sachen in ein Script auslagern (so hab ichs gemacht), oder ein Hilfsprogramm schreiben (oder das GUI-Programm vorm Erstellen der GUI verzweigen, falls Kommandozeilenparameter kommen)
-
- Beiträge: 768
- Registriert: Mo 4. Mai 2009, 13:24
- OS, Lazarus, FPC: Arch Linux, Lazarus 1.3 r44426M FPC 2.6.4
- CPU-Target: x86_64-linux-qt/gtk2
- Kontaktdaten:
Re: Dateioperationen, die Root erfordern, ausführen
Und was ist mit einem System ohne GTK (d.h. kein gksudo sondern z.B. kdesu)?
-
- Beiträge: 43
- Registriert: Sa 26. Jun 2010, 17:10
Re: Dateioperationen, die Root erfordern, ausführen
Das mit gksudo ist eine gute Lösung für mich. Da mein Programm sowieso nur für Gnome-Systeme gedacht ist, sollte gksudo immer vorhanden sein.
Mal wieder Vielen Dank für Eure Hilfe!
Gruß, Meister0815.
Mal wieder Vielen Dank für Eure Hilfe!
Gruß, Meister0815.