Рейтинг:0

Запуск сеанса экрана в качестве службы, как мне передать вывод сеанса экрана (обратно) в журнал службы?

флаг us

У меня есть приложение, представляющее собой интерактивную оболочку.Я хочу, чтобы это приложение работало как служба. Чтобы иметь доступ к оболочке во время работы службы, я решил, что лучше всего запустить службу как сеанс экрана, который запускает приложение.

Но это создает проблему. Журнал обслуживания на самом деле не показывает никаких выходных данных, которые я вижу в сеансе экрана.

Как я могу передать вывод сеанса экрана в журнал службы?

[Ед. изм]
Описание=CSGO-сервер
После=network.target

[Оказание услуг]
Тип = разветвление
WorkingDirectory=/home/birger/csgo-сервер
ExecStartPre=-/usr/bin/screen -S ${SCREEN_TITLE} -X убить
ExecStart=/usr/bin/экран -dmS ${SCREEN_TITLE} -O -l /usr/bin/bash\
 -c /home/birger/csgo-server/update-and-start
ExecStop=/usr/bin/screen -S ${SCREEN_TITLE} -p 0 -X материал "выход^M"
Среда=SCREEN_TITLE=csgo
RemainAfterExit=false
Перезапустить = всегда
Рестартсек=5с
УспехВыходСтатус=1

[Установить]
WantedBy=default.target

Начато

systemctl --user запускает csgo.service

Просмотр журналов по

журналctl -u csgo.service

Вывод (пусто):

-- Журналы начинаются в сб 22 февраля 2020 г., 14:17:45 по центральноевропейскому времени, заканчиваются в пн, 16 августа 2021 г., 15:06:35 по центральноевропейскому времени. --
-- Нет записей --

Но если я прикреплю к экрану, я увижу, что на самом деле там много текста, просто не отображаемого в журнале службы.

anx avatar
флаг fr
anx
Зачем ты вообще это делаешь? srcds имеет специальные функции `rcon` и `steamcmd_script`, поэтому вам *не* приходится прибегать к ненадежным трюкам, таким как запуск его в сеансе экрана. Просто запустите исполняемый файл srcds непосредственно в ExecStart и наслаждайтесь правильной пересылкой его вывода в журнал!
birgersp avatar
флаг us
Вы попали в точку. И, вообще говоря, я так понимаю, нет возможности "передавать" вывод с экрана в журнал?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.