我们将使用 root 账户。如果你使用受限的账户的话,大部分命令都需要 sudo
。做你没有权限的事情时会出现警告。
你可以通过 SSH 客户端来登录你的服务器。使用你的 IP 和端口(大部分都是 22)。
在你登录之后,确保你的服务器安全。
在你做任何事之前都要先更新你的 Ubuntu。你可以通过以下命令更新:
apt-get update && apt-get upgrade
在提示时敲击“回车键” 和/或 y
。
在这篇教程中你需要一些工具和软件来编辑文本、长久保持服务端运行等。使用下面的命令安装:
apt-get install nano wget screen bash default-jdk ufw
其中一些可能已经安装好了。
首先,创建一个目录来保存你的“我的世界”服务端和其他文件:
mkdir /opt/minecraft
然后进入新目录:
cd /opt/minecraft
现在你可以下载“我的世界“服务端文件了。去往下载页面获取下载链接。使用 wget
下载文件:
wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/minecraft_server.1.12.2.jar
下载好了服务端的 .jar 文件之后,你就需要先运行一下,它会生成一些文件,包括一个 eula.txt
许可文件。第一次运行的时候,它会返回一个错误并退出。这是正常的。使用下面的命令运行它:
java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui
-Xms2048M
是你的服务端能使用的最小的内存,-Xmx3472M
是最大的内存。调整基于你服务器的硬件资源。如果你在 Vultr 服务器上有 4GB 内存,并且不用服务器来干其他事情的话可以就这样留着不动。
在这条命令结束并返回一个错误之后,将会生成一个新的 eula.txt
文件。你需要同意那个文件里的协议。你可以通过下面这条命令将 eula=true
添加到文件中:
sed -i.orig 's/eula=false/eula=true/g' eula.txt
你现在可以通过和上面一样的命令来开启服务端并进入“我的世界”服务端控制台了:
java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui
确保你在 /opt/minecraft
目录,或者其他你安装你的 MC 服务端的目录下。
如果你只是测试或暂时需要的话,到这里就可以停了。如果你在登录服务器时有问题的话,你就需要配置你的防火墙。
第一次成功启动服务端时会花费一点时间来生成。
我们将向你展示如何创建一个脚本来启动。
方便起见,我们将创建一个自动启动服务端的 bash 脚本。
首先,使用 nano 创建一个 bash 脚本:
nano /opt/minecraft/startminecraft.sh
这将会打开一个新的(空白)文件。粘贴以下内容:
#!/bin/bashcd /opt/minecraft/ && java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui
如果你不熟悉 nano 的话 - 你可以使用 CTRL + X
,再敲击 Y
,然后回车。这个脚本将进入你先前创建的“我的世界”服务端并运行 Java 命令来开启服务端。你需要执行下面的命令来使脚本可执行:
chmod +x startminecraft.sh
然后,你就可以通过下面的命令随时运行服务端了:
/opt/minecraft/startminecraft.sh
但是,如果/当你登出 SSH 会话的话,服务端就会关闭。要想让服务端不登录也持续运行的话,你可以使用 screen
会话。screen
会话会一直运行,直到实际的服务器被关闭或重启。
使用下面的命令开启一个 screen 会话:
screen -S minecraft
一旦你进入了 screen
会话(看起来就像是你新建了一个 SSH 会话),你就可以使用先前创建的 bash 脚本来启动服务端:
/opt/minecraft/startminecraft.sh
要退出 screen
会话的话,你应该按 CTRL+A-D
。即使你离开 screen
会话(断开的),服务端也会继续运行。你现在可以安全的登出 Ubuntu 服务器了,你创建的“我的世界”服务端将会继续运行。
但是,如果 Ubuntu 服务器重启或关闭了的话,screen
会话将不再起作用。所以为了让我们之前做的这些在启动时自动运行,做下面这些:
打开 /etc/rc.local
文件:
nano /etc/rc.local
在 exit 0
语句前添加如下内容:
screen -dm -S minecraft /opt/minecraft/startminecraft.shexit 0
保存并关闭文件。
要访问“我的世界”服务端控制台,只需运行下面的命令来重新连接 screen
会话:
screen -r minecraft
现在就是这样。祝贺你,玩的开心!你现在可以连接到你的“我的世界”服务端或配置/修改它了。
你首先肯定要设置并确保你的 Ubuntu 服务器安全,如果你还没有这么做的话。按照我们之前提及的指南并谷歌一下来获取更多信息。你需要在服务器上配置的有这些:
首先,如果防火墙还没有开启的话,你应该先开启先前安装的 UFW:
ufw enable
你应该开放默认的“我的世界”服务端端口:
ufw allow 25565/tcp
你应该根据你的使用情况开放或拒绝其他规则。如果你不用服务器负载网站的话,就应该拒绝 80 和 443 端口。谷歌一下 Ubuntu 的 UFW/防火墙指南,你会得到建议的。设置防火墙的时候小心一些,如果你屏蔽了 SSH 端口的话你会把自己锁在服务器外面。
由于这是默认端口,这个端口经常被扫描以及攻击。你可以通过屏蔽白名单之外的访问权限来阻挡攻击。
首先,你需要在你的 server.properties 文件中开启白名单模式。要开启的话,打开文件:
nano /opt/minecraft/server.properties
并将 white-list
行改为 true
:
white-list=true
保存并关闭文件。
然后重启你的服务器(重启你的服务器或重新运行启动脚本):
/opt/minecraft/startminecraft.sh
访问“我的世界”服务端控制台:
screen -r minecraft
如果你想要某人进入你的服务端,你需要通过以下命令把他们添加到白名单:
whitelist add PlayerUsername
运行以下命令来将他们移出白名单:
whitelist remove PlayerUsername
使用 CTRL+A-D
来退出 screen
(服务器控制台)。值得注意的是,这会拒绝除白名单以外的所有人连接到服务端。
我们将解答一些有关“我的世界”服务器和我们的指南的常见问题。
如果你按照我们的教程来的话,包括开启了服务端随系统启动,你可以直接重启你的 Ubuntu 服务器。如果没有设置岁系统启动的话,你可以通过重新运行启动脚本来重启“我的世界”服务端:
/opt/minecraft/startminecraft.sh
你可以使用 server.properties 文件来配置你的服务端。查看“我的世界”维基来获取更多信息,你也可以什么都不动,它会工作的很好。
如果你想改变游戏模式、难度等诸如此类的东西,你可以使用服务端控制台。通过下面的命令访问服务端控制台:
screen -r minecraft
并执行命令。像下面这些命令:
difficulty hard
gamemode survival @a
你可能需要重新启动服务端,这取决于你使用了什么命令。你可以使用很多命令,查看维基来获取更多。
如果有新版本发布的话,你需要这样做:
进入“我的世界”目录:
cd /opt/minecraft
下载最新的版本,比如使用 wget 下载 1.12.3 版本:
wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.3/minecraft_server.1.12.3.jar
接下来,运行并构建新服务端:
java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.3.jar nogui
最后,更新你的启动脚本:
nano /opt/minecraft/startminecraft.sh
更新版本号数字:
#!/bin/bashcd /opt/minecraft/ && java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.3.jar nogui
现在你可以重启服务端了,一切都应该没有问题。
我们想让这个教程对新手来说更友好,并且尽可能详细。我们还向你展示了如何让服务端长期运行并跟随系统启动,我们向你展示了如何配置你的服务端以及所有的东西。我是说,你当然可以用几行来启动“我的世界”服务器,但那样的话绝对很烂,从不仅一方面说。
只要通篇阅读我们的文章,复制粘贴几个命令就行了。如果你真的不知道该如何做的话,我们可以帮你,或者直接找一个托管的服务器提供商,让他们帮你做这些。
这里的相关screen的知识:https://www.linuxidc.com/Linux/2012-07/65358.htm
已经将个人示例的系统版本和YUM库的配置列出来了
1、新建screen会话:直接输入screen命令或者screen -S [会话名称]
2、退出会话:按下组合键Ctrl+a并松开,此时screen窗口等待命令,然后按下d并松开,退出screen窗口。
3、查看当前系统所有screen会话:screen -ls
4、进入某个screen会话:screen -r [会话的PID]
5、在进入某个screen会话后,杀死screen会话:按下组合键Ctrl+a并松开,此时screen窗口等待命令,然后按下大写的K(即组合键:Shift+k)并松开,(系统提示是否要杀死)按下y确认杀死screen会话。
总结:当系统中只有一个screen会话时,输入:screen -r 即可进入这个会话,
当系统中有多个screen会话时,此时输入同样的命令,系统会列出当前所有screen回话,相当于命令:screen -ls
https://jingyan.baidu.com/article/8ebacdf074bc0049f75cd550.html
allow-nether=true #是否开启地狱
level-name=world #默认世界名称(最好不要改)
enable-query=false #没有什么大用处
allow-flight=false #没有什么大用处
announce-player-achievements=true #意义不明
server-port=25566 #服务器端口(127.0.0.1:25565中的冒号后面是这个server-port的数值)
enable-rcon=false #是否开启rcon监听(没有什么用)
force-gamemode=false #force游戏模式
level-seed= #我的世界地图种子(没有特殊需要就不填)
server-ip= #服务器指向IP(默认不要改放空)
max-build-height=256 #服务器最大建筑高度
spawn-npcs=true #是否有主城NPC
white-list=false #是否开启白名单(开启后在白名单内的玩家才能进入服务器,否则进入不了。不要随便开)
spawn-animals=true #主城是否有动物
snooper-enabled=true #意义不明
hardcore=false #我的世界极限模式是否开启(玩过的都知道)
online-mode=false #是否开启正版验证,需用我的世界官方启动器才能进入
resource-pack= #服务器资源包:填下载地址(不需要就不填)
pvp=true #是否开启服务器PVP
difficulty=1 #服务器难度: 0和平 1简单 2中等 3困难
enable-command-block=false #是否开启命令方块
player-idle-timeout=0 #意义不明
gamemode=0 #玩家默认进入游戏的游戏模式 1创造 0生存 2冒险模式3旁观者
max-players=20 #服务器最大玩家数(超过后玩家无法进入)
spawn-monsters=true #主城是否刷新怪物
view-distance=10 #意义不明
generate-structures=true #意义不明
spawn-protection=16 #服务器最大保护区(玩家破坏建筑不了)
motd=A Minecraft Server MOTD指的是在玩家添加服务器后下面会显示这里面的内容(不能为中文、特殊符号)
注意数值后面不要带空格!
等于号后面也不能带空格!
本文为wjw原创文章,转载无需和我联系,但请注明来自wjw博客http://wjiawen.cn
最新评论