Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия |
os:linux:systemd [15.04.2025 13:17] – [Unit-файл] viacheslav | os:linux:systemd [12.10.2025 13:26] (текущий) – [journalctl] viacheslav |
---|
====== systemd ====== | ====== systemd ====== |
https://www.freedesktop.org/software/systemd/man/index.html\\ | https://www.freedesktop.org/software/systemd/man/latest/index.html\\ |
| [[https://www.freedesktop.org/software/systemd/man/latest/systemd.service.html|systemd.service — Service unit configuration]]\\ |
| [[https://www.freedesktop.org/software/systemd/man/latest/systemd.unit.html|systemd.unit — Unit configuration]]\\ |
| [[https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html|systemd.exec — Execution environment configuration]]\\ |
[[https://www.redhat.com/sysadmin/systemd-automate-recovery|Set up self-healing services with systemd]]\\ | [[https://www.redhat.com/sysadmin/systemd-automate-recovery|Set up self-healing services with systemd]]\\ |
[[https://www.youtube.com/watch?v=tY9GYsoxeLg|Demystifying Systemd]]\\ | [[https://www.youtube.com/watch?v=tY9GYsoxeLg|Demystifying Systemd]]\\ |
[[https://www.youtube.com/watch?v=8640OcCL8T8|Linux Command Line (57) systemd.timer pt1 - MichaelsTechTutorials]]\\ | [[https://www.youtube.com/watch?v=8640OcCL8T8|Linux Command Line (57) systemd.timer pt1 - MichaelsTechTutorials]]\\ |
[[https://www.youtube.com/watch?v=OV3Gc0SISUo|Linux Command Line (58) systemd.timer pt2 - MichaelsTechTutorials]]\\ | [[https://www.youtube.com/watch?v=OV3Gc0SISUo|Linux Command Line (58) systemd.timer pt2 - MichaelsTechTutorials]]\\ |
[[https://habr.com/ru/post/535930/|Systemd для продолжающих. Part 1 — Запуск юнитов по временным событиям]] | [[https://habr.com/ru/post/535930/|Systemd для продолжающих. Part 1 — Запуск юнитов по временным событиям]]\\ |
| [[https://www.freedesktop.org/software/systemd/man/latest/systemd.time.html|systemd.time — Time and date specifications]] |
| |
==== Минимальный вариант ==== | ==== Минимальный вариант ==== |
systemctl --user enable cleanup.timer | systemctl --user enable cleanup.timer |
</code> | </code> |
| |
| ==== Срабатывание чаще минуты ==== |
| |
| Например, раз в 10 сек |
| <code bash> |
| [Timer] |
| # Каждые 3 минуты |
| # OnCalendar=*:0/3 |
| # Каждые 10 сек |
| OnCalendar=*:*:0/10 |
| # Обязательный параметр для таймеров меньше минуты |
| AccuracySec=1s |
| |
| [Install] |
| WantedBy=timers.target |
| </code> |
| |
| ===== journalctl ===== |
| <code bash> |
| unit_name="activemq" |
| # Вывести лог последнего запуска (MainPID показывается только если сервис работает), здесь - сервис запущен под пользователем |
| journalctl --user _PID=$(systemctl show --user --property ExecMainPID --value $unit_name) |
| # Вычисление исходя из времени запуска (для коллекции. Лучше использовать PID) |
| journalctl --user -u $unit_name --since "$(date -d "$(systemctl show --user --property=ActiveEnterTimestamp $unit_name |cut -d= -f2)" +'%F %T')" |
| </code> |
| ===== Литература ===== |
| [[https://superuser.com/questions/1390419/starting-tomcat-8-5-using-systemd-on-centos-7|Starting Tomcat 8.5 using systemd on Centos 7]]\\ |
| [[https://jdebp.uk/FGA/systemd-house-of-horror/tomcat.html|The systemd house of horror: Wrapping Apache Tomcat in many pointless extra layers]] m( |
| |