Я установил сервер Minecraft на CentOS 8 и хотел бы, чтобы сервер запускался при загрузке. Я пробовал различные системные сценарии, чтобы это произошло, и, похоже, ничего не работает; нет ошибки при запуске службы, но сценарий не запускает другой сценарий, который я бы хотел запустить.
Пример сценария systemd, который не работает должным образом, называется minecraft.service:
[Unit]
Description=Minecraft Server
Documentation=
Wants=network.target
After=Network.target
[Service]
User=minecraft
Type=forking
ExecStart=/home/minecraft/minecraft/startserver.sh
Restart=always
[Install]
WantedBy=multi-user.target
startserver. sh скрипт (этот работает, если я запускаю его вручную, выполнив cd для / home / minecraft / minecraft и затем ./startserver.sh, но не запускается с помощью скрипта systemd) :
#!/bin/sh
/usr/bin/tmux new-session -s minecraft -d
tmux send -t minecraft "/usr/bin/java -Xmx4096M -Xms2048M -jar /home/minecraft/minecraft/server.jar --nogui" ENTER
Проверка статуса службы возвращает это:
[root@localhost system]# systemctl status minecraft.service
● minecraft.service - Minecraft Server
Loaded: loaded (/etc/systemd/system/minecraft.service; enabled; vendor preset: disabled)
Active: active (running) since Sat 2020-05-02 03:32:58 EEST; 1s ago
Process: 6990 ExecStart=/home/minecraft/minecraft/startserver.sh (code=exited, status=0/SUCCESS)
Main PID: 6993 (tmux: server)
Tasks: 17 (limit: 26213)
Memory: 67.9M
CGroup: /system.slice/minecraft.service
├─6993 /usr/bin/tmux new-session -s minecraft -d
├─6994 -bash
└─7021 /usr/bin/java -Xmx4096M -Xms2048M -jar /home/minecraft/minecraft/server.jar --nogui
May 02 03:32:58 localhost.localdomain systemd[1]: Starting Minecraft Server...
May 02 03:32:58 localhost.localdomain systemd[1]: Started Minecraft Server.
Если это как-то связано с startserver. sh Я открыт для предложений, я просто нужно запустить сервер с упомянутыми спецификациями +, чтобы запустить новый экран в tmux под названием minecraft. Пытаясь решить эту проблему в течение нескольких часов и будучи новичком в CentOS на данный момент, у меня заканчиваются вещи, которые нужно попробовать. В настоящее время эта служба не запускает сеанс для tmux и не запускает сервер.
Обновление: иногда сервер запускается, но сеанс tmux не запускается. Однако, если вы убьете это с помощью fuser -k 25565/tcp
, а затем запустите minecraft.service вручную, сервер не восстановится.