Ich muss ein Anmeldeskript starten. Dieses Anmeldeskript enthält mehrere Befehle wie: * cp, ln, und chown. * Aber "chown" müssenroot sein, um effizient zu sein. Mein Skript läuft also gut, außer dem Befehl "chown".Exec Skript als root in Autostart
Meine Umgebung: Debian Jessie, LXDE.
Mein Skript (in /usr/local/bin/transfertPOL.sh):
#!/bin/bash
#transfert de POL au démarrage de la session
groupe=$(id -gn $1)
uid=$(id -u $1)
POL=/var/POL
home=$(eval echo ~$1)
lien=$home/.PlayOnLinux
#changement de propriétaire du dossier
sudo chown -h -R $1:$groupe $POL
ln -s $POL $lien
sudo chown -h -R $1:$groupe $lien
#Copie des raccourcis sur le Bureau
cp --preserve=ownership $POL/shorcuts/*.desktop $home/Desktop
My Desktop Eintrag in /etc/xdg/autostart/transfertPOL.desktop:
[Desktop Entry]
Type=Application
Exec=sh /usr/local/bin/transfertPOL.sh
Die Exec, versuchte ich mehrere Dinge:
Exec=sh /usr/local/bin/transfertPOL.sh #Work, but the chown don't
Exec=/bin/bash/ -c "sudo /usr/local/bin/transfertPOL.sh" #doesn't work
Exec=sudo sh /usr/local/bin/transfertPOL.sh #Work, but the chown don't
Für diesen einen, ich habe eine /etc/sudoers.d/transfert mit
erstellt%users ALL=NOPASSWD: /usr/local/bin/transfertPOL.sh
Das Skript ist eine symbolische Verknüpfung zum lokalen Ordner PlayOnLinux. Jeder Benutzer muss auf diesen spezifischen POL-Ordner zugreifen können. Wenn sich ein Benutzer anmeldet, ändert der Chown Ordnerrechte.
Haben Sie eine Idee, mir zu helfen?
Dank