Я намагаюся навчитися базовому системному використанню і зіткнувся з заплутаною проблемою з підрозділами обслуговування користувачів.
Під час запуску звичайних сервісів з systemctl запускайте some.service, я можу знайти повний журнал для цієї послуги (включаючи те, що він надрукував до stdout / stderr, наскільки я це розумію), запустивши sudo journalctl --unit some.service .
Розглянемо на прикладі службового файлу chatty.service :
[Service]
ExecStart=/usr/bin/echo "test from chatty.service"
Коли я розміщую цей сервісний файл у ~ / .config / systemd / user / chatty.service і запускаю його з systemctl --user start chatty.service, я не можу знайти його вихідний файл, відправлений на stdout в journalctl, ні з простим journalctl, ні з journalctl - -користувач . Я отримую тільки наступний вихід в обох:
Jan 15 19:16:52 qbd-x230-suse.site systemd[1168]: Starting chatty.service...
Jan 15 19:16:52 qbd-x230-suse.site systemd[1168]: Started chatty.service.
І journalctl - об'єднайте chatty.service взагалі нічого не повертає (з або без --користувач не має значення).
Хоча якщо я переміщу той самий сервісний файл до / etc / systemd / system і запускаю його за допомогою sudo systemd, запускайте chatty.service, тоді я отримую наступний вихід при запуску sudo journalctl - unit chatty.service :
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Starting chatty.service...
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Started chatty.service.
Jan 15 19:28:08 qbd-x230-suse.site echo[27098]: test from chatty.service
Здається, блок обслуговування користувачів не так добре інтегрований, це очікується, я щось пропускаю чи це помилка?
Я запускаю openSUSE 13.1 x86-64, з systemd 208 (встановлення за замовчуванням).
journalctl --user --user-unit chatty
для отримання цих повідомлень про старт / стоп з systemd, але не те, що дає ехо-процес, принаймні в моєму випадку. Ви можете отримати відлунне повідомлення за допомогоюjournalctl --user
або використовувати якийсь інший фільтр.