Я не знаю, как выглядит пользовательский интерфейс сервера q3. Может, он настолько извращенский, что без Screen никак,
Что есть "консоль самого сервера"? Потоковый вывод в standart output, перенаправляемый в файл, или псевдографический интерфейс, без которого не обойтись?
Расскажу, как я работаю, например, с сервером Java-приложений GlassFish 4 (который так же не является стандартным Linux-демоном).
У него есть два способа управления: через красивый web-интервейс (пусть будет аналог Вашего "игрового" клиента) и через консоль.
Запустить его можно только через консоль, конечно. Для этого я подключаюсь к удалённой машине по SSH, запускаю некоторую команду (стандартную я завернул в скрипт
gf4 start). Сервер запускается, начинает вести лог. В стандартный вывод пишется только одно короткое сообщение, SSH можно отключить, Screen не нужен.
Проверить состояние сервера, развернуть новое приложение можно через браузер, а можно повторно подключившись через SSH (запустив SSH-клиент, но не Screen) и выполнив команды
gf4 status и
deploy myapp.war. В любой момент можно почитать логи, остановить сервер командой
gf4 stop. Клиент (SSH, терминал) нужен, Screen -- нет.
Есть ещё один серверок (самописный, на Netty.io), который не умеет сам демонизироваться и писать лог в файл. За него это делает GNU/Linux, с помощью операторов перенаправления вывода (">"), запуска в фоне ("&") и команды
disown. Status и stop сперва работали через фильтрацию вывода
ps -A -f и
kill, потом я осилил написать более приличные. Screen так ни разу и не пригодился.
Итого, я вижу единственный случай его реальной необходимости: вывод сервером q3 интерактивного псевдографического интерфейса. Если цель запустить сервер, сохранив его -- проблема, действительно есть. Если цель запустить сервер, имея возможность управлять им и следить за его состоянием -- лучше псевдографический интерфейс отключить (если он был и проблема не надумана) и использовать традиционные для серверов методы. Если его невозможно отключить, и отсутствуют консольные команды для управления -- претензии к авторам q3 (только извращенцы могли сделать сервер интерактивным (и только интерактивным) приложением).
Hephaestus писал(а): ↑07.08.2015 15:17
Команды
grep,
tail,
head Вам в помощь.
Верно.
Hephaestus писал(а): ↑07.08.2015 15:17
Если уж так нужно рулить удалённой машиной, обычно используют доступ по ssh. Там будет доступно всё, а не только интерфейс конкретного сервиса.
Screen, о котором здесь шла речь, решает немного другие задачи.
Гм. А как можно использовать Screen без SSH?