Systemd: Difference between revisions

From DWIKI
mNo edit summary
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:


 
 


= Documentation =
= Documentation =
Line 15: Line 16:
*[[https://blog.darknedgy.net/technology/2020/05/02/0/index.html#tech-critique https://blog.darknedgy.net/technology/2020/05/02/0/index.html#tech-critique]  
*[[https://blog.darknedgy.net/technology/2020/05/02/0/index.html#tech-critique https://blog.darknedgy.net/technology/2020/05/02/0/index.html#tech-critique]  
*[https://mohsensy.github.io/sysadmin/2018/08/19/systemd-service-tutorial.html Systemd service tutorial]  
*[https://mohsensy.github.io/sysadmin/2018/08/19/systemd-service-tutorial.html Systemd service tutorial]  
 
*[https://www.freedesktop.org/wiki/Software/systemd/dbus/ https://www.freedesktop.org/wiki/Software/systemd/dbus/ Systemd and dbus]
([https://www.thegeekdiary.com/how-to-boot-into-rescue-mode-or-emergency-mode-through-systemd-in-centos-rhel-7-and-8/ Single user/emergency]
*[https://www.thegeekdiary.com/how-to-boot-into-rescue-mode-or-emergency-mode-through-systemd-in-centos-rhel-7-and-8/ Single user/emergency]


= Locations =
= Locations =
Line 25: Line 26:


 
 


= HOWTO =
= HOWTO =
==systemctl verbose==
SYSTEMD_LOG_LEVEL=debug systemctl start yourservice


==Services==
===List enabled services===
See https://www.baeldung.com/linux/systemctl-list-enabled-services
systemctl list-unit-files --state=enabled
===Edit systemd service file===
systemctl edit --full my.service


== Timers ==
== Timers ==
*https://opensource.com/article/20/7/systemd-timers
*https://wiki.archlinux.org/title/Systemd/Timers


*[https://opensource.com/article/20/7/systemd-timers https://opensource.com/article/20/7/systemd-timers]
*[https://wiki.archlinux.org/title/Systemd/Timers https://wiki.archlinux.org/title/Systemd/Timers]
*https://linuxhint.com/cron_systemd_timer/ also about random time
  man systemd.timer
  man systemd.timer
=== List active timers ===
=== List active timers ===


  systemctl list-timers
  systemctl list-timers


=== List active timers ===
 
=== List all timers ===


  systemctl list-timers --all
  systemctl list-timers --all


 
=== Enable timer ===
 
systemctl enable fstrim.timer
 
== Auto restart crashed services ==
systemctl edit elasticsearch.service
add:
[Service]
Restart=always


=== Show active timers ===
then
systemctl daemon-reload
systemctl restart elasticsearch.service


systemctl status *timer
And to get an email when service gets restarted: https://dev.to/setevoy/linux-systemd-unit-files-edit-restart-on-failure-and-email-notifications-5h3k


=== Create timer ===


  systemctl enable fstrim.timer
==Logs==
===View systemd logs===
  journalctl -u postfix


= FAQ =
= FAQ =
Line 58: Line 84:
  systemd-analyze blame
  systemd-analyze blame


 
== gateway4 has been deprecated ==
Using routes:
routes:
- to: default
  via: 192.168.1.1


== Systemd and DNS ==
== Systemd and DNS ==


  resolvectl status
  resolvectl status
===Change nameserversers resolvectl uses===
====On Ubuntu====
Edit the netplan file
netplan generate
netplan apply
=== Failed to get global data: Unit dbus-org.freedesktop.resolve1.service not found. ===
Means systemd-resolved is not running


Restart:
Restart:


  systemctl restart systemd-resolved
  systemctl restart systemd-resolved
     
     
 
=== Add nameserver ===
Sacrifice a chicken
 
=== Flush caches ===
# thing from the past?
systemd-resolve --flush-caches


== All status ==
== All status ==
Line 101: Line 156:


  systemctl daemon-reexec
  systemctl daemon-reexec
==Status==
=== Active: inactive (dead) ===
parameter ActiveState would return inactive
SubState returns dead

Latest revision as of 16:30, 21 November 2024

 


Documentation

Locations

/etc/systemd
/usr/lib/systemd/
/lib/systemd

 


HOWTO

systemctl verbose

SYSTEMD_LOG_LEVEL=debug systemctl start yourservice

Services

List enabled services

See https://www.baeldung.com/linux/systemctl-list-enabled-services

systemctl list-unit-files --state=enabled

Edit systemd service file

systemctl edit --full my.service

Timers

man systemd.timer

List active timers

systemctl list-timers


List all timers

systemctl list-timers --all

Enable timer

systemctl enable fstrim.timer

Auto restart crashed services

systemctl edit elasticsearch.service 

add:

[Service]
Restart=always

then

systemctl daemon-reload
systemctl restart elasticsearch.service

And to get an email when service gets restarted: https://dev.to/setevoy/linux-systemd-unit-files-edit-restart-on-failure-and-email-notifications-5h3k


Logs

View systemd logs

journalctl -u postfix

FAQ

Analyze boot processes

systemd-analyze blame

gateway4 has been deprecated

Using routes:

routes:
- to: default
  via: 192.168.1.1

Systemd and DNS

resolvectl status


Change nameserversers resolvectl uses

On Ubuntu

Edit the netplan file

netplan generate
netplan apply

Failed to get global data: Unit dbus-org.freedesktop.resolve1.service not found.

Means systemd-resolved is not running

Restart:

systemctl restart systemd-resolved
      
      

 

Add nameserver

Sacrifice a chicken

 

Flush caches

  1. thing from the past?
systemd-resolve --flush-caches

All status

systemctl status -a

syslog spam

https://psyq123.wordpress.com/2015/06/29/if-you-get-a-lot-of-logspam-from-systemd-in-your-varlogsyslog-this-might-help/

list available services

systemctl list-unit-files

or

systemctl list-units

 

normal interface names

net.ifnames=0

Show failed services

systemctl --failed

 

systemd: Started Session

Change loglevel to notice in /etc/systemd/system.conf

systemctl daemon-reexec

Status

Active: inactive (dead)

parameter ActiveState would return inactive

SubState returns dead