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

Linux

48726 readers
908 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?

top 9 comments
sorted by: hot top controversial new old
[–] z2k_@beehaw.org 5 points 2 years 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 5 points 2 years ago* (last edited 2 years 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?

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

Yeah it's pretty slick

[–] z2k_@beehaw.org 1 points 2 years ago

Yes, you can get the full log with journalctl.

[–] nixfreak@sopuli.xyz 1 points 2 years ago

journal -xu, what do you get?

[–] llii@feddit.de 1 points 2 years ago* (last edited 2 years ago)

I also would recommend to find out why the service crashes.

You can try to increase the verbosity of rtl-433 with the arguments -v, -vv, -vvv and -vvvv. With every „v“ you get more information on what the program does.

Maybe you can get a hint why it crashes.

Edit: For this it’s best to run rtl-443 directly in a terminal without the service so that you can directly see the output.

load more comments
view more: next ›