Hi there, I'm trying to run gpsd as a systemd service on Ubuntu 18.04 but am unable to do so without the -N flag. I've pasted some command line output below where I start with a functioning service, where I'm using the -N flag, then I remove that flag from the ExecStart line in the gpsd.service file, reload the daemon and reenable the service and the service doesn't start.
I've got a workaround (just leave the flag) but am wondering if I've either found a bug or misunderstand the command line argument.
Thanks in advance for any help.
address@hidden:~$ cat /etc/systemd/system/gpsd.service
[Unit]
Description=GPS (Global Positioning System) Daemon
Requires=gpsd.socket
# Needed with chrony SOCK refclock
After=chronyd.service
[Service]
ExecStart=/usr/sbin/gpsd -N -r udp://
192.168.1.206:60001[Install]
WantedBy=multi-user.target
Also=gpsd.socket
address@hidden:~$ sudo systemctl daemon-reload
address@hidden:~$ sudo systemctl reenable gpsd.service
Removed /etc/systemd/system/sockets.target.wants/gpsd.socket.
Removed /etc/systemd/system/multi-user.target.wants/gpsd.service.
Created symlink /etc/systemd/system/multi-user.target.wants/gpsd.service → /etc/systemd/system/gpsd.service.
Created symlink /etc/systemd/system/sockets.target.wants/gpsd.socket → /lib/systemd/system/gpsd.socket.
address@hidden:~$ sudo systemctl start gpsd.service
address@hidden:~$ systemctl status gpsd.service
● gpsd.service - GPS (Global Positioning System) Daemon
Loaded: loaded (/etc/systemd/system/gpsd.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-04-05 20:50:47 UTC; 3s ago
Main PID: 1299 (gpsd)
Tasks: 1 (limit: 4064)
CGroup: /system.slice/gpsd.service
└─1299 /usr/sbin/gpsd -N -r udp://
192.168.1.206:60001address@hidden:~$ sudo systemctl stop gpsd.service
Warning: Stopping gpsd.service, but it can still be activated by:
gpsd.socket
address@hidden:~$ sudo vi /etc/systemd/system/gpsd.service
address@hidden:~$ cat /etc/systemd/system/gpsd.service
[Unit]
Description=GPS (Global Positioning System) Daemon
Requires=gpsd.socket
# Needed with chrony SOCK refclock
After=chronyd.service
[Service]
ExecStart=/usr/sbin/gpsd -r udp://
192.168.1.206:60001[Install]
WantedBy=multi-user.target
Also=gpsd.socket
address@hidden:~$ sudo systemctl daemon-reload
address@hidden:~$ sudo systemctl reenable gpsd.service
Removed /etc/systemd/system/sockets.target.wants/gpsd.socket.
Removed /etc/systemd/system/multi-user.target.wants/gpsd.service.
Created symlink /etc/systemd/system/multi-user.target.wants/gpsd.service → /etc/systemd/system/gpsd.service.
Created symlink /etc/systemd/system/sockets.target.wants/gpsd.socket → /lib/systemd/system/gpsd.socket.
address@hidden:~$ sudo systemctl start gpsd.service
address@hidden:~$ systemctl status gpsd.service
● gpsd.service - GPS (Global Positioning System) Daemon
Loaded: loaded (/etc/systemd/system/gpsd.service; enabled; vendor preset: enabled)
Active: inactive (dead) since Fri 2019-04-05 20:51:41 UTC; 4s ago
Process: 1393 ExecStart=/usr/sbin/gpsd -r udp://
192.168.1.206:60001 (code=exited, status=0/SUCCESS)
Main PID: 1393 (code=exited, status=0/SUCCESS)