So I followed this youtube video on setting up RTL-433 service on a Ubuntu server. Problem is, it seems to keep failing after a while. Sometimes doing a systemctl start service doesn’t work and I will have to reboot the system and then it will work. It will work for a while and later in the day it will suddenly stop. Sometimes I can do a systemctl start, but sometimes not.

Anyone know how I can have this service constantly up and running, and restart if it fails?

  • z2k_@beehaw.org
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 year ago

    To have it automatically restart on failure, you can add the following to your systemd unit:

    [Service]
    Restart=on-failure
    RestartSec=5s
    

    See this blog post for more information.

    But to find the root cause of why it’s failing, you can run systemctl status <service> when it fails to get the most recent logs and hopefully an error as to why it failed.

    • falchy@sopuli.xyz
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      1 year ago

      Still relatively beginner, but wouldn’t ‘journalctl -u nameofservice.service’ also give you in depth logs over a longer period of time?

      • redawl@sh.itjust.works
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Adding to this, journalctl -fu service will jump to the bottom of the log and effectively tail -F the log so any new output will be appended to your terminal

        • falchy@sopuli.xyz
          link
          fedilink
          English
          arrow-up
          2
          ·
          1 year ago

          Well that’s way easier than my utilization of less or watch or tail that Ive been doing.

        • Nick@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          edit-2
          1 year ago

          I second journalctl -f -u SERVICE_NAME.service it’s great and just works well. The .service isn’t required, but it’s a good habit to get into since systemd also has mounts and timers.