Bash-Dateiberechtigungsfehler beim Anhängen an eine Datei

Bash-Dateiberechtigungsfehler beim Anhängen an eine Datei

Ich installiere Voipmonitor, dessen Setup-Skript diesen Schritt enthält:

sudo echo " * * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab

Ich erhalte diesen Fehler

-bash: /etc/crontab: Permission denied

Die Dateiberechtigungen sind:

-rw-r--r-- 1 root root 51 Feb 15 04:45 /etc/crontab

Antwort1

Der Befehl funktioniert nicht, da auf den Befehl zwar sudo zutrifft, die Umleitung jedoch mit dem aktuellen Benutzer erfolgt und somit die Berechtigungen nicht erteilt werden. Daher läuft echo als root, allerdings >> /etc/crontabmit den Benutzerberechtigungen aus sudo.

Das wird funktionieren:

sudo /bin/bash -c '( echo " * * * * * root php /var/www/html/php/run.php cron" >> /etc/crontab )'

Antwort2

Du könntest benutzen:

echo " * * * * * root php /var/www/html/php/run.php cron" | sudo tee -a /etc/crontab

verwandte Informationen