在 Linux 下搭建我的世界服务器

我的世界一个有关放置方块与探险的游戏。游戏设定在一片可以无限生成的世界里,这里有广袤而开阔的土地:由冰雪覆盖的山峰、潮湿的河口、辽阔的牧场等等组成。它们充满着奥秘、奇迹与危险。 服务器基础配置: CPU Intel Xeon CPU E5-2682 v4 @ 2.50GHz * 1RAM 2 GB OS CentOS Linux release 7.6.1810 (Core) ava 运行库 Java 运行库,没什么好多写的,CentOS 当然就用 yum 方式安装 yum install -y java-1.8.0-openjdk Minecraft Server 你可能听说过 官方服务端 / CraftBukkit / Spigot / MCPC+ / ForgeMinecraftServer / KCauldron / Cauldron 等等等等 ... 这些都是不同类型的服务端。官方服务端由官方团队发布,基本上随 MC 的更新而更新,不能加载所谓的 Mod ,但如果开的是纯净服这是个最佳选择。其余的为非官方服务端,更新时间和更新频率随服务端作者,各服务端拥有不同的特性,支持适合相应服务端的 Mod 。 ( 写文的时候发现官方弄了个 懒人开服工具 ? ) 接下来分几个章节搭建不同服务端的服务器 官方服务端 下载服务端 这里是从 Mojang 官方源下载的 1.13.2 版本的服务端 yum install -y wgetmkdir minecraftcd minecraftwget https://launcher.mojang.com/v1/objects/3737db93722a9e39eeada7c27e7aca28b144ffa7/server.jarmv server.jar minecraft_server.1.13.2.jar echo eula=true > eula.txt 启动: java -Xmx1024M -Xms1024M -jar minecraft_server.1.13.2.jar nogui MC服务器,关闭! 按 Ctrl + C 来停止当前服务器,或者敲 stop 服务器设置 Minecraft Server 的服务器设置就保存在 server.properties 文件下 #Minecraft server properties //标题注释#Thu Jan 24 19:55:32 CST 2019 //保存时间max-tick-time=60000generator-settings= //自定义超平坦世界(可选)allow-nether=true //允许玩家进入下界(true为是,false为否,下同)force-gamemode=false //玩家加入时改为默认游戏模式enforce-whitelist=falsegamemode=0  //默认游戏模式 0 生存模式 1 创造模式 2 冒险模式 3 旁观模式enable-query=false //允许使用GameSpy4协议的服务器监听器player-idle-timeout=0 //玩家挂机踢出服务器(单位:分钟)difficulty=1 //设置游戏难度 0 和平 1 简单 2 普通 3 困难spawn-monsters=true //生成攻击型生物(游戏难度为和平时均不生成)op-permission-level=4  //设定OP的权限 1 无视重生点保护 2 使用单人游戏作弊命令 3 使用绝大部分命令 4 使用所有命令pvp=true //PVP(玩家伤害玩家)snooper-enabled=truelevel-type=DEFAULThardcore=false //极限模式enable-command-block=false //启用命令方块max-players=20 //玩家数限制network-compression-threshold=256resource-pack-sha1= //资源包sha1值(可选)max-world-size=29999984 //世界大小限制server-port=25565 //服务器端口server-ip= //服务器IP(可选)spawn-npcs=true //生成村民allow-flight=false //允许飞行(非创造/观察者模式下)level-name=world //地图文件夹view-distance=10 //客户端可视距离resource-pack= //资源包(可选,URL)spawn-animals=true //生成动物white-list=false //白名单generate-structures=true //在生成世界时生成结构(例如村庄)online-mode=true //正版验证max-build-height=256 //高度限制level-seed= //地图种子(可选)prevent-proxy-connections=falseuse-native-transport=truemotd=A Minecraft Server //服务器描述enable-rcon=false 保持服务会话 (选择直接在 VNC 上运行 Minecraft Server 的可以略过这一章) 因为博主用的是云服务器,需要通过使用 SSH 连接到服务器启动游戏服务,但是一般服务器和 SSH 都会有连接会话的超时设置,在一段时间没有在服务器上操作后,会自动断开 SSH 会话,这时这个会话中的任务就会被杀掉,那小伙伴们游戏玩着玩着就与服务器断开连接了。 这个时候我们可以使用 Linux 上这个 GNU Screen 工具来解决上述问题 安装 同样用 yum 方式安装:yum install -y screen 使用 语法 & 参数说明 screen [-opts] [cmd [args]] 参数说明 -A //将所有的视窗都调整为目前终端机的大小。-d [作业名称] //将指定的screen作业离线。-h [行数] //指定视窗的缓冲区行数。-m //即使目前已在作业中的screen作业,仍强制建立新的screen作业。-r [作业名称] //恢复离线的screen作业。-R //先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。-s //指定建立新视窗时,所要执行的shell。-S [作业名称] //指定screen作业的名称。-v //显示版本信息。-x //恢复之前离线的screen作业。-ls //显示目前所有的screen作业。-wipe //检查目前所有的screen作业,并删除已经无法使用的screen作业。 示例 screen -S yourname //新建一个叫 yourname 的 Sessionscreen -ls //列出当前所有的 Sessionscreen -r yourname //回到 yourname 这个 Sessionscreen -d yourname //远程 Detach 某个 Sessionscreen -d -r yourname //结束当前 Session 并回到 yourname 这个 Session 在 MC 服务器上 新建一个 Screen 会话 screen -S mcs 当输入这个命令后,就会进入 mcs 会话,在当前会话下,输入上面的启动脚本命令,确认游戏正常启动后,就可以放着不管了,只要不是服务器挂掉了,服务就会一直运行着。