How to run as www-data
Meine Webseiten werden von Zeit zu Zeit über einen cronjob auf Fehler überprüft, backups gemacht, etc.
Der cronjob startet ein php-Script und wurde für den Benutzer root eingerichtet. Aus diesem Grund würde jede neue Datei mit root-Rechten angelegt werden, wenn das Script direkt mit php [script] aufgerufen werden würde. Darauf hat der Webserver aber keinen Zugriff mehr.
Deshalb wäre es sinnvoller das Script direkt mit den gleichen Eigenschaften wie der Webserver laufen zu lassen. Das kann man wie folgt machen:
sudo -H -u www-data php /var/www/cron.php
Bei diesem Befehl wird mit sudo das nächste Kommand als www-data Benutzer ausgeführt.