Spigot là một nền tảng máy chủ Minecraft nâng cao, được phát triển từ mã nguồn của CraftBukkit, mang lại hiệu suất tối ưu và khả năng mở rộng mạnh mẽ cho các admin máy chủ. Nhờ khả năng tối ưu hóa việc sử dụng tài nguyên hệ thống, Spigot giúp duy trì độ ổn định và cải thiện trải nghiệm chơi game cho người dùng, đồng thời vẫn giữ được khả năng tương thích với phần lớn plugin và tính năng từ CraftBukkit. Trong bài viết này, bạn sẽ được hướng dẫn chi tiết cách cài đặt và cấu hình Spigot trên hệ điều hành Ubuntu – nền tảng phổ biến cho các máy chủ chuyên dụng. Lưu ý: Toàn bộ các lệnh nên được thực thi bởi người dùng không phải root nhưng có quyền sudo để đảm bảo an toàn hệ thống.
1. Cài đặt các môi trường ban đầu
Triển khai một instance máy chủ đám mây Ubuntu 20.04 của DataOnline.
Cài đặt các tiện ích cần thiết.
$ sudo apt-get install wget apt-transport-https gnupg
Nhập GPG key của AdoptOpenJDK.
$ wget -qO - https://adoptopenjdk.jfrog.io/adoptopenjdk/api/gpg/key/public | sudo apt-key add -
Cấu hình kho lưu trữ apt của AdoptOpenJDK.
$ echo "deb https://adoptopenjdk.jfrog.io/adoptopenjdk/deb $(cat /etc/os-release | grep UBUNTU_CODENAME | cut -d = -f 2) main" | sudo tee /etc/apt/sources.list.d/adoptopenjdk.list
Làm mới chỉ mục gói cài đặt.
$ sudo apt-get update
Cài đặt AdoptOpenJDK.
$ sudo apt-get install adoptopenjdk-16-hotspot -y
2. Tạo Swapfile
Tạo một file swap. Ví dụ dưới đây cấp phát 1 GB, bạn có thể điều chỉnh giá trị này theo nhu cầu.
$ sudo fallocate -l 1G /swapfile
Đặt quyền truy cập cho file swap.
$ sudo chmod 600 /swapfile
Cấp phát không gian swap.
$ sudo mkswap /swapfile
Kích hoạt swap.
$ sudo swapon /swapfile
Làm cho file swap luôn được kích hoạt bằng cách chỉnh sửa file fstab.
$ sudo nano /etc/fstab
Thêm dòng sau vào cuối file:
/swapfile none swap sw 0 0
3. Tải xuống và chạy BuildTools
Đảm bảo bạn đang ở thư mục home của người dùng được sử dụng để build Spigot.
$ cd ~
Tạo một thư mục cho Spigot và build bản mới nhất. Ví dụ dưới đây build Spigot phiên bản 1.16.5. Nếu bạn cần phiên bản khác, hãy thay thế 1.16.5 bằng phiên bản bạn mong muốn.
$ mkdir buildtools && cd buildtools $ wget -O BuildTools.jar https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar $ java -jar BuildTools.jar --rev 1.16.5
Ghi nhớ tên file spigot jar được tạo ra. Ví dụ: spigot-1.16.5.jar
$ ls
Tạo một thư mục cho máy chủ của bạn.
$ cd ~ && mkdir server && cd server
Di chuyển file spigot jar vào thư mục máy chủ. Thay thế spigotname.jar
bằng tên file của bạn.
$ mv ~/buildtools/spigotname.jar ~/server/spigot.jar
4. Khởi động máy chủ của bạn
Tạo một script khởi động cho máy chủ.
$ nano start.sh
Dán đoạn mã sau vào file start.sh
. Các tham số 4G
trong -Xms4G -Xmx4G
cấu hình heapspace cho Java với 4 GB RAM. Bạn có thể thay đổi giá trị này theo lượng RAM bạn muốn cấp cho Spigot. Hệ điều hành cũng cần RAM khả dụng, vì vậy đừng gán toàn bộ RAM cho Spigot. Ví dụ, nếu VPS có 8 GB RAM, bạn có thể cân nhắc thiết lập -Xms7G -Xmx7G
.
#!/bin/sh while true do java -Xms4G -Xmx4G -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 echo "restarting in 10" sleep 10 done
Làm cho start.sh
có thể thực thi được.
$ chmod +x start.sh
Khởi động máy chủ của bạn.
$ ./start.sh
Lần đầu tiên chạy, hệ thống sẽ yêu cầu bạn chấp nhận EULA và không khởi động được. Script sẽ chạy vòng lặp, bạn cần nhấn Ctrl + C để thoát khỏi script tại thời điểm này. Sau đó, chấp nhận EULA.
$ nano eula.txt
Thay đổi giá trị eula=
từ false
thành true
. Lưu và thoát file.
Khởi động lại máy chủ.
$ ./start.sh
Tùy chọn: Chạy máy chủ ở chế độ nền
Cài đặt screen
.
$ sudo apt-get install screen -y
Mở một phiên làm việc của screen
.
$ screen -S "spigot"
Khởi chạy script máy chủ.
$ cd ~/server && ./start.sh
Cấu hình cài đặt máy chủ và cài đặt các plugin theo nhu cầu.
Xử lý sự cố
Nếu file spigot jar của bạn không chạy được, có thể là do máy chủ của bạn cần thêm RAM hoặc swapfile cần có dung lượng lớn hơn.