lwc:programming:bash:systemd

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
lwc:programming:bash:systemd [2022/08/18 19:57] John Harrisonlwc:programming:bash:systemd [2023/10/06 15:03] (current) John Harrison
Line 6: Line 6:
   * enable the service: ''sudo systemctl enable application.service''   * enable the service: ''sudo systemctl enable application.service''
  
 +==== Make the service restart always ====
 +''Restart Always'' in service has limits. Kill 'em limits:
 +  * in ''[unit]'' add ''StartLimitIntervalSec=0'' so systemd will continue to try to restart the service forever
 +  * in ''[Service]'' add ''RestartSec=1'' to have systemd retry every second (instead of the default every 100ms)
 +
 +==== Make a service start after a USB connection ====
 +  * plug in the usb device look up the vender id and product id of the USB device. ''lsusb'' or ''usbreset'' will both give you this information
 +  * create a file in ''/etc/udev/rules.d'' for example ''/etc/udev/rules.d/80-local.rules'' and put in it something like this example:
 +<code>
 +ACTION=="add", ATTR{idVendor}=="0582", ATTR{idProduct}=="01d6", TAG+="systemd", ENV{SYSTEMD_WANTS}="jackd.service"
 +</code>
 +//[[https://blog.nostatic.org/2020/08/starting-jack-automatically-when-usb.html|source]]//
 +
 +==== Make a service start after USB device initializes on bootup ====
 +//Example//
 +  * create ''/etc/udev/rules.d/20-usb-bus.rules'' with content: ''KERNEL=="usb[1-2]", TAG+="systemd"''
 +  * reboot or udev rules reload and now voila: ''systemctl status dev-bus-usb-001-001.device''
 +  * then in ''[Unit]'' you can do something like ''After=dev-bus-usb-001-001.device dev-bus-usb-002-001.device''
 +//[[https://superuser.com/questions/1322777/in-systemd-service-file-how-do-i-say-after-usb-is-ready|source]]//
  
 ===== References ===== ===== References =====
  • lwc/programming/bash/systemd.1660870674.txt.gz
  • Last modified: 2022/08/18 19:57
  • by John Harrison