Emirar
https://www.emirar.xyz/2018/03/systemd.html
Belajar penggunaan dasar systemd
systemd - System and Service Manager adalah sistem dan manajer servis untuk Linux. systemd mendukung scripts init SysV dan LSB dan berfungsi sebagai pengganti sysvinit. Systemd berjalan sebagai daemon dengan PID 1.
Tugas systemd sebagai unit. Unit yang paling umum adalah services (.service), mount points (.mount), devices (.device), sockets (.socket), atau timers (.timer).
Systemd saat ini hampir digunakan disemua distro linux termasuk Arch Linux, Debian, Fedora, Gentoo dan lainnya.
Dengan systemd kita dipermudahkan untuk mengatur semua
Menampilkan status sistem:
Selengkapnya silahkan cek di:
Selengkapnya silahkan cek di official website systemd.
Jika Anda membutuhkan aplikasi untuk mengontrol systemd silahkan kunjungi Mengontrol systemd dengan GUI.
Tugas systemd sebagai unit. Unit yang paling umum adalah services (.service), mount points (.mount), devices (.device), sockets (.socket), atau timers (.timer).
Systemd saat ini hampir digunakan disemua distro linux termasuk Arch Linux, Debian, Fedora, Gentoo dan lainnya.
Dengan systemd kita dipermudahkan untuk mengatur semua
.service
. Sebagai contohnya disable, enable, stop, restart dan start.Penggunaan dasar systemd
Berikut di bawah ini penggunaan dasar systemd yang perlu Anda ketahui dan tentunya perlu dihafalkan.Menampilkan status sistem:
systemctl statusMenampilkan semua service:
systemctl --all --fullDaftar semua service yang sedang berjalan:
systemctlAtau:
systemctl list-unitsDaftar unit yang gagal:
systemctl --failedDaftar file unit yang terinstal:
systemctl list-unit-files
Mengelola systemd
Mengaktifkan service:systemctl start example.serviceMenonaktifkan service:
systemctl stop example.serviceMemulai kembali service:
systemctl restart example.serviceMenunjukkan status service:
systemctl status example.serviceMengaktifkan service untuk memulai saat booting:
systemctl enable example.serviceMenonaktifkan service untuk memulai saat booting:
systemctl disable example.service
Power systemd
Reboot:systemctl rebootPoweroff/Shutdown:
systemctl poweroffSuspend:
systemctl suspendHibernation:
systemctl hibernateHybrid-sleep:
systemctl hybrid-sleepRescue:
systemctl rescueHalt:
systemctl halt
Logs systemd
systemd memiliki sistem sendiri yang disebut journal, oleh karena itu menjalankansyslog
daemon tidak lagi diperlukan. Untuk membaca log, gunakan:journalctlTampilkan semua pesan dari boot sekarang:
journalctl -bTampilkan kernel ring buffer:
journalctl -kLog terbaru:
journalctl -fLog service:
journalctl -b -u example.service
Selengkapnya silahkan cek di:
journalctl --help
Tips & Tricks systemd
Memasang file unit kustom
File unit kustom dapat ditempatkan di/etc/systemd/system
di mana akan dikenali setelah menjalankan systemctl daemon-reload:systemctl daemon-reloadJalankan perintah di atas setiap melakukan perubahan pada unit.
Memfilter unit
Menampilkan unit dengan filter--type=
, contohnya menampilkan hanya service:systemctl list-units --type=service
Menampilkan file unit
Menampilkan file unit dengancat
, contohnya menampilkan unit dbus.service
:systemctl cat dbus.service
# /usr/lib/systemd/system/dbus.service [Unit] Description=D-Bus System Message Bus Documentation=man:dbus-daemon(1) Requires=dbus.socket [Service] ExecStart=/usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only ExecReload=/usr/bin/dbus-send --print-reply --system --type=method_call --dest=org.freedesktop.DBus / org.freedesktop.DBus.ReloadConfig OOMScoreAdjust=-900
Menampilkan dependencies file unit
Gunakanlist-dependencies
untuk menampilkan dependency tree. Contohnya saya ingin menampilkan unit sshd.service
:systemctl list-dependencies sshd.service
sshd.service ● ├─sshdgenkeys.service ● ├─system.slice ● └─sysinit.target ● ├─dev-hugepages.mount ● ├─dev-mqueue.mount ● ├─kmod-static-nodes.service ● ├─ldconfig.service ● ├─lvm2-lvmetad.socket ● ├─lvm2-lvmpolld.socket ● ├─lvm2-monitor.service ...
cgroup tree
systemd-cgls
Control group /: -.slice ├─user.slice │ └─user-1000.slice │ ├─user@1000.service │ │ ├─zeitgeist.service │ │ │ └─707 /usr/bin/zeitgeist-daemon │ │ ├─pulseaudio.service │ │ │ ├─711 /usr/bin/pulseaudio --daemonize=no │ │ │ └─846 /usr/lib/pulse/gconf-helper │ │ ├─zeitgeist-fts.service │ │ │ └─766 /usr/lib/zeitgeist/zeitgeist-fts │ │ ├─at-spi-dbus-bus.service │ │ │ ├─742 /usr/lib/at-spi-bus-launcher │ │ │ ├─747 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3 │ │ │ └─749 /usr/lib/at-spi2-registryd --use-gnome-session │ │ ├─dbus.service │ │ │ ├─603 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only │ │ │ ├─605 /usr/lib/xfce4/xfconf/xfconfd │ │ │ ├─733 /usr/lib/dconf/dconf-service │ │ │ └─848 /usr/lib/GConf/gconfd-2
ps, cgroups
alias psc='ps xawf -eo pid,user,cgroup,args'
psc
PID USER CGROUP COMMAND ... 2 root - [kthreadd] 4 root - \_ [kworker/0:0H] 6 root - \_ [mm_percpu_wq] 7 root - \_ [ksoftirqd/0] 8 root - \_ [rcu_preempt] 9 root - \_ [rcu_sched] 10 root - \_ [rcu_bh] 1 root 1:name=systemd:/init.scope, /sbin/init 197 root 12:memory:/system.slice/sys /usr/lib/systemd/systemd-journald 205 root 12:memory:/system.slice/lvm /usr/bin/lvmetad -f 212 root 12:memory:/system.slice/sys /usr/lib/systemd/systemd-udevd 374 root 12:memory:/system.slice/med /sbin/mount.ntfs-3g /dev/sda1 /media/SystemReserved -o rw 376 root 12:memory:/system.slice/med /sbin/mount.ntfs-3g /dev/sda4 /media/File -o rw,relatime 379 root 12:memory:/system.slice/med /sbin/mount.ntfs-3g /dev/sda5 /media/Data -o rw,relatime 382 root 12:memory:/system.slice/med /sbin/mount.ntfs-3g /dev/sda2 /media/Windows -o rw 391 systemd+ 12:memory:/system.slice/sys /usr/lib/systemd/systemd-timesyncd 394 dbus 12:memory:/system.slice/dbu /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only 398 root 12:memory:/system.slice/sys /usr/lib/systemd/systemd-logind 399 root 12:memory:/system.slice/Mod /usr/bin/ModemManager 405 root 12:memory:/system.slice/dhc /usr/bin/dhcpcd -q -b 430 polkitd 12:memory:/system.slice/pol /usr/lib/polkit-1/polkitd --no-debug ...
Selengkapnya silahkan cek di official website systemd.
Jika Anda membutuhkan aplikasi untuk mengontrol systemd silahkan kunjungi Mengontrol systemd dengan GUI.
Pertimbangkan untuk mendukung kami:
Jika kamu merasa bahwa artikel di blog ini bermanfaat, mohon pertimbangkan untuk mendukung kami. kamu dapat memilih banyak opsi untuk mendukung kami dengan cara donasi, diantaranya menggunakan Bank, Crypto dan lain sebagainnya. Terima kasih.
Donate