← До фільтрів та технологій

← До списку лабораторних по Linux

Linux Лабораторна 39: User services у systemd

Технологія: Linux

Номер лабораторної: 39 · Рівень: middle

Тема: Керування локальними користувацькими сервісами

Повний опис / сценарій лабораторної:

Мета: навчитися створювати та запускати systemd user services без прав root.



Крок 1. Перевірити чи увімкнено linger для вашого користувача.

Команда: loginctl show-user ваш_користувач | grep Linger

Пояснення: linger дозволяє user сервісам працювати після виходу.



Крок 2. Увімкнути linger якщо потрібно.

Команда: sudo loginctl enable-linger ваш_користувач



Крок 3. Створити каталог для user unit файлів.

Команди: mkdir -p ~/.config/systemd/user



Крок 4. Створити простий user service який запускає tail для лог файла.

Файл: ~/.config/systemd/user/user_tail.service

Приблизний вміст:

[Unit]

Description=User tail log



[Service]

ExecStart=/usr/bin/tail -F /var/log/syslog



[Install]

WantedBy=default.target



Крок 5. Перезавантажити конфігурацію user systemd.

Команда: systemctl --user daemon-reload



Крок 6. Увімкнути сервіс у user контексті.

Команда: systemctl --user enable --now user_tail.service

Пояснення: сервіс почне виконуватися від вашого імені.



Крок 7. Перевірити статус сервісу.

Команда: systemctl --user status user_tail.service



Крок 8. Переглянути журнали сервісу.

Команда: journalctl --user -u user_tail.service -n 20



Крок 9. Зупинити та вимкнути сервіс.

Команда: systemctl --user disable --now user_tail.service



Крок 10. Міні звіт.

Завдання: наведіть приклади задач які зручно реалізовувати через user services замість cron або скриптів у profile.