this post was submitted on 11 Jun 2023
9 points (100.0% liked)

Linux

48313 readers
806 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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?

you are viewing a single comment's thread
view the rest of the comments
[–] z2k_@beehaw.org 5 points 1 year ago (1 children)

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 6 points 1 year ago* (last edited 1 year ago) (2 children)

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

[–] z2k_@beehaw.org 1 points 1 year ago

Yes, you can get the full log with journalctl.

[–] redawl@sh.itjust.works 1 points 1 year ago (2 children)

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

[–] nick_99@sh.itjust.works 2 points 1 year ago* (last edited 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.

[–] falchy@sopuli.xyz 2 points 1 year ago (1 children)

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

[–] redawl@sh.itjust.works 1 points 1 year ago

Yeah it's pretty slick