You can now to launch the server:
$ taskdctl start
This command launched the server as a daemon process. This command
TASKDDATA variable. Your server is now
running, and ready for syncing.
Note that to stop the server, you use:
$ taskdctl stop
Check that your server is running by looking in the
file, or running this:
$ ps -leaf | grep taskd
A daemon server is typically how you would want to run Taskserver, but there may be times when you need to run the server attached to a terminal. These two commands are identical:
$ taskdctl start $ taskd server --data $TASKDDATA --daemon
By omitting the
--daemon option, the server remains
attached to the terminal. Then to stop the server you can enter
The interactive mode is really only useful for debugging, in conjunction with TLS debug mode, like this:
$ taskd config debug.tls 3 $ taskd server --data $TASKDDATA ...
debug.tls setting that is non-zero, you see
lots of security-related diagnostic output.
You can start Taskserver using a systemd-unitfile like the following (please add the contents of
$TASKDDATA not the variable itself). Running the Taskserver as root is not recommended, please add an appropriate user and group to run the daemon with (
[Unit] Description=Secure server providing multi-user, multi-client access to Taskwarrior data Requires=network.target After=network.target Documentation=https://taskwarrior.org/docs/#taskd [Service] ExecStart=/usr/local/bin/taskd server --data $TASKDDATA Type=simple User=$TASKDUSER Group=$TASKDGROUP WorkingDirectory=$TASKDDATA PrivateTmp=true InaccessibleDirectories=/home /root /boot /opt /mnt /media ReadOnlyDirectories=/etc /usr [Install] WantedBy=multi-user.target
Afterwards prepare systemd to recognise the file.
$ cp taskd.service /etc/systemd/system $ systemctl daemon-reload $ systemctl start taskd.service $ systemctl status taskd.serviceIn case everything is running fine, enable the script to start Taskserver on every boot.
$ systemctl enable taskd.service