Использование экрана для запуска сервера Minecraft (Linux Debian)

Я много чего перепробовал и получил много ошибок, я пытаюсь открыть экранную сессию при запуске, запустить на ней сервер minecraft и затем отсоединить его, чтобы я мог подключиться к SSH с помощью screen -r.

Первая команда работает нормально, проблема в том, что после выполнения первой команды я должен дважды нажать клавишу пробела, прежде чем я смогу использовать код для запуска сервера. Я попытался это сделать с помощью xdotool, но безуспешно я получил ошибку (через SSH) при вводе ключа xdotool Пробел

Error: Can't open display: (null)
Failed creating new xdo instance

Предполагается, что исправлением будет экспорт DISPLAY=:0.0, который у меня не работает.

мой текущий скрипт запуска

#!/bin/bash
# /etc/init.d/mcstartup.script
# version 0.3.9 2012-08-13 (YYYY-MM-DD)

### BEGIN INIT INFO
# Provides:   minecraft
# Required-Start: $local_fs $remote_fs
# Required-Stop:  $local_fs $remote_fs
# Should-Start:   $network
# Should-Stop:    $network
# Default-Start:  2 3 4 5
# Default-Stop:   0 1 6
# Short-Description:    Minecraft server
# Description:    Starts the minecraft server
### END INIT INFO
sleep 20
echo "5"
sleep 1
echo "4"
sleep 1
echo "3"
sleep 1
echo "2"
sleep 1
echo "1"
sleep 1
echo "0"
sleep 1
screen
sleep 5
xdotool keydown SpaceBar
sleep 3
xdotool keydown SpaceBar
sleep 5
xdotool type ’Hello world!’
sleep 5
sudo /opt/jdk1.8.0/bin/java -Xms256M -Xmx496M -jar /home/pi/craftbukkit.jar nogui
xdotool keydown Control_L+A
xdotool keydown D

В нем много ненужных эхо и множество ненужных команд сна, в основном для целей тестирования.

Если кто-то знает, как исправить xdotool для правильной работы, или другой способ запустить mc-сервер при запуске на другом сеансе (к моему raspberry pi не подключена клавиатура), это было бы действительно полезно.

1 ответ

Попробуйте экспортировать дисплей

export DISPLAY=:0.0

Тогда вы сможете запустить xdotool команды

Другие вопросы по тегам