У меня есть простой скрипт node.js, который принимает консольные команды с помощью readline. Я настроил его для работы в качестве службы systemd (в Debian 9):
[Unit]
Description=Web Game Server
[Service]
ExecStart=/usr/bin/node /var/www/index.js
Restart=always
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
При запуске прямо с консоли с node index.js
Я могу отправлять ему команды через консоль. Есть ли способ сделать это, пока он работает как служба?
Поскольку теперь он работает как служба systemd, я не думаю, что вы можете напрямую подключить его к консоли. Вам нужна какая-то форма межпроцессного взаимодействия, например:
Утилита socat может быть полезна для запуска в консоли. Он может подключаться к службе, используя один из вышеперечисленных протоколов, и предоставлять пользователю обычные возможности чтения.