Vielleicht geht das:
Code: Alles auswählen
#!/bin/bash
# Dingens
sudo cd /var/www/$contenidoverzeichnis
sudo chown ${USER:=$(/usr/bin/id -run)}:$USER /var/www/$contenidoverzeichnis
sudo chmod 755 /var/www/$contenidoverzeichnis
Wobei $USER manchmal nicht gesetzt ist und stattdessen die id genommen werden muss.
Aber anzunehmen ist, dass $USER auch der eingeloggte User in Linux ist, weil das beim ordentlichen Login gesetzt wird:
Aber haben wir einen ordentlichen Login in Linux, wenn Contenido aus HTTP installiert wird?
Zum eine, FTP ist ein ordentlicher Linux User und wenn dann die Ausführungsrechte von PHP auch der Owner ist, dann entspricht das auch einem ordentlichen $USER.
Einige Hoster setzen FTP und PHP in eine Gruppe gleichen Namens, weshalb
chown $USER:$USER schon passen würde.
Aber praktisch könnte man auch statt $USER den Usernamen ausschreiben und der Gruppe einen anderen Namen geben.
Das geht aber vermutlich nur manuell, da das Installationsscript den Namen nicht weiß, sondern nur von z.B. $USER beziehen kann.
In welchen Gruppen der User ist, kann man hiermit finden:
Aber was ist, wenn da mehrere Gruppen auftauchen? Welche ist dann die richtige?
Kurzum: Vermutlich läuft es darauf hinaus, dass man für
einen Server ein solches Shell-Script optimieren könnte bis es einwandfrei läuft, aber ob es auf anderen Servern läuft, bezweifle ich mal.
Jeder Hoster kocht seinen eigenen Brei.
Fliegt der Bauer übers Dach, ist der Wind weißgott nicht schwach.