如何在 Ubuntu 20.04 上安装 Spigot Minecraft 服务器如何在 Ubuntu 20.04 上安装 Spigot Minecraft 服务器如何在 Ubuntu 20.04 上安装 Spigot Minecraft 服务器如何在 Ubuntu 20.04 上安装 Spigot Minecraft 服务器
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Ubuntu 20.04 上安装 Spigot Minecraft 服务器

在此页

  1. 先决条件
  2. 第 1 步 - 配置防火墙
  3. 第 2 步 - 安装 Java 和 Git
  4. 第 3 步 - 创建 Minecraft 用户
  5. 第 4 步 - 下载并安装 Spigot
  6. 第 5 步 - 启动 Spigot 服务器
  7. 第 6 步 - 将 Spigot 配置为服务
  8. 第 7 步 - 连接到 Minecraft
  9. 第 8 步 - 自定义服务器属性
  10. 第 9 步 - 安装插件
  11. 第 10 步 - 更新 Spigot
  12. 结论

Spigot 是基于 CraftBukkit 修改的 Minecraft 服务器软件。它提供额外的性能优化、配置选项和功能,同时保持与所有现有插件和模组的兼容性。

在本教程中,您将学习如何在基于 Ubuntu 20.04 的服务器上构建和安装 Spigot 服务器以及安装插件。

先决条件

  • A server running Ubuntu 20.04 with a minimum of 4GB RAM and 2 CPU Cores.

  • A non-root user with sudo privileges.

  • Everything is updated.

    $ sudo apt update && sudo apt upgrade
    
  • Install the required packages.

    $ sudo apt install wget apt-transport-https gnupg nano screen
    

第 1 步 - 配置防火墙

第一步是配置防火墙。 Ubuntu 默认带有 ufw (Uncomplicated Firewall)。

检查防火墙是否正在运行。

$ sudo ufw status

您应该得到以下输出。

Status: inactive

允许 SSH 端口以防止防火墙在启用时中断当前连接。

$ sudo ufw allow OpenSSH

允许 Spigot 服务器的端口 25565 接受连接。

$ sudo ufw allow 25565

启用防火墙

$ sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

再次检查防火墙的状态。

$ sudo ufw status

您应该会看到类似的输出。

Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
25565                      ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)
25565 (v6)                 ALLOW       Anywhere (v6)

第 2 步 - 安装 Java 和 Git

Spigot 安装程序需要 Java 和 Git 才能工作。 Ubuntu 20.04 附带 OpenJDK 17 作为最新可用的 Java 版本。运行以下命令来安装它。

$ sudo apt install openjdk-17-jre-headless

确认发布。

$ java --version
openjdk 17.0.1 2021-10-19
OpenJDK Runtime Environment (build 17.0.1+12-Ubuntu-120.04)
OpenJDK 64-Bit Server VM (build 17.0.1+12-Ubuntu-120.04, mixed mode, sharing)

安装 Git。

$ sudo apt install git

第 3 步 - 创建 Minecraft 用户

下一步是创建一个专门的用户来运行服务器。

$ sudo adduser minecraft

切换到新创建的用户。

$ sudo su - minecraft

第 4 步 - 下载并安装 Spigot

我们将使用 BuildTools.jar 应用程序构建 Spigot。第一步是切换到主目录。

minecraft:$ cd ~

为 BuildTools 创建一个新目录并转移到该目录。

minecraft:$ mkdir buildtools && cd buildtools

获取 BuildTools.jar 文件。

minecraft:$ wget -O BuildTools.jar  https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar

构建最新的稳定版本的 Spigot。

minecraft:$ java -jar BuildTools.jar --rev latest

根据可用的服务器资源,此过程可能需要一些时间才能完成。

检查创建的 Spigot jar 文件的名称。

minecraft:$ ls 
apache-maven-3.6.0  BuildData  BuildTools.jar  BuildTools.log.txt  Bukkit  CraftBukkit  Spigot  spigot-1.18.1.jar  work

在我们的例子中,名字是。

为您的 Spigot 服务器创建另一个目录并切换到它。

minecraft:$ cd ~ && mkdir server && cd server

将 Spigot jar 文件移动到新创建的服务器目录。

minecraft:$ mv ~/buildtools/spigot-1.18.1.jar ~/server/spigot.jar

第 5 步 - 启动 Spigot 服务器

要启动 Spigot 服务器,我们需要创建一个启动脚本,允许我们传递各种 Java 参数来优化服务器。

创建并打开 Spigot 的启动脚本。

minecraft:$ sudo nano spigotstart.sh

将以下代码粘贴到文件中。

#!/bin/sh

java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -jar spigot.jar nogui

参数 -Xms3G -Xmx3G 为 4GB RAM 配置了 Java 堆空间。在我们的案例中,我们为操作系统和它需要 ram 的任何其他东西留出了 1GB 的空闲空间。将其更改为您要分配给 Spigot 服务器的 RAM 量。如果您的服务器有 16GB 的 RAM,您应该将参数设置为占用 14 或 15GB 的 RAM。

完成后,按 Ctrl + X 并在出现提示时输入 Y 来保存文件。

使启动脚本可执行。

minecraft:$ chmod +x spigotstart.sh

第一次启动您的 Spigot 服务器。

minecraft:$ ./spigotstart.sh

服务器不会启动而是终止,并给出以下消息。

[14:14:21] [ServerMain/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

打开 eula.txt 进行编辑。

minecraft:$ nano eula.txt

将变量 eula 的值设置为 true。

#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Sun Dec 26 13:29:15 UTC 2021
eula=true

完成后,按 Ctrl + X 并在出现提示时输入 Y 来保存文件。

在启动服务器之前,让我们将其配置为在后台将其作为服务运行。

第 6 步 - 将 Spigot 配置为服务

服务器需要 shell 一直运行才能工作,这是不理想的。我们需要创建一个服务,以便服务器可以在开机时自动启动并在后台运行。

退出 minecraft 用户。

minecraft:$ exit

创建一个 Spigot 服务文件并打开它进行编辑。

$ sudo nano /etc/systemd/system/spigot.service

粘贴以下代码。

[Unit]
Description=SpigotMC
After=network.target

[Service]
Type=forking
User=minecraft
Group=minecraft
ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh
ExecStop=/usr/bin/screen -S minecraft -p 0 -X stuff "stop$(printf \\r)"
WorkingDirectory=/home/minecraft/server

[Install]
WantedBy=multi-user.target

完成后,按 Ctrl + X 并在出现提示时输入 Y 来保存文件。

重新加载服务守护进程。

$ sudo systemctl daemon-reload

启用服务。

$ sudo systemctl enable spigot

启动 Spigot 服务。

$ sudo systemctl start spigot

检查服务状态。

$ sudo systemctl status spigot
? spigot.service - SpigotMC
     Loaded: loaded (/etc/systemd/system/spigot.service; disabled; vendor preset: enabled)
     Active: active (running) since Mon 2021-12-27 09:15:25 UTC; 6s ago
    Process: 32011 ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh (code=exited, sta>
   Main PID: 32012 (screen)
      Tasks: 25 (limit: 4691)
     Memory: 3.2G
     CGroup: /system.slice/spigot.service
             ??32012 /usr/bin/SCREEN -d -m -S minecraft /home/minecraft/server/spigotstart.sh
             ??32013 /bin/sh /home/minecraft/server/spigotstart.sh
             ??32014 java -Xms3G -Xmx3G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockEx>

Dec 27 09:15:25 spigot systemd[1]: Starting SpigotMC...
Dec 27 09:15:25 spigot systemd[1]: Started SpigotMC.

第 7 步 - 连接到我的世界

现在我们的服务器已启动并运行,是时候连接到 Minecraft 了。启动您的 Minecraft 游戏。

单击“多人游戏”按钮并通过选中“不再显示此屏幕”框来忽略未来的警告。

单击下一页上的添加服务器按钮。

输入您的服务器公共 IP 地址和名称。完成后单击完成。

您的服务器现在将出现在列表中。

单击您的服务器名称,然后按“加入服务器”按钮启动服务器。您的游戏即将开始。

您可以邀请您的朋友加入您的服务器并与他们一起玩。

第 8 步 - 自定义服务器属性

您可以通过编辑 /home/minecraft/server/server.properties 文件来自定义您的服务器。我们将通过下面的一些属性。

  • Enable command blocks: Values available are true and false.

    enable-command-block=false
    
  • Gamemode: Values available are survival, creative, adventure, and spectator. They can also be defined by integers starting from 0 for survival, 1 for creative, 2 for adventure, and 3 for spectator.

    gamemode=survival
    
  • Difficulty: Values available are peaceful, easy, normal, and hard. They can also be defined by integers starting from 0 for peaceful, 1 for easy, 2 for normal and 3 for hard.

    difficulty=easy
    
  • MOTD: Stands for Message Of The Day. It is the message that is shown on the Server list page. Accepts a string value. Supports color, special characters and formatting codes. It should not be longer than 59 characters.

    motd=A Minecraft Server
    
  • PVP: Enables the Player versus Player mode. Values available are true and false.

    pvp=true
    
  • Server Port: Defines the port on which the Minecraft server listens to. The default value is 25565.

    server-port=25565
    

    If you change the port value to something else, you will need to enable it in the firewall; otherwise, players won't be able to connect.

  • See the Minecraft wiki for more properties.

在对这些属性进行任何更改后,您需要重新启动 Spigot 服务器才能使它们生效。

$ sudo systemctl restart spigot

第 9 步 - 安装插件

您可以从 Bukkit 插件页面下载插件。

如果您从 Spigot 下载插件,以下方法将无法使用,因为它已被阻止。您必须手动下载 Jar 文件并将其移动到服务器。但是如果你是从Bukkit下载的,使用下面的方法直接下载到你的服务器。

从以上页面下载插件的.jar文件到/home/minecraft/server/plugins目录。

$ sudo wget -P /home/minecraft/server/plugins/ --content-disposition <plugin url>

标志 --content-disposition 通过使用 Content-Disposition 标头确保文件以正确的文件名下载。

例如,如果您正在下载 WorldEdit 插件,这就是您下载它的方式。

$ sudo wget -P /home/minecraft/server/plugins --content-disposition https://dev.bukkit.org/projects/world
edit/files/latest

要重新加载插件,请重新启动您的 Spigot 服务器。

$ sudo systemctl restart spigot

第 10 步 - 更新 Spigot

更新 Spigot 需要您重复本指南的第 4 步以获取最新版本的 BuildTools.jar 文件,然后创建一个新的 spigot.jar文件。确保备份旧的 jar 文件并在执行此操作之前停止服务器。

结论

我们关于在基于 Ubuntu 20.04 的系统上安装和配置 Spigot Minecraft 服务器的教程到此结束。如果您有任何问题,请在下面的评论中发表。

©2015-2025 艾丽卡 support@alaica.com