Johoda? schrieb
Ich habe es für mich super umsetzen können. Bei mir wird ...
Allerdings würde das
#!/bin/sh
pkexec /usr/bin/pacman -Syu
absolut das Gleiche leisten wie dein gesamtes Skript, außer, daß nicht unendlich viele Paßwortabfragen möglich sind.
Oder gleich als Alias für deine Shell ablegen, erspart ein Skriptaufruf.
Mit gksudo ist es ebenfalls machbar, allerdings prüft gksudo nicht selbständig ob es schon als root/uid=0 gestartet wird und gksudo braucht für interaktive Aktionen (wie pacman -Syu) eine eigene Shell/Terminal, z.B.
#!/bin/sh
#
# Define your X terminal with options
XTerminal="/usr/bin/xterm -fg black -bg red"
# -e is an xterm option to define the command to run
# Use your own X terminal option
gksudo "$XTerminal -e /usr/bin/pacman -Syu"
Warum ich gksudo hier ungern verwenden würde:
a) Da es nicht wie pkexec die gerade aktive Shell weiternutzt, braucht es AFAIK eine eigene, unter X auch ein Terminal. Unachtsamkeit bzw. Programmfehler können dann u.U. dazu führen, daß dem sudo-User quasi eine vollwertige Root-Shell/Terminal "geschenkt" wird = böse.
b) Dieses Terminal schließt sich nach Beendigung sofort wieder, Meldungen/Auffälligkeiten sind somit nicht mehr nachvollziehbar, daß wäre auch der Grund, warum ich persönlich solche wichtigen Vorgänge bewußt als root mache (also z.B. per "su -" in einer eigenen Shell, und auch ohne --noconfirm).