У меня есть простой сценарий выскочки:
start on started network-services
respawn
respawn limit 100 5
setuid www-data
exec node /var/testapp/app.js >> /var/log/testapp.log 2>&1
post-start exec echo "Server was (re)started on $(date)" | mail -s "Crashing Server (re)starting" admin@sample-test.com
но поскольку я запускаю приложение узла как www-data, у меня нет прав на testapp.log
.
Каков наилучший подход к решению этой проблемы?
Я бы предпочел не создавать файл журнала с «www-данными» в качестве владельца, потому что я хотел бы выполнить как можно меньше шагов для установки. Я бы также предпочел не запускать приложение как «www-data» с помощью sudo:
exec sudo -u www-data node /var/testapp/app.js >> /var/log/testapp.log 2>&1
потому что, когда я делаю это, root также запускает процесс. Может быть, я ошибаюсь, но я вижу это как проблему безопасности. Если это не проблема безопасности - пожалуйста, просветите меня.