
Ich habe einen Debian-Wheezy-Server eingerichtet und verwende runit, damit meine Dienste am Laufen bleiben. Ich habe auch svlogd konfiguriert, aber da habe ich Probleme. Wenn die Dienste starten, führe ich „ps aux“ aus und sehe, dass svlogd einen Fehler hat:
runsvdir -P /home/[user]/service log:.rrent: /home/[user]/logs/gunicorn/: access denied sv
logd: pausing: unable to open current: /home/[user]/logs/celery/: access denied
Ich habe runit und svlogd als meinen Benutzer statt als root ausgeführt. Wenn ich „tail ~/logs/celery/current“ mache, sehe ich Folgendes:
2014-07-05_10:07:44.10589 If you really want to continue then you have to set the C_FORCE_ROOT
2014-07-05_10:07:44.10589 environment variable (but please think about this before you do).
2014-07-05_10:07:44.10589
2014-07-05_10:07:44.10590 User information: uid=0 euid=0 gid=0 egid=0
2014-07-05_10:07:44.10592
Ich bin mir also nicht sicher, warum die Meldung „Zugriff verweigert“ da ist
Antwort1
Der Fehler liegt daran, dass beim Versuch, es als Root auszuführen, eine bekannte Sicherheitslücke besteht. Sie sollten dies daher nur tun, wenn es unbedingt nötig ist.
Wenn Sie wirklich sicher sind, dass Sie fortfahren möchten, können Sie die Umgebungsvariable von Ihrem Terminal aus wie folgt festlegen:
export C_FORCE_ROOT="true"
Diese Variable bleibt jedoch nur während Ihrer Sitzung bestehen. Um sie „für immer“ bestehen zu lassen, fügen Sie diese Zeile zu Ihrer Datei ~/.bashrc oder ~/.profile hinzu.
export C_FORCE_ROOT="true"
Dann beziehen Sie diese Datei in die Quelle;
source ~/.bashrc