So you edited default transmission-daemon settings file (/etc/default/transmission-daemon
) then restarted the daemon and nothing happened? Well... thanks to this thread on unix.stackexchange.com I learned that transmission-daemon is managed by systemctl
and because of that init.d
scripts that use mentioned default config are ignored.
To tell the daemon that you want him to create a pid and a log files you need to edit /lib/systemd/system/transmission-daemon.service
file to look like this:
[Unit]
Description=Transmission BitTorrent Daemon
After=network.target
[Service]
User=debian-transmission
Type=notify
RuntimeDirectory=transmission-daemon
LogsDirectory=transmission-daemon
ExecStart=/usr/bin/transmission-daemon -f --log-error --log-debug --logfile /var/log/transmission-daemon/transmission.log --pid-file /run/transmission-daemon/transmission.pid
ExecStop=/bin/kill -s STOP $MAINPID
ExecReload=/bin/kill -s HUP $MAINPID
[Install]
WantedBy=multi-user.target
Where:
RuntimeDirectory
tells systemd to createtransmission-daemon
folder inside/run
owned by daemon's user. We want this because the daemon runs underdebian-transmission
username which doesn't have access to the/run
so it won't be able to write to this directory.LogsDirectory
tells systemd to createtransmission-daemon
folder inside/var/log
. Reasoning is the same as above.
Now you can restart the daemon (don't forget about systemctl daemon-reload before restarting) and the log and the pid files should be in place.