
Ich erstelle eine Servicedatei, vaultwarden.service, die wie folgt aussieht (hier wird nur ein Teil davon angezeigt):
# The user/group vaultwarden is run under. the working directory (see below) should allow write and read access to this user/group
User=vaultwarden
Group=vaultwarden
# The location of the compiled binary
ExecStart=/home/vaultwarden/vaultwarden # user is vaultwarden, binary vaultwarden
Wenn der Teil der Servicedatei wie der obige Code aussieht, erhalte ich eine Fehlermeldung
vaultwarden.service: Failed at step EXEC spawning /home/vaultwarden/vaultwarden: Permission denied
Aber wenn man einfach die Binärdatei hineinkopiert, vaultwarden
funktioniert /usr/bin/vaultwarden
es. Ich weiß nicht, wo das Problem liegt. Gibt es ein Problem oder eine Regel, die besagt, dass in der Servicedatei kein Pfad im Home-Ordner eines Benutzers angegeben werden kann? Ich habe alle relevanten Links und Beiträge gelesen und alles ausprobiert, aber das Problem besteht immer noch.
PS: Die Zugriffsrechte sind gut, ich ändere sogar den Besitzer des gesamten Home-Ordners des Vaultwarden-Benutzers auf 777, wechsle sogar zum Root-Besitzer (für den Fall, dass Root die Binärdatei ausführen sollte, aber 777 sollte das Problem lösen …)
Irgendwelche Hinweise?
Antwort1
In meiner Servicedatei standen außerdem diese Zeilen:
PrivateDevices=true
ProtectHome=true
Diese Parameter erlauben keine Manipulation des Home-Ordners. Sie sollten auskommentiert oder aus der Servicedatei gelöscht werden.