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.
[*]
Cài đặt các gói cần thiết.
Kiểm tra xem tường lửa có đang chạy không.
Bạn sẽ nhận được kết quả sau.
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ó.
Cho phép cổng 25565 để máy chủ Spigot chấp nhận kết nối.
Bật Tường lửa
Kiểm tra lại trạng thái của tường lửa.
Bạn sẽ thấy đầu ra tương tự.
Xác nhận bản phát hành.
Cài đặt Git.
Chuyển sang người dùng mới tạo.
Tạo một thư mục mới cho BuildTools và chuyển đến đó.
Lấy tệp BuildTools.jar.
Xây dựng phiên bản ổn định mới nhất của Spigot.
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.
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 đó.
Di chuyển tệp jar Spigot của bạn đến thư mục máy chủ mới tạo.
Tạo và mở tập lệnh khởi động cho Spigot.
Dán mã sau vào tệp.
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.
Khởi động máy chủ Spigot của bạn lần đầu tiên.
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ở eula.txt để chỉnh sửa.
Đặt giá trị của biến eula thành 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.
Thoát khỏi người dùng minecraft.
Tạo tệp Dịch vụ Spigot và mở tệp đó để chỉnh sửa.
Dán mã sau.
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ụ.
Bật dịch vụ.
Khởi động dịch vụ Spigot.
Kiểm tra trạng thái dịch vụ.
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ọ.
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.
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.
Để tải lại plugin, hãy khởi động lại máy chủ Spigot của bạn.
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
Mã:
Trạng thái: không hoạt động
Mã:
$ sudo ufw allow OpenSSH
Mã:
$ sudo ufw allow 25565
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
Mã:
$ sudo ufw status
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
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ẻ)
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
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 ~
Mã:
minecraft:$ mkdir buildtools && cd buildtools
Mã:
minecraft:$ wget -O BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
Mã:
minecraft:$ java -jar BuildTools.jar --rev latest
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
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
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
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
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
Mã:
minecraft:$ ./spigotstart.sh
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ã:
minecraft:$ nano eula.txt
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
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
Mã:
$ sudo nano /etc/systemd/system/spigot.service
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
Tải lại daemon dịch vụ.
Mã:
$ sudo systemctl daemon-reload
Mã:
$ sudo systemctl enable spigot
Mã:
$ sudo systemctl start spigot
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
-
Xem wiki Minecraft để biết thêm các thuộc tính.
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
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
Mã:
$ sudo systemctl restart spigot