Кажется, что это невозможно и нежелательно для апстрима (перенаправление stdout / stderr на отдельные файлы), см., Например, http://lists.freedesktop.org/archives/systemd-devel/2012-March/004705.html - читайте всю ветку для получения дополнительной информации. контекстная информация о том, как это должно работать.
Что вы можете сделать, это либо войти в системный журнал, и таким образом записать в отдельные файлы. Или наоборот, если устройство вызывает какую-то программу, которая может самостоятельно записать журнал, а затем использовать его для записи в файл.
Вы также можете взглянуть на View stdout / stderr службы systemd
То, что вы уже можете сделать со своей текущей настройкой, это использовать
journalctl -u yourunitname > yourlogfile_for_yourunitname
для направления всего вывода журнала для вашего устройства «yourunitname» в файл.
В последней части вы также должны взглянуть на подсказки Леннарта из вышеупомянутой ветки списка рассылки:
В последних версиях systemd что-то вроде этого systemd-journalctl -o cat
_SYSTEMD_UNIT=postgresql.service
должно создавать очень простой вывод, который включает только реальные сообщения и ничего больше. Вы можете даже передать «-f» и сделать это вживую ».
РЕДАКТИРОВАТЬ:
На самом деле, для более новых версий systemd команда является только journalctl и из того, что я могу сказать, вышеупомянутая длинная команда такая же, как journalctl -u yourunitname
и вы также можете -f
там "следовать" вывод (как в tailf или tail -f).