Hello,

I have been trying to create a system service that would run a script on shutdown (hence why I went for a system service over a user service) and landed on something like this

[Unit]
Description=Run backup script on shutdown
DefaultDependencies=no
Before=poweroff.target halt.target
Requires=network.target

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/bin/true
ExecStop=/var/home/blackeco/scripts/backup.sh
User=blackeco
Group=blackeco

[Install]
WantedBy=poweroff.target halt.target

Unfortunately, when the shutdown occurs, systemd fails to execute the script:

backup-on-shutdown.service: Unable to locate executable '/var/home/blackeco/scripts/backup.sh': Permission denied
backup-on-shutdown.service: Failed at step EXEC spawning /var/home/blackeco/scripts/backup.sh: Permission denied

This script is correctly owned by user blackeco and permissions look fine

$ ls -la /var/home/blackeco/scripts
drwxr-xr-x. 1 blackeco blackeco 154  5 Feb. 13:50 ./
drwxr-xr-x. 1 blackeco blackeco 116  3 Feb. 13:07 ../
-rwxr-xr-x. 1 blackeco blackeco 794  4 Feb. 15:44 backup.sh*

I’m very puzzled as to why. I’m running Bluefin 41 (itself based on Fedora Silverblue 41).

  • @[email protected]
    link
    fedilink
    English
    1
    edit-2
    2 days ago

    What are the permissions all the way to the script ? Can blackeco reach the script ?

    • BlackEcoOP
      link
      fedilink
      English
      12 days ago
      drwxr-xr-x. 1 root root   26 28 Jan. 13:03 /var
      drwxr-xr-x. 1 root root  228  3 Feb. 09:55 /var/home
      drwx------. 1 blackeco blackeco 1544  5 Feb. 17:52 /var/home/blackeco
      drwxr-xr-x. 1 blackeco blackeco 116  3 Feb. 13:07 /var/home/blackeco/scripts
      -rwxr-xr-x. 1 blackeco blackeco 794  4 Feb. 15:44 /var/home/blackeco/scripts/backup.sh*
      

      And yes, blackeco can reach it