chown Befehl in einem Script

f.gruber

f.gruber

Eroberer
Hallo,
ich lade mit einem Script Dateien zu einem Webhost.
Ich möchte in dem Script den Eigentümer der Datei(en) auf wwwrun.www ändern.
Dazu steht im Code der Befehl
Code:
chown wwwrun.www $files
Das geht aber nur als root.
Ich weiß, dass ich das Script mit sudo aufrufen könnte, aber das ist halt umständlich, da ich dieses Script ziemlich oft aufrufe.

Daher habe ich ein kleines Script erstellt chown.sh

Code:
user=$1
group=$2
filePattern=$3
chown $user.$group $filePattern

Mit visudo habe ich In etc/sudoers folgende Zeile hinzugefügt

Code:
myusername    ALL = (root) NOPASSWD:/usr/local/bin/chown.sh

Rufe ich nun testweise das Script auf mit chown.sh wwwrun www myscript.php so erhalte ich die Meldung

chown: der Eigentümer von 'myscript.php' wird geändert: Die Operation ist nicht erlaubt

Habe ich einen Fehler gemacht oder verstehe ich etwas nicht richtig?
Danke für jeden Tipp

Mein System: openSuse Leap 15.3
 
M

marce

Kaiser
... du solltest vermutlich
Code:
sudo chown.sh ...
verwenden...
 
M

marce

Kaiser
... und damit kannst Du Dir das chown.sh-Script direkt sparen und chown für sudo freigeben und das im Haupt-Script verwenden.
 
M

marce

Kaiser
eine saubere sudo-konfig für chown (einen einzelnen Befehl) ist besser als ein ggf. nicht 100% kontrollierbares Script mit sudo ausführen zu dürfen (mit dem dann beliebige Befehle ausführbar wären).
 
f.gruber

f.gruber

Eroberer
Ich brauche das ja nur auf meinem eigenen Rechner.
 

Ähnliche Themen

Shellskript per PHP aufrufen funktioniert nicht

rsnapshot und ein Rechteproblem?

RPM Build Problem

sudoers ?

faxen geht nicht mehr

Oben