我正试图建立一个我的世界服务器与我的朋友一起玩。这是我第一次在linux上进行此操作,所以我有一个(我相信)小问题。我不知道如何在USB硬盘上进行设置。
这是我的minecraft.service
# curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh
curl: (6) Could not resolve host: packages.gitlab.com; Unknown error
小修改-我删除了-%i,因为它是为了使多服务器相信
这是启动后的服务状态
GNU nano 2.9.3 minecraft.service
[Unit]
Description=Minecraft Server
After=network.target
[Service]
WorkingDirectory=/media/main/ALL/.minecraft-server
User=minecraft
Restart=always
ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xms512M -Xmx3584M -jar -DIReallyKnowWhatIAmDoingISwear spigot*.jar nogui
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 15 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 10 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 5 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "save-all"\015'
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "stop"\015'
[Install]
WantedBy=multi-user.target
用户是由“ useradd minecraft”创建的,没有密码
发行版是Ubuntu Server 18.04.3 LTS
我在USB硬盘上需要它,因为我的SD卡较小。将来我想在adpter上将其替换为ssd
答案 0 :(得分:0)
好的。谢谢大家对我的帮助。几个小时后,我找到了解决方法。
这解决了我的服务器根本无法启动的问题,但是后来我无法连接到屏幕。
我尝试使用自定义配置-c并编辑/ etc / screenrc(第二个选项完全打破了屏幕,因此我需要重新安装它)。最后,我在/.minecraft-server中使用选项multiuser on
创建了.screenrc,并添加了可以附加的用户。
现在它正在工作,但是我花了大约10个小时来修复它...
创建用户和组:
adduser --system minecraft
addgroup --system minecraft
usermod -a -G minecraft minecraft
usermod --home /home_folder minecraft
.screenrc在我的世界的主目录中:
multiuser on
addacl root
addacl user1
systemd中的minecraft.service的最终版本:
[Unit]
Description=Minecraft Server
After=network.target
[Service]
WorkingDirectory=/media/main/ALL/.minecraft-server
User=minecraft
Group=minecraft
Type=forking
Restart=on-failure
#RestartSec=20 5
ExecStart=/usr/bin/screen -dmS mc /usr/bin/java -Xms512M -Xmx3584M -jar -DIReallyKnowWhatIAmDoingISwear spigot-1.14.4.jar nogui
ExecStop=/usr/bin/screen -p 0 -S mc -X eval 'stuff "say SERVER SHUTTING DOWN IN 15 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc -X eval 'stuff "say SERVER SHUTTING DOWN IN 10 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc -X eval 'stuff "say SERVER SHUTTING DOWN IN 5 SECONDS..."\015'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc -X eval 'stuff "save-all"\015'
ExecStop=/usr/bin/screen -p 0 -S mc -X eval 'stuff "stop"\015'
[Install]
WantedBy=multi-user.target
要附加到屏幕:screen -x minecraft/mc
minecraft是用户,mc是屏幕名