====== SystemD ======
===== FACTS =====
* dobre pro inspiraci: generuje do /run/systemd/generator/...
* unity v /etc/systemd maji prednost pred /usr...
* mount cte take nastaveni i z /etc/fstab //- klasicky//
===== CTENI LOGU =====
seznam poli
man systemd.journal-fields
systemctl --failed #jednotky co se nepodarilo spustit
journalctl -r _SYSTEMD_UNIT=NetworkManager.service # obracene [ nejnovejsi prvni, od unity NetworkManager]
journalctl --unit httpd.service
journalctl -xn #posledni chyba
journalctl _COMM=
journalctl _PID=
journalctl -k #kernel log
journalctl -b # tento boot, s -1 preposledni, -2,-3...
journalctl --since "20 min ago" # za poslednich 20 minut
journalctl #cesta k spustitelnemu souboru
===== MAZANI LOGU =====
==== jednorazove ====
* volitelne nejprve z-archivujeme aktualni log
# journalctl --rotate
* zmensime log na danou velikost / dny
# journalctl --vacuum-size=500M
# journalctl --vacuum-time=30days
==== trvale ====
* pridame volby do souboru ///etc/systemd/journald.conf//
# maximalni velikost pouziteho diskoveho prostoru ( obdoba --vacuum-size )
SystemMaxUse=
# system udrzuje minimalni velikost volneho mista
SystemKeepFree=
# maximalni velikost jednotliveho souboru
SystemMaxFileSize=
# maximalni doba pro uchovani zaznamu ( obdoba --vacuum-time )
MaxRetentionSec=
* pro aplikaci zmen, restartujeme sluzbu
# systemctl restart systemd-journald
===== VLASTNI SERVICE =====
cat /etc/systemd/system/suspend-hdd.service
[Unit]
Description=Suspends extra hdd during start - /dev/sdb
ConditionPathExists=/dev/sdb
[Service]
Type=oneshot
ExecStart=/usr/sbin/hdparm -y /dev/sdb
RemainAfterExit=yes # nastaveni jako active u oneshot,jinak inactive
[Install]
WantedBy=multi-user.target
A potom jen:
sudo systemctl enable suspend-hdd
sudo systemctl start suspend-hdd
==== S PARAMETREM ====
/etc/systemd/system/tomcat@.service
[Unit]
Description=Tomcat - instance %i
After=syslog.target network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
WorkingDirectory=/var/tomcat/%i
Environment="JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.amzn2.0.3.x86_64/"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_PID=/var/tomcat/%i/run/tomcat.pid"
Environment="CATALINA_BASE=/var/tomcat/%i/"
Environment="CATALINA_HOME=/opt/tomcat/"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
#RestartSec=10
#Restart=always
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable tomcat@foo.service
systemctl start tomcat@foo.service
===== MOUNT ======
jmeno MUSI byt ve tvaru pripojneho bodu, zde **mnt-data.mount**
# Automatically generated by systemd-fstab-generator
[Unit]
SourcePath=/etc/fstab
Documentation=man:fstab(5) man:systemd-fstab-generator(8)
Before=local-fs.target
[Mount]
What=/dev/disk/by-uuid/729B896730932F03
Where=/mnt/data
Type=ntfs-3g
Options=defaults,windows_names,uid=1000,gid=1000,umask=0000,fmask=0111,norecover,x-systemd.automount,nofail
pro sitove disky se vyborne hodi noauto,x-systemd.automount,x-systemd.device-timeout=10
^Volba^Popis^
|noauto|nepripoji se pri bootu|
|nofail|nevytvari zavislost na local-fs.target takze boot jede i kdyz se mount nepodari|
|x-systemd.automount|vytvori take .automount unit; For each automount unit file a matching mount unit file must exist which is activated when the automount path is accessed. Example: if an automount unit home-lennart.automount is active and the user accesses /home/lennart the mount unit home-lennart.mount will be activated. Automount units may be used to implement on-demand mounting as well as parallelized mounting of file systems. If an automount point is beneath another mount point in the file system hierarchy, a dependency between both units is created automatically.|
|x-systemd.device-timeout|ceka zadany pocet vterin a pote jede dal|
===== TIMEDATE =====
overeni nastaveni
sudo timedatectl status
hwclock
cat /etc/adjtime
==== Local to rtc time or back ====
sudo timedatectl set-local-rtc 0 # nastavi cas na lokalni cas 0, rtc[hw cas] cas 1
===== POTLACENI AKCE / SYSTEMD-INHIBIT =====
https://www.abclinuxu.cz/poradna/linux/show/415911#5
Zde konkretne ''Nezamykej pocitac pokud zavru notebook'' . Hodi se pro mplayer, mpv...
#!/bin/sh
exec systemd-inhibit --what=handle-lid-switch /usr/bin/mplayer "$@"