最MC论坛

标题: 【Android 开服教程】在手机上搭建 PC 版 Minecraft 服务器 [打印本页]

作者: Prismaillya    时间: 2017-11-11 01:06
标题: 【Android 开服教程】在手机上搭建 PC 版 Minecraft 服务器
Android 开服教程


本教程教大家如何在Android 手机上运行一个 Minecraft PC 版服务器。

简介

相信很多人都有闲置的手机,不想浪费资源,那怎么做呢?也许将手机作为一台服务器是一个很好的选择。
手机的性能相对树莓派等ARM架构设备来说性能相对更好,同时手机内置电池,你可以将你的服务器随时带在身上,随时随地管理服务器。


注意

在此操作之前,请先悉知:
1.您的手机需要获取 ROOT 权限。
2.您的手机在获取 ROOT 权限后可能会失去保修权利。
3.若因为操作不当,或者一些不可预料的问题,可能会导致手机数据丢失甚至无法使用。
请认真决定后再选择是否继续。


目录

1.准备工作
2.开始 ROOT 设备
3.安装必备环境程序
4.挂载虚拟 Linux 子系统
5.连接子系统并安装软件
6.下载并运行服务器
7.注意事项
8.进阶教程


一、准备工作

首先,很重要的事情,您需要备份手机所有重要数据,ROOT 会删除所有数据(所以推荐使用闲置手机,最大化的降低对日常使用的影响)。
如果您的手机支持云备份,可以直接使用,如果没有,您也可以使用第三方备份软件,或者使用手机助手将手机数据备份到电脑上。
在一切备份工作做完之后,您就可以开始 ROOT 设备了。


二、开始 ROOT 设备

如果您的手机是热门的手机类型(例如最新的三星S8,华为Mate9,小米等),您可以尝试使用第三方刷机工具直接尝试刷机。
如果不是,您可以打开手机设置》关于手机/设备》设备型号,然后百度搜索“手机型号 ROOT”,应该可以搜索到很多内容,根据教程开始 ROOT 即可。
部分手机厂家将手机加了 BL(Boot Launcher)锁,无法直接 ROOT,需要解除 BL 锁,具体操作方法也可以自行百度,此处不再介绍。
在 ROOT 完成后,大部分 ROOT 软件都会为手机自动安装 SuperSU 权限管理器,如果没有,您也可以手动下载 SuperSU,在大部分应用市场都可以下载到。
注:SuperSU 用于管理手机 ROOT 权限,防止软件滥用 ROOT 权限。


三、安装必备环境程序

首先,下载以下四个软件:
Linux Deploy —— 核心程序,用于管理Linux 子系统。
下载地址:http://cdn.tcotp.cn/Kirino/Download/apk/Linux_Deploy.apk
Terminal Emulator —— 终端模拟器,用于操作手机自身 Shell
下载地址:http://cdn.tcotp.cn/Kirino/Download/apk/Terminal_Emulator.apk
JuiceSSH —— SSH连接工具,用于连接到Linux子系统
下载地址:http://cdn.tcotp.cn/Kirino/Download/apk/JuiceSSH.apk
AndroPHP —— 手机搭建HTTP服务器,用于手机自身与子系统之间传输文件
下载地址:http://cdn.tcotp.cn/Kirino/Download/apk/AndroPHP.apk


四、挂载虚拟Linux子系统

首先运行TerminalEmulator终端模拟器,输入
  1. cat /proc/cpuinfo
复制代码
并回车,查看第一行显示的内容,如图1,为 Aarch64。
接着运行 Linux Deploy,出现如图2界面。
点击右下角的三条横线的图标,打开配置界面,如图3。

[attach]20730[/attach][attach]20725[/attach]


发行版选择CentOS,如果你熟悉Linux,你也可以安装其他版本,架构请选择你在第一步中看到的内容,发行版版本选择7。
用户名和密码可以自己设置,后面连接SSH需要用到。

[attach]20726[/attach][attach]20727[/attach]


往下拉,把SSH和VNC都开启,不开启将无法连接到服务器。
桌面环境可以自己选,推荐使用LXDE。
返回主界面,点击右上角的三个点,然后点“安装”

[attach]20728[/attach][attach]20729[/attach]


接着就是一段时间的等待了,把手机接上电源,屏幕会保持开启,一直等待安装。
软件会自动开始安装各种组件,稍等一段时间,如果网络快的话可能15分钟安装完成。
当你看到控制台输出了<<<deploy,则说明已经安装完成了。
如果你没有看到 failed 之类的字样应该就是没问题了。
点击左下角启动,对话框选择确定,这时候就会开始加载 Linux 子系统。
同样的,如果没有看到 failed 之类的提示,就说明启动成功了。


五、连接子系统并安装软件

打开 JuiceSSH,界面如图1
点击顶部的“连接”,然后出现如图2界面

[attach]20731[/attach][attach]20732[/attach]


昵称可以根据自己喜欢随便填。
地址填写 localhost
最后点击右上角的勾即可保存。

[attach]20733[/attach]


接下来的操作步骤本人用电脑来操作,但是命令都是一样的,手机连接后操作方法相同。
回到连接列表如上图2,点击您刚刚新建的连接即可连接到服务器。
如果没有问题,SSH应该会提示您输入用户名密码,输入您刚刚在第四步骤图4处填写的“用户名“和”用户密码”
输入密码的时候是不会显示出来的,请直接输入密码就好了。
输入完成后回车,即可成功登陆SSH,如下图

[attach]20735[/attach]


PS:字符画是我自己弄的……默认是没有的……
首先我们需要为root用户设置密码,输入
  1. sudo passwd root
复制代码
然后回车,接着输入新密码回车,再输入一次回车,即可修改密码。
然后切换到 root 用户模式,输入 su 然后回车,此时会提示输入密码,输入您刚刚设置的 root 密码后回车即可切换。
现在更新软件包,输入
  1. yum update -y
复制代码
然后回车

[attach]20736[/attach]


稍等一段时间,系统会自动更新所有软件包,也可能会直接提示没有更新,因为所有软件都是最新版本。
接着,安装Java,输入
  1. yum install java -y
复制代码
同样稍等一段时间,安装将会完成,提示Complate!
然后我们检测一下Java是否正常,输入
  1. java -version
复制代码

[attach]20737[/attach]

可以看到已经安装完成,版本是1.8.0_141,OpenJDK
然后我们需要安装Wget,Wget是一个下载文件的工具,非常重要,很多操作都要用到。
输入
  1. yum install wget -y
复制代码
然后回车,稍等几秒钟即可下载完成。
最后还需要安装一个工具,screen,用于储存会话。
请注意一点,当您断开了SSH连接,所有正在执行的操作都会终止,例如您的Minecraft服务器会在SSH会话断开后自动关闭。
输入
  1. yum install screen -y
复制代码
即可下载。


六、下载并运行服务器

首先,打开 NicoCraft 服务端资源镜像下载站https://mirror.nicocraft.cn/
点击左上角文件类型,选择你想要下载的服务端类型

[attach]20738[/attach]


例如 PaperSpigot,点击选择框选中 PaperSpigot 然后点击确定。
然后点击你想要下载的版本右侧的立即下载按钮即可下载。

[attach]20739[/attach]


下载完成后,先不要管它,打开AndroPHP,界面如下图

[attach]20734[/attach]


图中的 192.168.3.64:8080 就是你的 HTTP 服务地址,记住它,等会要用到。
将软件最小化,打开手机的文件管理器。
找到你刚刚下载的服务端文件,将它复制到 手机内置储存 > www 文件夹中
返回 JuiceSSH,输入命令
  1. mkdir minecraft
复制代码
然后回车。

[attach]20740[/attach]

接着,输入
  1. cd minecraft
复制代码

输入
  1. wget http://你的HTTP服务地址/你下载的服务端文件名.jar
复制代码
然后回车
例如:
  1. wget http://192.168.3.64:8080/PaperSpigot-1.8.8-R0.1-SNAPSHOT-latest.jar
复制代码
接着会出现一个进度条开始下载,等待下载完成。
下载完后,我们输入
  1. screen -S mc
复制代码
然后回车,接着屏幕上的内容都会清空
输入
  1. cd minecraft
复制代码
接着,输入
  1. java -Xmx512M -Xms512M -jar 你下载的服务端文件名.jar
复制代码
即可开启服务器!
例如
  1. java -Xmx1024M -Xms1024M -jar PaperSpigot-1.8.8-R0.1-SNAPSHOT-latest.jar
复制代码

[attach]20741[/attach]
第一次开服您会发现服务器自动关闭了,原因是要求遵守eula协议,输入命令echo eula=true>eula.txt然后回车。
此时再输入
  1. java -Xmx512M -Xms512M -jar 你下载的服务端文件名.jar
复制代码
即可正常开启服务器。
当您想要把服务端挂在后台运行时,直接关闭SSH软件就好了,因为有screen,服务器会在后台继续运行。
当你想要重新返回服务端会话的时候,只需要输入screen -r mc即可。


七、注意事项

1.手机关机或重启后,需要手动运行Linux子系统,你也可以在Linux Deploy的设置中选中开机自动启动。
2.尽量不要做那些大量占用CPU的操作,例如WorldEdit操作几十万个方块之类的,毕竟手机CPU性能不如电脑。
3.如果你想要让别人进入你的服务器,可以通过局域网进入,如果你想让外网玩家连接,还需要运行FRP映射,具体操作方法这里不说了。
4.将SSH软件和Linux Deploy添加进手机锁屏清理和内存垃圾清理白名单,否则会被清理进程导致服务器关闭。
5.手机服务器只适合少人数联机,如果你想用手机开百人服什么的还是老老实实买服务器吧……

八、进阶教程

可能您会遇到服务器运行中Java崩溃的情况,这通常是因为没有设置虚拟内存(swap)造成的。
设置虚拟内存方法:
打开 JuiceSSH,连接上服务器,输入以下命令:
  1. dd if=/dev/zero of=/data/local/swap bs=1M count=1024
  2. mkswap /data/local/swap
  3. swapon /data/local/swap
复制代码
这样就可以开启虚拟内存了,大小为 1GB。
输入 free -h 即可查看开启情况。
这里注意一下,swap 是会满的,使用一段时间后需要格式化一下。
  1. swapoff /data/local/swap
  2. mkswap /data/local/swap
  3. swapon /data/local/swap
复制代码
即可格式化 swap。

最后,如果你有什么不懂的,欢迎在帖子里问我,同时也欢迎加入我们的Android 开服交流群,QQ群号:312897201
作者的QQ:198366085
感谢阅读!

(C)Copyright 2017 Kousaka Kirino | Kirino.cn







欢迎光临 最MC论坛 (http://www.zuimc.com/) Powered by Discuz! X3.2