文章7
标签10
分类4

使用 Linux 服务器开个 Minecraft 服务器

前言

其实也没啥好说的,这是一篇开服教程

材料

  • 一台联网且拥有 Linux 终端的电脑
  • 一个拥有外网IP的 Linux 服务器

环境搭建

Minecraft 服务器需要有 JAVA 环境,首先先登录 Linux 服务器检查环境

ssh abc@123.com

登录后输入

java -version

如返回类似 openjdk version "1.8.0_212" 的消息,即说明 JAVA 已经安装,不然,请安装 JAVA

sudo apt update
sudo apt install default-jdk

获取服务端

下载服务端

官方服务端

官服服务端因为是官方出的东西,版本更新的速度很快(通常与客户端版本更新的速度一致),缺点是几乎没有优化,且无法安装插件
下载地址:https://minecraft.net/zh-hans/download/server

PaperSpigot 服务端

优化极好的一个服务端,支持 bukkit 插件,可自定义数量多,但修改了部分原版特性,使得原版中部分机器(如堆叠刷铁机)无法使用
下载地址:http://yivesmirror.com/downloads/paperspigot

(如需其他服务端请自行网上搜索下载)

上传服务端

将服务端上传至 Linux 服务器

scp minecraft.jar abc@123.com:

配置

文件储存

新建一个文件夹,用来储存服务器文件

mkdir minecraft

将服务端文件移进该文件夹

mv minecraft.jar minecraft/

进入该文件夹

cd minecraft

启动配置

新建一个启动文件,以后方便启动

vi  start.sh

输入以下内容:

java -Xmx1024M -Xms1024M -jar minecraft.jar nogui

其中,Xmx1024M 表示最大内存 1024 MB,Xms1024M则表示最小内存为 1024 MB

更改权限

chmod 775 start.sh

启动运行脚本

./start.sh

如果你的 Minecraft 版本较高便会出现提示「需要先同意使用协议才能继续」,输入 stop 或按 Ctrl+C 关闭脚本程序

修改协议文件

vi eula.txt

将文件最后的 false 修改为 true

调整服务器配置文件 「server.properties」:

vi server.properties

下面是各个选项对应的操作,来自 Wiki百科

#Minecraft server properties
#Thu Jan 25 20:29:28 CST 2018 
spawn-protection=16            #重生点保护半径,设为 0 不保护
generator-settings=            #自定义超平坦
force-gamemode=false            #强制玩家加入时为默认服务器游戏模式
allow-nether=true            #允许玩家进入地狱,如关闭则地狱传送门不会生效
gamemode=1                #游戏模式
enable-query=false            #允许使用 GameSpy4 协议的服务器监听器,建议关闭
player-idle-timeout=0            #玩家无操作时踢出,0 为关闭,单位为分钟
difficulty=1                #难度
spawn-monsters=true            #生成怪物
op-permission-level=4            #OP 等级
pvp=true                #是否允许 PVP
snooper-enabled=true            #发送服务器数据到 http://snoop.minecraft.net
level-type=DEFAULT            #服务器地图类型,DEFAULT 为普通,FLAT 为超平坦,LARGEBIOMES 为巨型生物群系,AMPLIFIED 为放大化世界,CUSTOMIZED 为自定义
hardcore=false                #极限模式,玩家死亡后直接被 ban
enable-command-block=true        #开启命令方块
max-players=20                #服务器在线玩家上线,如服务器日常在线人数不多的话建议调低
resource-pack-sha1=            #资源包的 SHA-1 值,必须为小写十六进制,虽不是必填选项,但可减少每次进入服务器时重复下载资源包的情况
max-world-size=29999984            #世界大小上限,不建议修改
server-port=25565            #服务器端口,默认 25565
debug=false                #测试模式
server-ip=                #服务器 IP
spawn-npcs=true                #生成 NPC
allow-flight=false            #允许生存模式的玩家使用 mod 飞行
level-name=world            #世界名称
view-distance=6                #可视距离极限
resource-pack=                #材质包,填写方式为填写材质包的 URL
spawn-animals=true            #生成动物
white-list=false            #白名单            
generate-structures=true        #是否生成建筑,如村庄,要塞等
online-mode=true            #正版验证
max-build-height=256            #最高建筑高度
level-seed=                #地图种子
use-native-transport=true        #是否使用针对 Linux 平台的数据包收发优化,此选项仅会在 Linux 平台下生成
enable-rcon=false            #是否允许远程访问服务器控制台
motd=A Minecraft Server            #服务器简介,不支持中文(如需中文可使用 MOTD 插件),不得超过 59 个字符

启动服务器

启动脚本

./start.sh

当你看到「Done!」时,说明服务器已经开起来了,「Done!」后面的是服务器开启耗时

输入stop即可关闭服务器

保持运行

因为使用 ssh 连接的缘故,所以当连接断开后 Server 进程将会被杀死,这时就需要终端复用软件来保持它的运行了(如 Screen),这里将使用 tmux 来进行

安装 tmux

sudo apt-get install tmux

使用

在终端输入tmux创建一个 tmux 会话,并在这个会话中启动 Server

在 tmux 会话中按下Ctrl+b再按下D来退出此会话(不是关闭),按这样就可以安心断开链接了

如果想回到这个会话的话,在终端输入tmux ls查询所有 tmux 会话的 ID

比如我的服务器运行在 ID 为 0 的会话中,那么只需输入tmux a -t 0就可返回会话

如果需要关闭对话的话就在对话中输入exit就行了

感谢

本文作者:Little_cow
本文链接:http://blog.mzniuniu.cn/minecraft-server/
许可协议:采用 署名-非商业性使用-相同方式共享 4.0 国际 转载请注明原作者