networkmanager dispatcher.d

03/09/2007 - 16:27 von Ben E. Hard | Report spam
Hallo,

mit dem Network Manager werden beim Aufbauen einer Netzwerkverbindung
Skripte ausgeführt, die unter /etc/NetworkManager/dispatcher.d liegen. Das
klappt soweit bei mir. Jetzt würde ich gerne automatisch mein
GMX-webdav-Verzeichnis mounten lassen, allerdings als user "ich" und nicht
als root (nur so liest mount die Datei secrets
unter /home/"ich"/.davfs2/secrets aus und mountet mit den richtigen Lese-
und Schreibrechten) . Die Skripte werden alle als root ausgeführt. Wie kann
ich das Skript so schreiben, dass der mount-Befehl trotzdem als user
ausgeführt wird (habe von bash-programmcode keine Ahnung).

Bisher sieht das Skript so aus:
#!/bin/sh
#/etc/NetworkManager/dispatcher.d/gmxstore

#Aktion einlesen
ACTION=$2

#ist das Netzwerk oben?
if [ "$ACTION" = "up" ]; then
#gmxstore mounten
mount /home/bve/gmxstorage
fi

In /etc/fstab steht dazu:

https://mediacenter.gmx.net /home/bve/gmxstorage davfs
noauto,user 0 0

Danke,
Gruß
Ben
 

Lesen sie die antworten

#1 Bodo Schulz
05/09/2007 - 05:46 | Warnen spam
Moin Moin!

Ben E. Hard wrote:

Hallo,

mit dem Network Manager werden beim Aufbauen einer Netzwerkverbindung
Skripte ausgeführt, die unter /etc/NetworkManager/dispatcher.d liegen. Das
klappt soweit bei mir. Jetzt würde ich gerne automatisch mein
GMX-webdav-Verzeichnis mounten lassen, allerdings als user "ich" und nicht
als root (nur so liest mount die Datei secrets
unter /home/"ich"/.davfs2/secrets aus und mountet mit den richtigen Lese-
und Schreibrechten) . Die Skripte werden alle als root ausgeführt. Wie
kann ich das Skript so schreiben, dass der mount-Befehl trotzdem als user
ausgeführt wird (habe von bash-programmcode keine Ahnung).



Schup ins Blaue, da nicht getestet:

if [ "$ACTION" = "up" ]; then
#gmxstore mounten
mount /home/bve/gmxstorage



su $USER - -c "mount /home/bve/gmxstorage"

fi



Gruß,

Bodo

Ähnliche fragen