最近看到Minecraft更新了不少,有朋友提議開一個Minecraft伺服器一起玩,由於是要建一個24小時都開放的伺服器,所以就考慮到用閑置的VPS來作Minecraft伺服器,而選用的開服工具就是LinuxGSM,只要透過終端輸入指令,就可以輕易建構各種遊戲伺服器,不妨看看是如何建構的。
LinuxGSM網站
Minecraft伺服器建設指南:https://linuxgsm.com/lgsm/mcserver/
選用伺服器
在選用伺服器方面,可以依照我在甚麼是VPS?如何選擇一部VPS?Evolution Host介紹一文中所提出的要點:
- 價格
- 地理位置
- CPU 速度和可用(虛擬)核心數
- RAM的可用容量
- 服務商的支援服務及保證
而在選擇Minecraft伺服器時,尤其要注意RAM的容量和CPU速度,一般簡單而言,愈多人用愈多RAM和CPU,在純生存沒有模組的伺服器中
- 1-2人用512MB – 1GB RAM
- 3-4人用1GB – 2GB
- ….
而CPU用量視乎玩家的行為和建築(如紅石機關會加重CPU負擔)。
推薦伺服器
在預算許可的情況下,建議選擇臨近地區的伺服器,如香港、新加玻、日本等地。
一般價錢會是$5美金一個月/1GB RAM,在這價錢範圍下,我推薦你選擇DigitalOcean,一間在頗爲出名可靠的伺服器供應商,也設有位於新加玻的伺服器,目前正提供$100美金試用額,為期兩個月,也意味著你能夠免費租用8GB RAM的伺服器兩個月,如有需要按此前往:
- 先註冊帳號,使用$100美金試用額前需先投入5美金作驗證(驗證後5美金將會加入至賬戶餘額)
- 點
Get Started with a Droplet
- 選擇系統及計劃分類,一般用預設即可
- 選擇計劃方案,如1GB RAM,位置方面推薦選擇新加玻
- 選擇用密碼或SSH key登入伺服器,不了解SSH key的可以先選密碼,之後在VPS也可自行修改
- 點Create Droplet完成,之後會收到一封郵件,告訴你VPS的IP、用戶名和密碼
連接伺服器
若你是剛上手和購買VPS的,需按照以下步驟連接伺服器:
- 輸入指令前需要下載Putty(一般Windows用戶點64bit即可)或其他終端客戶端(如上次介紹的Snowflake軟件亦可)
- 用剛得到的資料登入伺服器,先填寫IP地址,如
104.123.456.789
,點Open
- 再輸入用戶名和密碼即可,輸入時按右鍵可直接貼上剪貼板內容,輸入完用戶名按
Enter
,輸入密碼時看不到所輸入的內容是正常的,可以忽略掉,輸入完直接按Enter
即可。
安裝LinuxGSM
連接伺服器後,可以直接輸入指令,預設你在購買VPS時選擇的是Ubuntu或Debian系統,LinuxGSM只支援Ubuntu、Debian和CentOS,請查看https://linuxgsm.com/lgsm/mcserver/以獲取相對應指令。
DigitalOcean用戶亦可參考社區文檔:https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-18-04
- 更新套件,按右鍵貼上以下指令, 當中可能需要回答問題來確認一下安裝,一般答Y或預設選項即可,需時數分鐘
-
apt-get update
-
apt-get upgrade
-
- 可先創建一個名為
sammy
的sudo user,sammy
可替換成你喜歡的名稱- 輸入指令後需選擇密碼,其他帳號資料可以按
Enter
留空adduser sammy
- 賦予superuser權限
usermod -aG sudo sammy
- 登入
sammy
帳號su - sammy
- 輸入指令後需選擇密碼,其他帳號資料可以按
- Ubuntu/Debian系統輸入以下指令來安裝LinuxGSM的依賴套件
sudo dpkg --add-architecture i386; sudo apt update; sudo apt install mailutils postfix curl wget file tar bzip2 gzip unzip bsdmainutils python util-linux ca-certificates binutils bc jq tmux default-jre
CentOS輸入以下指令
yum install epel-release
yum install mailx postfix curl wget tar bzip2 gzip unzip python3 binutils bc jq tmux java-11-openjdk
輸入Y確認安裝即可
如遇上以下問題,建議選擇no configuration(Postfix用於為伺服器寄送郵件,不用設置)
之後會繼續自動完成安裝
出現以下句子即代表完成
- 之後我們需要為Minecraft伺服器創建一個用戶及安裝LinuxGSM
- 修正依賴套件及在server.properties設定伺服器IP
- 輸入指令來啟動伺服器即可
./mcserver start
若要查看Minecraft伺服器詳情,可輸入
./mcserver details
若要進入Minecraft Console,可輸入以下指令,但在離開時請按Ctrl + b
,再按d
./mcserver console
更多指令可查看https://linuxgsm.com/lgsm/mcserver/ Usage一欄
後續問題
Q:為何我的伺服器已顯示Online,但在Minecraft裏卻無法連接?
A:很可能你開啟了防火牆但沒有把Minecraft伺服器端口加到防火牆中,如UFW – Uncomplicated Firewall,只需登陸sudo user(如Sammy),將端口添加到防火牆允許名單即可
- 查看有沒有安裝UFW
sudo ufw version
若有安裝,會顯示版本號
ufw 0.35
- 查看有沒有把Minecraft伺服器端口(25565)加到防火牆中
sudo ufw status
- 將Minecraft伺服器端口(25565)新增到防火牆中
sudo ufw allow 25565
Q:下次該用那個用戶登入來操作VPS或Minecraft伺服器?
A:需要權限的話用sudo user(如sammy
)登陸,如安裝套件、設定系統等,操作Minecraft伺服器就登陸mcserver
,可執行./mcserver <指令>
Q:如何備份伺服器?
A: 登入mcserver用戶,輸入
./mcserver backup
備份檔案會在~/lgsm/backup
找到
Q:如何修改伺服器參數?如啟動的RAM配額、備份數量等?
A:到~/lgsm/config-lgsm/mcserver/common.cfg
添加需要的參數,如
## 4GB RAM javaram="4096" # -Xmx$4096M executable="java -Xmx${javaram}M -jar ${serverfiles}/minecraft_server.jar" ## Backup | https://docs.linuxgsm.com/commands/backup maxbackups="28" maxbackupdays="30" stoponbackup="off"
亦可配合Crontab自動定時備份(需自行安裝),如每六小時備份一次
0 */6 * * * ./mcserver backup > /dev/null 2>&1
總結
以上就是用LinuxGSM構建Minecraft伺服器的過程,亦包含了選購VPS、連接VPS教學,除了Minecraft以外,LinuxGSM亦可用於建立其他遊戲伺服器,如CSGO、ARK Survival Envolved、7 Days to die等等超過100種遊戲,架設方法大同小異。