這篇文章也可以在我的博客中查看
準(zhǔn)備工作
- 一臺(tái)服務(wù)器
- vps或者獨(dú)立服務(wù)器都可以,有完全控制權(quán)就ok
- 建議選擇國(guó)內(nèi)服務(wù)器,國(guó)外服務(wù)器連接時(shí)延較高,不適合做游戲服務(wù)器
- 租用前應(yīng)詳細(xì)了解配置要求(以下配置要求以同時(shí)在線5人左右的基友服為例)
- 帶寬建議至少3M,帶寬過(guò)小會(huì)導(dǎo)致長(zhǎng)時(shí)間讀圖。另外,玩家數(shù)量過(guò)多應(yīng)進(jìn)一步增加帶寬,每個(gè)玩家大概占用100Kb/s的數(shù)據(jù)傳輸,如果是mod服或者有多動(dòng)癥玩家,可能會(huì)更高。
- 硬件配置:純凈服至少1核2G內(nèi)存;Mod服至少2核4G內(nèi)存。人多需要進(jìn)一步提升。
- Linux系統(tǒng)(本文以Debian10為例)
更新系統(tǒng)包
運(yùn)行以下命令,確保系統(tǒng)程序包處于最新?tīng)顟B(tài)。
apt update
安裝java
兩種做法,如果服務(wù)器已安裝合適的java,可以跳過(guò)
apt安裝
如果你的系統(tǒng)包管理工具自帶最新jdk
,可以直接安裝:
比如Debian11
應(yīng)該就有:
查找java 17
(目前最新的長(zhǎng)期支持版本)
root@debian:~# apt-cache search openjdk | grep 17
openjdk-17-dbg - Java runtime based on OpenJDK (debugging symbols)
openjdk-17-demo - Java runtime based on OpenJDK (demos and examples)
openjdk-17-doc - OpenJDK Development Kit (JDK) documentation
openjdk-17-jdk - OpenJDK Development Kit (JDK)
openjdk-17-jdk-headless - OpenJDK Development Kit (JDK) (headless)
openjdk-17-jre - OpenJDK Java runtime, using Hotspot JIT
openjdk-17-jre-headless - OpenJDK Java runtime, using Hotspot JIT (headless)
openjdk-17-jre-zero - Alternative JVM for OpenJDK, using Zero
openjdk-17-source - OpenJDK Development Kit (JDK) source files
安裝jdk或者jre
兩者都可以開(kāi)服,如果你是開(kāi)發(fā)者,建議選擇jdk
。否則選擇jre
可以節(jié)省安裝空間。
apt install openjdk-17-jdk
手動(dòng)安裝
由于大便10自帶的程序庫(kù)不包含最新版java運(yùn)行時(shí)(檢查于2022.12.8),而高版本服務(wù)器需要最新java,因此我們這一步手動(dòng)從官網(wǎng)下載安裝Java。
進(jìn)入Oracle官網(wǎng)找到長(zhǎng)期支持的jdk安裝包并下載。此處我們直接下載針對(duì)debian的安裝包:.deb
文件。
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.deb
安裝debian程序包
apt install ./jdk-17_linux-x64_bin.deb
為了在命令行中運(yùn)行java
,我們需要將安裝好的java加入環(huán)境變量。以下命令臨時(shí)導(dǎo)出至環(huán)境變量,持續(xù)至?xí)捊Y(jié)束。
export JAVA_HOME=/usr/lib/jvm/jdk-17
export PATH=$PATH:$JAVA_HOME/bin
此時(shí)輸入以下命令,應(yīng)該可以看到j(luò)ava版本,說(shuō)明java配置完畢
java --version
刪除安裝包
rm jdk-17_linux-x64_bin.deb
題外話,如果你以這種形式安裝java17,在卸載的時(shí)候,它的包名為jdk-17
# 以下是卸載命令,不要輸入
apt --purge autoremove jdk-17
配置環(huán)境
安裝screen
mc服務(wù)器不支持作為服務(wù)運(yùn)行,我們需要使用screen以保證在登出控制臺(tái)后服務(wù)器仍然有效。
apt install screen
下載minecraft服務(wù)端
先在用戶(hù)目錄下創(chuàng)建minecraft
文件夾,然后下載最新的minecraft服務(wù)端。
- 純凈服:官網(wǎng)只給了最新版的下載,建議到第三方平臺(tái)mcversions下載服務(wù)端
- 插件服:建議使用Paper服務(wù)端
- mod服:建議使用forge服務(wù)端
此處以插件服為例,復(fù)制下載鏈接后,輸入以下命令:
mkdir ~/minecraft
cd ~/minecraft
wget https://api.papermc.io/v2/projects/paper/versions/1.19.2/builds/307/downloads/paper-1.19.2-307.jar
如果你安裝的是forge服務(wù)器,下載的jar
其實(shí)只是一個(gè)安裝工具,之后還需要執(zhí)行以下命令安裝,其中forge-x.xx.x-installer.jar
是你jar
的文件名:
java -jar forge-x.xx.x-installer.jar --installServer
該命令會(huì)產(chǎn)生另一個(gè)文件,該文件才是真正的服務(wù)端。
初始化服務(wù)器
第一次運(yùn)行服務(wù)器,將生成必要文件
java -Xms1024M -Xmx2048M -jar paper-1.19.2-307.jar nogui
輸出大致如下:
Downloading mojang_1.19.2.jar
Applying patches
Starting org.bukkit.craftbukkit.Main
System Info: Java 17 (Java HotSpot(TM) 64-Bit Server VM 17.0.5+9-LTS-191) Host: Linux 4.19.0-21-amd64 (amd64)
Loading libraries, please wait...
[15:49:25 INFO]: Building unoptimized datafixer
[15:49:26 ERROR]: Failed to load properties from file: server.properties
[15:49:26 WARN]: Failed to load eula.txt
[15:49:26 INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
簡(jiǎn)單來(lái)說(shuō)就是生成了服務(wù)器文件,然后提示需要同意用戶(hù)協(xié)議。
輸入ls
可以查看確認(rèn)目錄下的文件,輸出如下:
cache eula.txt libraries logs paper-1.19.2-307.jar server.properties versions
配置服務(wù)器
同意用戶(hù)協(xié)議
用編輯器打開(kāi)eula.txt
vi eula.txt
將文件內(nèi)的eula
賦值為true
eula=true
更改配置文件
你在開(kāi)服前可能需要進(jìn)行簡(jiǎn)單定制,詳細(xì)的配置文件見(jiàn)Minecraft Wiki中server.properties
詞條,此處只指出必改部分。
首先,使用編輯器打開(kāi)配置文件
vi server.properties
如果你的小伙伴沒(méi)有購(gòu)買(mǎi)正版MC客戶(hù)端,你必須將online-mode
設(shè)置為false
,否則將無(wú)法加入服務(wù)器。
online-mode=false
找到server-port
,記住它的值。因?yàn)檫@是我們登入服務(wù)器所需要的端口。如果你沒(méi)有更改過(guò),默認(rèn)應(yīng)該是25565
server-port=25565
測(cè)試服務(wù)器
首先運(yùn)行screen
并給予命名,此處為mc-server
screen -S mc-server
在screen中,執(zhí)行開(kāi)服命令:
java -Xms1024M -Xmx2048M -jar paper-1.19.2-307.jar nogui
等待半分鐘左右,應(yīng)該可以看到Done,說(shuō)明服務(wù)器已經(jīng)成功開(kāi)設(shè)了
[16:12:35 INFO]: Done (26.095s)! For help, type "help"
輸入組合鍵:
ctrl
+a
,ctrl
+d
即可將screen
掛到后臺(tái)
輸入命令screen -ls
查看窗口一覽
輸入命令screen -r mc-server
可以重新回到服務(wù)器窗口中。
此時(shí)使用客戶(hù)端連接服務(wù)器,測(cè)試是否能正常登入。
- IP地址是你服務(wù)器的公網(wǎng)IP
- 端口是配置文件中
server-port
,默認(rèn)為25565
(如果是默認(rèn)端口,可省略)
舉例:
- IP
1.2.3.4
上的25565
端口:填寫(xiě)1.2.3.4
- IP
1.2.3.4
上的其它端口,以12345
端口為例:填寫(xiě)1.2.3.4:12345
如果無(wú)法登陸,請(qǐng)檢查運(yùn)營(yíng)商防火墻的相關(guān)設(shè)置,確保端口處于開(kāi)放狀態(tài)!
簡(jiǎn)化啟動(dòng)
為了讓啟動(dòng)更加方便,我們可以設(shè)置啟動(dòng)腳本,就省去了輸出長(zhǎng)命令的時(shí)間。
首先在mc服務(wù)端根目錄新建腳本文件
vi start.sh
編輯為以下內(nèi)容并保存:
#! /bin/bash
# set variables
export JAVA_HOME=/usr/lib/jvm/jdk-17
export PATH=$PATH:$JAVA_HOME/bin
# cd to script directory
cd "${0%/*}"
# start server
java -Xms1024M -Xmx2048M -jar paper-1.19.2-307.jar nogui
因?yàn)槲覀儧](méi)有將
JAVA_HOME
和PATH
持久化,因此我們需要在運(yùn)行前對(duì)這些變量賦值。
如果你希望去掉這兩行,你需要?jiǎng)?chuàng)建/etc/profile.d/jdk.sh
文件并加入環(huán)境變量。
然后輸入以下命令將其改為可執(zhí)行文件:
chmod +x start.sh
設(shè)置完畢后,以后輸入以下命令即可開(kāi)服,其中~/minecraft/start.sh
是腳本的絕對(duì)路徑:
screen -dmS mc-server ~/minecraft/start.sh
因?yàn)樵撁钪苯雍笈_(tái)啟動(dòng)服務(wù)器,你可以使用
screen -ls
命令確保screen已啟動(dòng);
或者直接使用screen -r mc-server
命令進(jìn)去看一眼。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-508033.html
要結(jié)束服務(wù)器,你可以直接殺死screen進(jìn)程。但更好的方法是進(jìn)入screen進(jìn)程,并輸入
stop
終止服務(wù)器運(yùn)行。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-508033.html
到了這里,關(guān)于【Minecraft】在Linux上架設(shè)我的世界Minecraft服務(wù)器(保姆級(jí)教程)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!