Linux: Start daemon on connected USB-serial dongle Linux: Start daemon on connected USB-serial dongle linux linux

Linux: Start daemon on connected USB-serial dongle


Create a udev rule like

# cat /etc/udev/rules.d/95-serialdaemon.rulesKERNEL=="ttyUSB0", TAG+="systemd", ENV{SYSTEMD_WANTS}="serialdaemon.service"

Create a systemd service like

# cat /lib/systemd/system/serialdaemon.service[Unit]Description=USB serial to socket bridgeAfter=remote-fs.targetAfter=syslog.target[Service]ExecStart=/mnt/serialdaemon.sh

Create the executable file

# cat /mnt/serialdaemon.sh#!/bin/shdate +%F-%T >> /var/log/serialdaemon.log/usr/local/serialdaemon/serialdaemon -serial /dev/ttyUSB0 -port 15789 -baud 38400 >> /var/log/serialdaemon.log 2>&1date +%F-%T >> /var/log/serialdaemon.log


Since the link in my further comment seems to solve this problem, here is the solution for using udev for starting a daemon when a certain usb device is plugged in:

Proper(-ish) way to start long-running systemd service on udev event (device hotplug)