MC Forge Ubuntu开服
待做清单
- 需要一台云服务器(可以是带公网也可以是局域网,但是局域网服务器是你一定能访问,Ubuntu系统),不带公网服务器需要内网穿透,后面会讲
- 需要提前安装好对应版本的forge服务端核心(我这里以1.20.1版本为例),forge核心下载地址:https://files.minecraftforge.net/net/minecraftforge/forge/
- 选择使用的开服方式,有MCSM面板管理开服,也有直接终端开服,面板服是使用docker容器,可以容器分离互不影响,可以多开,终端服适用于单独开服,比较简单
MCSM面板开服
MCSM面板安装
输入以下命令安装,如果遇到是否继续的输入y来确定
1
2
3
4
5#更新下载源
apt update && apt install wget && apt install git
#下载MCSM面板
sudo wget -qO- https://gitee.com/mcsmanager/script/raw/master/setup_cn.sh | bash出现以下图片代表着安装成功:
输入以下命令开启web端面板服务以及开机自启
1
2systemctl start mcsm-{daemon,web}
systemctl enable mcsm-{daemon,web}.service然后带上你的IP地址:23333打开mcsm面板,第一次进去会告诉要创建一个管理员,创建好后,进去如图(我的是配置好的跟你,可能有些许信息不一样):
安装docker
输入以下命令安装docker并开启docker服务
1
2
3
4
5
6
7
8# 安装docker,如果遇到问是否继续的就输入y来确定
apt install docker.io
# 设置docker开机自启和启动docker
systemctl enable docker && systemctl start docker
# 检查是否安装成功,若安装成功会显示 Docker version x.x.x
docker -v更换docker容器下载源(终端输入):
1
2
3
4
5
6
7
8
9vi /etc/docker/daemon.json
#输入以下内容,按esc输入英文冒号,然后输入wq保存
{
"registry-mirrors": ["https://docker.nju.edu.cn"]
}
# 重启docker服务
systemctl restart docker.service
创建jdk镜像
在面板左边节点管理中找到你的节点,并点击镜像管理
进去后点击新建镜像,选择自己玩的mc版本对应需要的jdk版本,我这边1.20.1选择jdk17
点击后进去,直接按确定,等待镜像创建成功
创建实例并配置服务端
在mcsm面板中,点击应用实例,先在应用示例列表选择应用实例
点击新建实例
选择java版Minecraft游戏服务端,然后选择上传单个服务端软件的创建方式
填写实例名,然后将以下命令替换掉启动命令模板里的内容
1
java -server -Dfile.encoding=UTF-8 -Duser.language=zh -Duser.country=CN -jar ${ProgramName} --installServer
去下载对应版本的forge核心的安装程序,点击如图所示按钮,跳过广告下载
去面板上传下载好的forge核心的安装包,然后进入配置面板
选择进程启动方式选择虚拟化容器,然后环境容器选择刚刚创建的jdk镜像,然后选择网络模式为host,设置最大内存,点击保存配置
点击控制台,返回到控制台后,点击开启实例,然后等待下载成功,如图所示
点击文件管理,然后选择并编辑run.sh文件,在@libraries前面添加以下内容
1
-server -Dfile.encoding=UTF-8 -Duser.language=zh -Duser.country=CN
注意空格间隔,如下图所示
点击保存文件,然后回到控制台,点击高级实例设置,将启动命令替换如下命令
1
bash run.sh
如下图所示
点击保存设置,回到控制台,再次开启实例
然后开启后需要修改eula.txt文件里的信息,同意eula协议
回到控制台,再次点击开启实例。出现Done则表示服务器开启成功。
然后可以回到服务端配置文件中,点击浏览[通用] server.properties,将online-mode正版验证关掉,然后回到控制台重启实例即可
连接服务器
打开你的mc游戏,然后连接服务器输入你的服务器IP:25565即可连接
终端服开服
环境配置
在终端中输入以下命令进行更新下载源,以及下载工具
1
apt update && apt install wget
配置jdk环境
1
2
3
4
5
6#替换成你要下载的jdk版本
sudo apt-get install openjdk-17-jdk
#安装jdk17环境
#验证是否安装成功
java -version安装forge核心,进入forge下载地址:https://files.minecraftforge.net/net/minecraftforge/forge/,然后找到如下图所示版本的安装程序
右键复制链接,然后在地址栏里粘贴下来,将url=后面的地址复制下来,得到真正下载链接:https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.2.32/forge-1.20.1-47.2.32-installer.jar如下图所示
然后回到你的云服务器里,在终端输入以下命令进行下载forge核心的安装包
1
2
3
4
5
6
7
8
9
10#我想将核心下载在我home目录下的mc目录
cd /home
mkdir mc && cd mc
#在mc目录下载刚刚复制下来的链接
wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.2.32/forge-1.20.1-47.2.32-installer.jar
#下载好后查看是否下载成功
ls
#发现目录中有类似于forge-1.20.1-47.2.32-installer.jar的包,版本不一样也是类似这种格式的安装forge核心
1
2#forge-1.20.1-47.2.32-installer.jar这是我的包名,需替换到你自己的包名才行
java -server -Dfile.encoding=UTF-8 -Duser.language=zh -Duser.country=CN -jar forge-1.20.1-47.2.32-installer.jar --installServer
启动服务端
以上操作安装好后,会发现目录底下有个run.sh(用ls命令查看),输入以下命令启动服务端
1
2
3
4
5
6
7
8
9
10
11#需要添加一些东西到run.sh再进行启动
vi run.sh
#在@libraries前面加入以下,使用crtl+shift+v粘贴到编辑器里
-server -Dfile.encoding=UTF-8 -Duser.language=zh -Duser.country=CN
#最终编辑器里完整语句为
java @user_jvm_args.txt -server -Dfile.encoding=UTF-8 -Duser.language=zh -Duser.country=CN @libraries/net/minecraftforge/forge/1.20.1-47.2.32/unix_args.txt "$@"
#按esc,输入:wq,然后回车保存
bash run.sh运行好后,中途会被自动退出,是因为他需要同意eula协议,如下图所示
输入以下命令进行同意eula协议
1
2
3
4
5
6vi eula.txt
#将eula=false的false改为true,按住shift+a切换末尾输入模式,然后删除false,改成true
eula=true
#按esc,输入:wq,然后回车保存然后再次输入bash run.sh启动服务端,等待出现done就等于启动成功,如下图所示
然后按住crtl+c退出服务端,然后输入以下命令,进行查看和修改mc游戏特殊设置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#输入ls查看
ls
#会看到有一个server.properties文件,进去编辑它
vi server.properties
#会发现里面有很多设置,我们这里就修改一个设置,剩下的可以根据后面发的地址,对着解释自己改
#输入/online-mode回车,将online-mode=true的true改为false,将正版验证关闭
#按住shift+a切换末尾输入模式,然后删除true,改成false
online-mode=true
#按esc,输入:wq,然后回车保存
#重启服务端
bash run.sh
连接服务器
打开你的mc游戏,然后连接服务器输入你的服务器IP:25565即可连接
内网穿透
引言
- 如果你跟我一样,服务器是在校园网这种自己能够访问的局域网ip服务器,这个时候跟公网好友联机就得需要内网穿透出去
- 如果你是单纯就是没买公网ip的云服务器,你也可以直接在云服务器部署并启动mcsm面板,然后内网穿透出来面板地址来进行配置,配置好后,就内网穿透服务端口出来,再连接即可
安装内网穿透工具cpolar
安装下载工具
1
sudo apt-get install curl
安装cpolar
1
2
3
4
5#安装cpolar
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
#查看是否安装成功
cpolar version
token认证
进去cpolar官网注册账号,官网:https://www.cpolar.com/
选择免费套藏
登陆后,点击验证,将authtoken复制下来
然后在终端输入以下命令
1
2
3
4
5
6#xxxxxx为你刚刚复制的authtoken
cpolar authtoken xxxxxxx
#启动服务以及设置开机自启动
sudo systemctl start cpolar
sudo systemctl enable cpolar
进行内网穿透
需要内网穿透部署mcsm面板服务器的:
如果要穿透mcsm面板则输入以下命令
1
cpolar http 233333
然后copy进行访问mcsm面板进行回到mcsm面板开服那里开服
需要内网穿透服务端口供公网联机:
输入以下命令:
1
2#端口号为自己设定的mc服务端端口,如果按照我的教学来的默认就是25565
cpolar tcp 25565将上方框框的地址和端口复制下来,即可去mc服务器连接了