当前位置: 首页 > news >正文

零基础部署Minecraft到云服务器上教程

零基础部署Minecraft到云服务器上教程

    • 温馨提示

温馨提示

本教程是由博主个人飞书上直接复制下来,观感较差,请下载本教程对应的pdf资源文件进行查看(在最顶端,不过恳请各位留下一个赞再走吧)。本教程不包含云服务的购买,适合已有服务器的人观看

  1. Java17 配置
    检查版本
    java -version
    apt搜索
    apt-cache search java8
    apt安装
    sudo apt update
    sudo apt install openjdk-17-jdk
    切换版本
    sudo update-alternatives --config java
    非apt安装较为麻烦
    java在哪里?
    which java
    通常 /usr/bin/java 是一个指向实际 Java 安装位置的符号链接。为了确认实际的 Java 安装位置,你可以使用 readlink 命令来查看这个符号链接指向的具体路径。
    列出全部java
    ls /usr/lib/jvm/
    readlink -f /usr/bin/java
    找到了 java 命令的实际位置,输出显示为 /usr/lib/jvm/java-17-openjdk-amd64/bin/java
    配置环境
    nano ~/.bashrc
    然后在文件末尾添加以下行:
    export JAVA_HOME= <path_to_java>
    export PATH= P A T H : PATH: PATH:JAVA_HOME/bin
    使其生效
    source ~/.bashrc
    验证
    echo $JAVA_HOME
  2. Minecraft部署(一次部署实践)
    2.1 准备待部署的jar包,将其部署(顺利版本)
    Minecraft官网
    Spigot
    将jar放入文件下,同一级处创建start.sh
#!/bin/sh# 设置 JVM 参数
# -Xms: 初始堆内存
# -Xmx: 最大堆内存
# -XX:+UseG1GC: 使用 G1 垃圾回收器
# -jar: 指定 JAR 文件
# nogui: 非图形界面模式
java -Xms1G -Xmx1G -XX:+UseG1GC -jar spigot.jar nogui

授予脚本执行权限
chmod +x start.sh
开启服务
./start.sh

  • 第一次运行服务器时,它会生成一些默认的配置文件,如 server.properties 和 eula.txt。
  • 你需要编辑 eula.txt 文件,将 eula=false 更改为 eula=true 以接受 Minecraft 服务器的 EULA(最终用户许可协议)
    停止服务
    ./start.sh stop
    端口开放安全组
    server-port=25565
    2.2 swap扩容(虚拟内存突然大量临时文件产生发生抖动,小插曲)
    第一步:关闭交换分区
    sudo swapoff /swapfile
    展示交换分区
    sudo swapon --show
    扩充交换分区
    sudo fallocate -l 3G /swapfile
    增加权限
    sudo chmod 600 /swapfile
    格式化交换分区
    sudo mkswap /swapfile
    启用交换分区
    sudo swapon /swapfile
    2.3 保持会话
    (之前的服务打开受限于ssh,当ssh关闭,服务停止)
    可以使用tmux(开放式,断开ssh之后重连仍然可以操作会话),也可以使用systemd(封闭式,需要借助rcon进行命令交互,但更安全)
    执行
    sudo nano /etc/systemd/system/minecraft.service
    将文件改为
    [Unit]
    Description=Minecraft Server
    After=network.target

[Service]
User=mcserver
Group=mcserver
WorkingDirectory=/home/minecraft-server-1-18-2
ExecStart=/usr/bin/java -Xms1G -Xmx1G -jar spigot.jar nogui
Restart=on-failure
KillMode=mixed
TimeoutStopSec=120

[Install]
WantedBy=multi-user.target
重新加载服务文件
sudo systemctl daemon-reload
启用服务文件
sudo systemctl enable minecraft.service
2.4 (小插曲)添加服务用户
查找用户
id mcserver
若没有就增加一个
sudo adduser mcserver
添加到sudo组使其可以使用sudo命令
sudo usermod -aG sudo mcserver
sudo权限验证
sudo -l
增加权限操作Minecraft文件的权限
sudo chown -R mcserver:mcserver /home/minecraft-server1-18-2
sudo chmod -R u+rwX,g+rwX,o-rwx /home/minecraft-server1-18-2
2.5 Minecraft的生命周期
启动Minecraft
sudo systemctl start minecraft.service
停止Minecraft
sudo systemctl stop minecraft.service
重启Minecraft
sudo systemctl restart minecraft.service
检查Minecraft
sudo systemctl status minecraft.service
查看日志
sudo journalctl -u minecraft.service
2.6 远程操控
Minecraft服务器配置文件,将enable-rcon设为true,并设置一个rcon.password
enable-jmx-monitoring=false
rcon.port=25575
level-seed=
gamemode=survival
enable-command-block=false
enable-query=false
generator-settings={}
enforce-secure-profile=true
level-name=world
motd=A Minecraft Server
query.port=25565
pvp=true
generate-structures=true
max-chained-neighbor-updates=500000
difficulty=easy
network-compression-threshold=256
max-tick-time=60000
require-resource-pack=false
use-native-transport=true
max-players=4
online-mode=false
enable-status=true
allow-flight=false
initial-disabled-packs=
broadcast-rcon-to-ops=true
view-distance=8
server-ip=
resource-pack-prompt=
allow-nether=true
server-port=25565
enable-rcon=true
sync-chunk-writes=true
op-permission-level=4
prevent-proxy-connections=false
hide-online-players=false
resource-pack=
entity-broadcast-range-percentage=80
simulation-distance=8
rcon.password=
player-idle-timeout=0
debug=false
force-gamemode=false
rate-limit=0
hardcore=false
white-list=false
broadcast-console-to-ops=true
spawn-npcs=true
spawn-animals=true
function-permission-level=2
initial-enabled-packs=vanilla
level-type=minecraft:normal
text-filtering-config=
spawn-monsters=true
enforce-whitelist=false
spawn-protection=16
resource-pack-sha1=
max-world-size=10000000

交互命令
rcon-cli -H <server_ip> -p <rcon_port> -P <rcon_password> “”
每次输入命令太麻烦?
下载rcon客户端

http://www.lryc.cn/news/415021.html

相关文章:

  • 常见cms漏洞之dedecms
  • 深入探究Liunx服务器内存:模拟程序实际占用与缓存占用内存
  • 《Milvus Cloud向量数据库指南》——Zilliz Cloud 高可用性深度解析:赋能GenAI应用,引领非结构化数据新纪元
  • 2024/8/4 维高-STD60N驱动器(伺服)---客户反馈:电机异响
  • 驾驭RESTful海洋:在PyCharm中配置和使用REST客户端全攻略
  • 策略模式的一次应用
  • 探索PyCharm的C/C++支持:一站式配置指南
  • 手机三要素接口怎么对接呢?(一)
  • 状态同步帧同步
  • Flink 开发语言选择 —— Java vs Scala
  • 如何在 Apache Web 服务器中安装、配置和使用模块
  • 海信聚好看的DBDocter软件使用心得
  • dfs深搜
  • 【React】详解 index.js 文件
  • Android NDK/JNI面试题大全及参考答案(3万字长文)
  • 从根儿上学习spring一 之杂谈
  • AI智能名片小程序在促销性内容营销中的创新应用与策略分析
  • 13. 罗马数字转整数【 力扣(LeetCode) 】
  • 0CTF/TCTF 2023 OLAPInfra Nashorn RCE + HDFS UDF RCE
  • Studying-代码随想录训练营day56| 108.冗余连接、109.冗余连接II
  • 基于springboot+vue+uniapp的智慧物业平台小程序
  • MATLAB霍夫曼表盘识别系统
  • Python | Leetcode Python题解之第322题零钱兑换
  • python中类class的魔法方法
  • 计算机体系结构和计算机组成原理的区别
  • MySQL--数据库备份
  • influxDB的常用命令
  • 使用 1panel面板 部署 springboot 和 vue
  • 快速体验LLaMA-Factory 私有化部署和高效微调Llama3模型(曙光超算互联网平台异构加速卡DCU)
  • Cocos Creator 3.8.x bundle设置最佳方案