Как выполнить программу с терминала, перенаправляя stdout и stderr в журнал systemd?

Tuve el mismo problema por un tiempo, simplemente ingresé al cliente de evolución y eliminé la cuenta de Google de Preferencias> cuentas que lo resolvieron, la autenticación de Google no apareció hasta ahora, pruébelo.

Supongo que evolution se integrará automáticamente con el calendario de gnome, aunque apesta, sería bueno optar -En realidad, no uso calendarios y cuando dejé de usar evolution olvidé por completo que fue cuando gnome comenzó a solicitar acceso al calendario de google. Su pregunta me ayudó a recordar eso, así que gracias.

2
06.07.2019, 18:33
1 ответ

Я думаю, вам следует использовать утилиту logger(1), которая работает независимо от того, использует ли ваша система systemdили rsyslogd.

your_prog 2>&1 | logger -t your_prog

В системах с systemd также есть systemd-cat, который специально использует «потоковое» API ведения журналов systemd (sd_journal_stream_fd(3),/run/systemd/journal/stdout)вместо стандартногоsyslog(3):

your_prog 2>&1 | systemd-cat -t your_prog

systemd-cat -t your_prog your_prog

Чтобы сохранить другой поиск :Если вы хотите передавать только стандартный поток, но не стандартный вывод, вы можете использовать

log_stderr(){ { "$@" 2>&1 >&3 3>&- | logger -t "$1"; } 3>&1; }
log_stderr your_prog
3
27.01.2020, 21:58

Теги

Похожие вопросы