Cách cài đặt Spigot Minecraft Server trên Ubuntu 20.04

theanh

Administrator
Nhân viên
Spigot là phần mềm máy chủ Minecraft được sửa đổi dựa trên CraftBukkit. Nó cung cấp các tùy chọn cấu hình và tính năng tối ưu hóa hiệu suất bổ sung trong khi vẫn duy trì khả năng tương thích với tất cả các plugin và mod hiện có.

Trong hướng dẫn này, bạn sẽ học cách xây dựng và cài đặt Spigot Server trên máy chủ chạy Ubuntu 20.04 và cài đặt plugin.

Điều kiện tiên quyết​


  • Một máy chủ chạy Ubuntu 20.04 với tối thiểu 4GB RAM và 2 lõi CPU.

  • Một người dùng không phải root có quyền sudo.

  • Mọi thứ đều được cập nhật.
Mã:
$ sudo apt update && sudo apt upgrade
[*]
Cài đặt các gói cần thiết.
Mã:
$ sudo apt install wget apt-transport-https gnupg nano screen

Bước 1 - Cấu hình Tường lửa​

Bước đầu tiên là cấu hình tường lửa. Ubuntu mặc định có ufw (Uncomplicated Firewall).

Kiểm tra xem tường lửa có đang chạy không.
Mã:
$ sudo ufw status
Bạn sẽ nhận được kết quả sau.
Mã:
Trạng thái: không hoạt động
Cho phép cổng SSH ngăn tường lửa phá vỡ kết nối hiện tại khi bật nó.
Mã:
$ sudo ufw allow OpenSSH
Cho phép cổng 25565 để máy chủ Spigot chấp nhận kết nối.
Mã:
$ sudo ufw allow 25565
Bật Tường lửa
Mã:
$ sudo ufw enableLệnh có thể làm gián đoạn các kết nối ssh hiện có. Tiến hành thao tác (y|n)? yTường lửa đang hoạt động và được bật khi khởi động hệ thống
Kiểm tra lại trạng thái của tường lửa.
Mã:
$ sudo ufw status
Bạn sẽ thấy đầu ra tương tự.
Mã:
Trạng thái: hoạt độngĐến Hành động Từ-- ------ ----OpenSSH CHO PHÉP Mọi nơi25565 CHO PHÉP Mọi nơiOpenSSH (v6) CHO PHÉP Mọi nơi (v6)25565 (v6) CHO PHÉP Mọi nơi (v6)

Bước 2 - Cài đặt Java và Git​

Trình cài đặt Spigot cần Java và Git để hoạt động. Ubuntu 20.04 được cung cấp cùng với OpenJDK 17 là phiên bản Java mới nhất hiện có. Chạy lệnh sau để cài đặt.
Mã:
$ sudo apt install openjdk-17-jre-headless
Xác nhận bản phát hành.
Mã:
$ java --versionopenjdk 17.0.1 2021-10-19Môi trường chạy thời gian thực OpenJDK (bản dựng 17.0.1+12-Ubuntu-120.04)Máy ảo máy chủ OpenJDK 64-Bit (bản dựng 17.0.1+12-Ubuntu-120.04, chế độ hỗn hợp, chia sẻ)
Cài đặt Git.
Mã:
$ sudo apt install git

Bước 3 - Tạo người dùng Minecraft​

Bước tiếp theo là tạo người dùng chuyên dụng để chạy máy chủ.
Mã:
$ sudo adduser minecraft
Chuyển sang người dùng mới tạo.
Mã:
$ sudo su - minecraft

Bước 4 - Tải xuống và cài đặt Spigot​

Chúng ta sẽ xây dựng Spigot bằng ứng dụng BuildTools.jar. Bước đầu tiên là chuyển sang thư mục home.
Mã:
minecraft:$ cd ~
Tạo một thư mục mới cho BuildTools và chuyển đến đó.
Mã:
minecraft:$ mkdir buildtools && cd buildtools
Lấy tệp BuildTools.jar.
Mã:
minecraft:$ wget -O BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
Xây dựng phiên bản ổn định mới nhất của Spigot.
Mã:
minecraft:$ java -jar BuildTools.jar --rev latest
Tùy thuộc vào tài nguyên máy chủ khả dụng, quá trình này có thể mất thời gian để hoàn tất.

Kiểm tra tên tệp jar Spigot đã tạo.
Mã:
minecraft:$ lsapache-maven-3.6.0 BuildData BuildTools.jar BuildTools.log.txt Bukkit CraftBukkit Spigot spigot-1.18.1.jar work
Trong trường hợp của chúng tôi, tên is.

Tạo một thư mục khác cho Máy chủ Spigot của bạn và chuyển đến thư mục đó.
Mã:
minecraft:$ cd ~ && mkdir server && cd server
Di chuyển tệp jar Spigot của bạn đến thư mục máy chủ mới tạo.
Mã:
minecraft:$ mv ~/buildtools/spigot-1.18.1.jar ~/server/spigot.jar

Bước 5 - Khởi động Máy chủ Spigot​

Để khởi động máy chủ Spigot, chúng ta cần tạo một tập lệnh khởi động cho phép chúng ta truyền nhiều tham số Java khác nhau để tối ưu hóa máy chủ.

Tạo và mở tập lệnh khởi động cho Spigot.
Mã:
minecraft:$ sudo nano spigotstart.sh
Dán mã sau vào tệp.
Mã:
#!/bin/shjava -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
Tham số -Xms3G -Xmx3G đã cấu hình Java heapspace cho 4GB RAM. Chúng tôi đã để lại 1GB trống trong trường hợp của mình cho hệ điều hành và bất kỳ thứ gì khác mà nó cần ram. Thay đổi thành lượng RAM bạn muốn phân bổ cho máy chủ Spigot. Nếu máy chủ của bạn có 16GB RAM, bạn nên đặt tham số để chiếm 14 hoặc 15GB RAM.

Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Làm cho tập lệnh khởi động có thể thực thi.
Mã:
minecraft:$ chmod +x spigotstart.sh
Khởi động máy chủ Spigot của bạn lần đầu tiên.
Mã:
minecraft:$ ./spigotstart.sh
Máy chủ sẽ không khởi động mà thay vào đó sẽ kết thúc, hiển thị thông báo sau.
Mã:
[14:14:21] [ServerMain/INFO]: Bạn cần đồng ý với EULA để chạy máy chủ. Truy cập eula.txt để biết thêm thông tin.
Mở eula.txt để chỉnh sửa.
Mã:
minecraft:$ nano eula.txt
Đặt giá trị của biến eula thành true.
Mã:
#Bằng cách thay đổi cài đặt bên dưới thành TRUE, bạn đang chỉ ra sự đồng ý của mình với EULA của chúng tôi (https://account.mojang.com/documents/minecraft_eula).#CN 26 tháng 12 năm 2021 13:29:15 UTCeula=true
Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Trước khi khởi động máy chủ, hãy định cấu hình để chạy máy chủ dưới dạng dịch vụ ở chế độ nền.

Bước 6 - Định cấu hình Spigot dưới dạng dịch vụ​

Máy chủ cần shell chạy liên tục để hoạt động, điều này không lý tưởng. Chúng ta cần tạo một dịch vụ để máy chủ có thể tự động khởi động khi khởi động và chạy ở chế độ nền.

Thoát khỏi người dùng minecraft.
Mã:
minecraft:$ exit
Tạo tệp Dịch vụ Spigot và mở tệp đó để chỉnh sửa.
Mã:
$ sudo nano /etc/systemd/system/spigot.service
Dán mã sau.
Mã:
[Unit]Description=SpigotMCAfter=network.target[Service]Type=forkingUser=minecraftGroup=minecraftExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.shExecStop=/usr/bin/screen -S minecraft -p 0 -X stuff "stop$(printf \\r)"WorkingDirectory=/home/minecraft/server[Cài đặt]WantedBy=multi-user.target
Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn Ctrl + X và nhập Y khi được nhắc.

Tải lại daemon dịch vụ.
Mã:
$ sudo systemctl daemon-reload
Bật dịch vụ.
Mã:
$ sudo systemctl enable spigot
Khởi động dịch vụ Spigot.
Mã:
$ sudo systemctl start spigot
Kiểm tra trạng thái dịch vụ.
Mã:
$ sudo systemctl status spigot? spigot.service - SpigotMC Đã tải: đã tải (/etc/systemd/system/spigot.service; đã tắt; cài đặt trước của nhà cung cấp: đã bật) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Hai 2021-12-27 09:15:25 UTC; 6 giây trước Tiến trình: 32011 ExecStart=/usr/bin/screen -d -m -S minecraft /home/minecraft/server/spigotstart.sh (code=exited, sta> PID chính: 32012 (screen) Nhiệm vụ: 25 (giới hạn: 4691) Bộ nhớ: 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>27 tháng 12 09:15:25 spigot systemd[1]: Đang khởi động SpigotMC...27 tháng 12 09:15:25 spigot systemd[1]: Đã khởi động SpigotMC.

Bước 7 - Kết nối với Minecraft​

Bây giờ máy chủ của chúng ta đã hoạt động, đã đến lúc kết nối với Minecraft. Khởi chạy trò chơi Minecraft của bạn.



Nhấp vào nút Nhiều người chơi và bỏ qua cảnh báo trong tương lai bằng cách đánh dấu vào ô,Không hiển thị màn hình này nữa.



Nhấp vào nút Thêm máy chủ ở trang tiếp theo.



Nhập địa chỉ IP công khai và tên máy chủ của bạn. Nhấp vào Xong khi hoàn tất.

Máy chủ của bạn bây giờ sẽ xuất hiện trong danh sách.



Nhấp vào tên máy chủ của bạn và nhấn nút Tham gia máy chủ để bắt đầu máy chủ. Trò chơi của bạn sẽ sớm bắt đầu.



Bạn có thể yêu cầu bạn bè tham gia máy chủ của mình và chơi cùng họ.

Bước 8 - Tùy chỉnh thuộc tính máy chủ​

Bạn có thể tùy chỉnh máy chủ của mình bằng cách chỉnh sửa tệp /home/minecraft/server/server.properties. Chúng ta sẽ xem qua một số thuộc tính bên dưới.

  • Bật khối lệnh: Các giá trị khả dụng là true và false.
    Mã:
    enable-command-block=false

  • Gamemode: Các giá trị khả dụng là survival, creative, adventure và spectator. Chúng cũng có thể được định nghĩa bằng các số nguyên bắt đầu từ 0 cho chế độ sinh tồn, 1 cho chế độ sáng tạo, 2 cho chế độ phiêu lưu và 3 cho chế độ khán giả.
    Mã:
    gamemode=survival

  • Độ khó: Các giá trị có sẵn là hòa bình, dễ, bình thường và khó. Chúng cũng có thể được định nghĩa bằng các số nguyên bắt đầu từ 0 cho chế độ hòa bình, 1 cho chế độ dễ, 2 cho chế độ bình thường và 3 cho chế độ khó.
    Mã:
    difficulty=easy

  • MOTD: Viết tắt của Message Of The Day. Đây là thông điệp được hiển thị trên trang danh sách Máy chủ. Chấp nhận giá trị chuỗi. Hỗ trợ màu sắc, ký tự đặc biệt và mã định dạng. Không được dài quá 59 ký tự.
    Mã:
    motd=Máy chủ Minecraft

  • PVP: Cho phép chế độ Người chơi đấu với Người chơi. Các giá trị khả dụng là true và false.
    Mã:
    pvp=true

  • Server Port: Xác định cổng mà máy chủ Minecraft lắng nghe. Giá trị mặc định là 25565.
    Mã:
    server-port=25565
    Nếu bạn thay đổi giá trị cổng thành giá trị khác, bạn sẽ cần bật giá trị đó trong tường lửa; nếu không, người chơi sẽ không thể kết nối.

  • Xem wiki Minecraft để biết thêm các thuộc tính.
Bạn sẽ cần khởi động lại máy chủ Spigot sau khi thực hiện bất kỳ thay đổi nào đối với các thuộc tính này để chúng có hiệu lực.
Mã:
$ sudo systemctl restart spigot

Bước 9 - Cài đặt Plugin​

Bạn có thể tải xuống plugin từ các trang Spigot Resources hoặc Bukkit Plugin.

Nếu bạn tải xuống plugin từ Spigot, phương pháp sau sẽ không hiệu quả vì nó đã bị chặn. Bạn sẽ phải tải xuống tệp Jar theo cách thủ công và di chuyển tệp đó đến máy chủ. Nhưng nếu bạn đang tải xuống từ Bukkit, hãy sử dụng phương pháp sau để tải trực tiếp xuống máy chủ của bạn.

Tải xuống tệp .jar của plugin từ các trang trên vào thư mục /home/minecraft/server/plugins.
Mã:
$ sudo wget -P /home/minecraft/server/plugins/ --content-disposition
Cờ --content-disposition đảm bảo tệp được tải xuống với tên tệp chính xác bằng cách sử dụng tiêu đề Content-Disposition.

Ví dụ: nếu bạn đang tải xuống Plugin WorldEdit, đây là cách bạn sẽ tải xuống.
Mã:
$ sudo wget -P /home/minecraft/server/plugins --content-disposition https://dev.bukkit.org/projects/worldedit/files/latest
Để tải lại plugin, hãy khởi động lại máy chủ Spigot của bạn.
Mã:
$ sudo systemctl restart spigot

Bước 10 - Cập nhật Spigot​

Để cập nhật Spigot, bạn sẽ phải lặp lại bước 4 của hướng dẫn này để lấy phiên bản mới nhất của tệp BuildTools.jar rồi tạo tệp spigot.jar mới. Đảm bảo bạn đã sao lưu các tệp jar cũ và dừng máy chủ trước khi thực hiện việc đó.

Kết luận​

Như vậy là kết thúc hướng dẫn của chúng tôi về cách cài đặt và cấu hình máy chủ Spigot Minecraft trên hệ thống chạy Ubuntu 20.04. Nếu bạn có bất kỳ câu hỏi nào, hãy đăng chúng trong phần bình luận bên dưới.
 
Back
Bên trên