Systemd Service - stereoboy/Study GitHub Wiki
-
Official WebSite: System and Service Manager
-
SUSE Linux Systemd Document
-
Systemd Essentials: Working with Services, Units, and the Journal
-
How To Use Systemctl to Manage Systemd Services and Units
-
systemd: RequiredBy versus WantedBy
-
Writing a service that depends on Xorg
-
Run Systemd Service After Display Manager
-
Why do most systemd examples contain WantedBy=multi-user.target?
-
Pass an environment variable from current shell to a systemd unit
-
How to run script with systemd right before shutdown in Linux
-
How to run script with systemd at shutdown only (not at reboot)
- Chapter 16. Working with systemd unit files
- Chapter 26. Systemd network targets and services (/etc/systemd/system/service_name.service.d/*.conf to override)
- Network connectivity has been estabilished
- Running Services After the Network is up
- Saving 2 min by disabling Systemd-networkd-wait-online.service
- https://www.freedesktop.org/software/systemd/man/systemd.unit.html
- https://www.freedesktop.org/software/systemd/man/systemd.service.html#
- https://www.freedesktop.org/software/systemd/man/systemd.kill.html#
mkdir -p ~/.config/systemd/user
ln -s /home/wom/jylee/work/nesfr_vr_system/nesfr_vr.service ~/.config/systemd/user/nesfr_vr.service
systemctl --user daemon-reload
systemctl --user enable nesfr_vr.service
systemctl --user restart nesfr_vr.service
systemctl --user disable nesfr_vr.service
- Logging
journalctl --user-unit nesfr_vr.service
journalctl --user-unit nesfr_vr.service -f //follow mode
ln -s <path>/nesfr_vr.service /etc/systemd/system/nesfr_vr.service
sudo systemctl daemon-reload
sudo systemctl enable nesfr_vr.service
sudo systemctl restart nesfr_vr.service
- Debuging
journalctl -u nesfr_vr.service -f
-
systemctl
manual
wom@nesfr4:~$ systemctl list-dependencies -a --system halt.target
halt.target
● ├─plymouth-halt.service
● │ └─system.slice
● │ └─-.slice
● └─systemd-halt.service
● ├─system.slice
● │ └─-.slice
● ├─final.target
● │ └─snapd.system-shutdown.service
● │ └─system.slice
● │ └─-.slice
● ├─shutdown.target
● └─umount.target
wom@wom:~$ systemctl list-dependencies -a --system halt.target
halt.target
○ ├─plymouth-halt.service
● │ └─system.slice
● │ └─-.slice
○ ├─plymouth-switch-root-initramfs.service
● │ └─system.slice
● │ └─-.slice
○ └─systemd-halt.service
● ├─system.slice
● │ └─-.slice
○ ├─final.target
○ │ └─snapd.system-shutdown.service
● │ └─system.slice
● │ └─-.slice
○ ├─shutdown.target
○ └─umount.target
$ systemctl list-dependencies --after network-online.target # units network-online.target waiting for
network-online.target
● ├─NetworkManager-wait-online.service
● └─network.target
○ ├─netplan-ovs-cleanup.service
● ├─NetworkManager.service
○ ├─systemd-networkd.service
● ├─systemd-resolved.service
● ├─wpa_supplicant.service
● └─network-pre.target
● └─ufw.service
$ systemctl list-dependencies --all --after network-online.target #recursively
network-online.target
● ├─NetworkManager-wait-online.service
● │ ├─NetworkManager.service
● │ │ ├─dbus.service
● │ │ │ ├─dbus.socket
● │ │ │ │ ├─-.mount
● │ │ │ │ │ ├─-.slice
○ │ │ │ │ │ └─blockdev@dev-disk-by\x2duuid-fbe559cc\x2dae0f\x2d4d4c\x2da2c4\x2d9b15529bcc8b.target
● │ │ │ │ ├─system.slice
● │ │ │ │ │ └─-.slice
● │ │ │ │ └─sysinit.target
...
$ systemctl list-dependencies --before network-online.target
network-online.target
○ ├─apt-daily-upgrade.service
○ ├─apt-daily.service
● ├─cups-browsed.service
● ├─docker.service
● ├─kerneloops.service
○ ├─motd-news.service
● ├─nfs-mountd.service
● ├─nfs-server.service
○ ├─rc-local.service
● ├─rpc-statd-notify.service
● ├─rpc-statd.service
○ ├─ua-timer.service
○ ├─ubuntu-advantage.service
● ├─update-notifier-download.timer
● ├─update-notifier-motd.timer
○ ├─whoopsie.service
○ └─shutdown.target
$ systemd-analyze
Startup finished in 17.468s (firmware) + 491ms (loader) + 2.308s (kernel) + 22.769s (userspace) = 43.037s
graphical.target reached after 22.717s in userspace
$ logger -p syslog.err test
jounalctl -f
Jun 13 18:09:25 nesfr7-01 wom[6082]: test