作者 | Thishosting.rocks
譯者 | Sun Yongfei (heart4lor) ? ? 共計翻譯:4 篇 貢獻時間:41 天
我們將透過一個一步步的、新手友好的教程來向你展示如何搭建一個“我的世界(Minecraft)”伺服器。這將會是一個長期的多人遊戲伺服器,你可以與來自世界各地的朋友們一起玩,而不用在同一個區域網下。
如何搭建一個“我的世界”伺服器 – 快速指南
在你開始行動之前,要先瞭解一些事情:
為什麼你不應該使用專門的“我的世界”伺服器提供商
既然你正在閱讀這篇文章,你肯定對搭建自己的“我的世界”伺服器感興趣。不應該使用專門的“我的世界”伺服器提供商的原因有很多,以下是其中一些:
當然,使用現成的提供商也是有優點的。最好的就是你不用做下麵這些操作。但是那還有什麼意思呢?!
為什麼不應該用你的個人電腦作為“我的世界”伺服器
我們註意到很多教程都展示的是如何在你自己的電腦上搭建伺服器。這樣做有一些弊端,比如:
我們的建議是不要使用個人電腦,即使從技術角度來說你能做到。買一個雲伺服器並不是很貴。下麵我們會向你展示如何在雲伺服器上搭建“我的世界”服務端。小心地遵守以下步驟,就很簡單。
搭建一個“我的世界”伺服器 – 需求
這是一些需求,你在教程開始之前需要擁有並瞭解它們:
終於,到我們真正的教程了:
如何在 Ubuntu(Linux)上搭建一個“我的世界”伺服器
這篇教程是為 Vultr[2] 上的 Ubuntu 16.04 撰寫並測試可行的。但是這對 Ubuntu 14.04, Ubuntu 18.04[8],以及其他基於 Ubuntu 的發行版、其他伺服器提供商也是可行的。
我們使用預設的 Vanilla 服務端。你也可以使用像 CraftBukkit 或 Spigot 這樣的服務端,來支援更多的自定義和外掛。雖然如果你使用過多外掛的話會影響服務端。這各有優缺點。不管怎麼說,下麵的教程使用預設的 Vanilla 服務端,來使事情變得簡單和更新手友好。如果有興趣的話我們可能會發表一篇 CraftBukkit 的教程。
1. 登入到你的伺服器
我們將使用 root 賬戶。如果你使用受限的賬戶的話,大部分命令都需要 sudo
。做你沒有許可權的事情時會出現警告。
你可以透過 SSH 客戶端來登入你的伺服器。使用你的 IP 和埠(大部分都是 22)。
在你登入之後,確保你的伺服器安全[7]。
2. 更新 Ubuntu
在你做任何事之前都要先更新你的 Ubuntu。你可以透過以下命令更新:
apt-get update && apt-get upgrade
在提示時敲擊“回車鍵” 和/或 y
。
3. 安裝必要的工具
在這篇教程中你需要一些工具和軟體來編輯文字、長久保持服務端執行等。使用下麵的命令安裝:
apt-get install nano wget screen bash default-jdk ufw
其中一些可能已經安裝好了。
4. 下載“我的世界”服務端
首先,建立一個目錄來儲存你的“我的世界”服務端和其他檔案:
mkdir /opt/minecraft
然後進入新目錄:
cd /opt/minecraft
現在你可以下載“我的世界“服務端檔案了。去往下載頁面[9]獲取下載連結。使用 wget
下載檔案:
wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/minecraft_server.1.12.2.jar
5. 安裝“我的世界”服務端
下載好了服務端的 .jar 檔案之後,你就需要先執行一下,它會生成一些檔案,包括一個 eula.txt
許可檔案。第一次執行的時候,它會傳回一個錯誤並退出。這是正常的。使用下麵的命令執行它:
java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui
-Xms2048M
是你的服務端能使用的最小的記憶體,-Xmx3472M
是最大的記憶體。調整[10]基於你伺服器的硬體資源。如果你在 Vultr[2] 伺服器上有 4GB 記憶體,並且不用伺服器來乾其他事情的話可以就這樣留著不動。
在這條命令結束並傳回一個錯誤之後,將會生成一個新的 eula.txt
檔案。你需要同意那個檔案裡的協議。你可以透過下麵這條命令將 eula=true
新增到檔案中:
sed -i.orig 's/eula=false/eula=true/g' eula.txt
你現在可以透過和上面一樣的命令來開啟服務端併進入“我的世界”服務端控制檯了:
java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui
確保你在 /opt/minecraft
目錄,或者其他你安裝你的 MC 服務端的目錄下。
如果你只是測試或暫時需要的話,到這裡就可以停了。如果你在登入伺服器時有問題的話,你就需要配置你的防火牆[11]。
第一次成功啟動服務端時會花費一點時間來生成。
我們將向你展示如何建立一個指令碼來啟動。
6. 使用指令碼啟動“我的世界”服務端,讓服務端長期執行併在啟動時開啟
方便起見,我們將建立一個自動啟動服務端的 bash 指令碼。
首先,使用 nano 建立一個 bash 指令碼:
nano /opt/minecraft/startminecraft.sh
這將會開啟一個新的(空白)檔案。貼上以下內容:
#!/bin/bash
cd /opt/minecraft/ && java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.2.jar nogui
如果你不熟悉 nano 的話 – 你可以使用 CTRL + X
,再敲擊 Y
,然後回車。這個指令碼將進入你先前建立的“我的世界”服務端並執行 Java 命令來開啟服務端。你需要執行下麵的命令來使指令碼可執行:
chmod +x startminecraft.sh
然後,你就可以透過下麵的命令隨時執行服務端了:
/opt/minecraft/startminecraft.sh
但是,如果/當你登出 SSH 會話的話,服務端就會關閉。要想讓服務端不登入也持續執行的話,你可以使用 screen
會話。screen
會話會一直執行,直到實際的伺服器被關閉或重啟。
使用下麵的命令開啟一個 screen 會話:
screen -S minecraft
一旦你進入了 screen
會話(看起來就像是你新建了一個 SSH 會話),你就可以使用先前建立的 bash 指令碼來啟動服務端:
/opt/minecraft/startminecraft.sh
要退出 screen
會話的話,你應該按 CTRL+A-D
。即使你離開 screen
會話(斷開的),服務端也會繼續執行。你現在可以安全的登出 Ubuntu 伺服器了,你建立的“我的世界”服務端將會繼續執行。
但是,如果 Ubuntu 伺服器重啟或關閉了的話,screen
會話將不再起作用。所以為了讓我們之前做的這些在啟動時自動執行,做下麵這些:
開啟 /etc/rc.local
檔案:
nano /etc/rc.local
在 exit 0
陳述句前新增如下內容:
screen -dm -S minecraft /opt/minecraft/startminecraft.sh
exit 0
儲存並關閉檔案。
要訪問“我的世界”服務端控制檯,只需執行下麵的命令來重新連線 screen
會話:
screen -r minecraft
現在就是這樣。祝賀你,玩的開心!你現在可以連線到你的“我的世界”服務端或配置/修改它了。
配置你的 Ubuntu 伺服器
你首先肯定要設定並確保你的 Ubuntu 伺服器安全,如果你還沒有這麼做的話。按照我們之前提及的指南[7]並谷歌一下來獲取更多資訊。你需要在伺服器上配置的有這些:
開啟並配置防火牆
首先,如果防火牆還沒有開啟的話,你應該先開啟先前安裝的 UFW:
ufw enable
你應該開放預設的“我的世界”服務端埠:
ufw allow 25565/tcp
你應該根據你的使用情況開放或拒絕其他規則。如果你不用伺服器負載網站的話,就應該拒絕 80 和 443 埠。谷歌一下 Ubuntu 的 UFW/防火牆指南,你會得到建議的。設定防火牆的時候小心一些,如果你遮蔽了 SSH 埠的話你會把自己鎖在伺服器外面。
由於這是預設埠,這個埠經常被掃描以及攻擊。你可以透過遮蔽白名單之外的訪問許可權來阻擋攻擊。
首先,你需要在你的 server.properties[12] 檔案中開啟白名單樣式。要開啟的話,開啟檔案:
nano /opt/minecraft/server.properties
並將 white-list
行改為 true
:
white-list=true
儲存並關閉檔案。
然後重啟你的伺服器(重啟你的伺服器或重新執行啟動指令碼):
/opt/minecraft/startminecraft.sh
訪問“我的世界”服務端控制檯:
screen -r minecraft
如果你想要某人進入你的服務端,你需要透過以下命令把他們新增到白名單:
whitelist add PlayerUsername
執行以下命令來將他們移出白名單:
whitelist remove PlayerUsername
使用 CTRL+A-D
來退出 screen
(伺服器控制檯)。值得註意的是,這會拒絕除白名單以外的所有人連線到服務端。
如何搭建“我的世界”伺服器 – 常見問題
我們將解答一些有關“我的世界”伺服器和我們的指南的常見問題。
我該如何重啟“我的世界”伺服器?
如果你按照我們的教程來的話,包括開啟了服務端隨系統啟動,你可以直接重啟你的 Ubuntu 伺服器。如果沒有設定歲系統啟動的話,你可以透過重新執行啟動指令碼來重啟“我的世界”服務端:
/opt/minecraft/startminecraft.sh
我該如何配置我的“我的世界”服務端?
你可以使用 server.properties[12] 檔案來配置你的服務端。檢視“我的世界”維基來獲取更多資訊,你也可以什麼都不動,它會工作的很好。
如果你想改變遊戲樣式、難度等諸如此類的東西,你可以使用服務端控制檯。透過下麵的命令訪問服務端控制檯:
screen -r minecraft
並執行命令[10]。像下麵這些命令:
difficulty hard
gamemode survival @a
你可能需要重新啟動服務端,這取決於你使用了什麼命令。你可以使用很多命令,檢視維基[10]來獲取更多。
我該如何升級我的“我的世界”服務端?
如果有新版本釋出的話,你需要這樣做:
進入“我的世界”目錄:
cd /opt/minecraft
下載最新的版本,比如使用 wget 下載 1.12.3 版本:
wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.3/minecraft_server.1.12.3.jar
接下來,執行並構建新服務端:
java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.3.jar nogui
最後,更新你的啟動指令碼:
nano /opt/minecraft/startminecraft.sh
更新版本號數字:
#!/bin/bash
cd /opt/minecraft/ && java -Xms2048M -Xmx3472M -jar minecraft_server.1.12.3.jar nogui
現在你可以重啟服務端了,一切都應該沒有問題。
為什麼你們的教程這麼長,而其他的只有 2 行那麼長?!
我們想讓這個教程對新手來說更友好,並且盡可能詳細。我們還向你展示瞭如何讓服務端長期執行並跟隨系統啟動,我們向你展示瞭如何配置你的服務端以及所有的東西。我是說,你當然可以用幾行來啟動“我的世界”伺服器,但那樣的話絕對很爛,從不僅一方面說。
我不知道 Linux 或者這裡說的什麼東西,我該如何搭建一個“我的世界”伺服器呢?
只要通篇閱讀我們的文章,複製貼上幾個命令就行了。如果你真的不知道該如何做的話,我們可以幫你[13],或者直接找一個託管的[4]伺服器提供商[4],讓他們幫你做這些。
我該如何在服務端上安裝 mod 和外掛?
我們的文章意圖作一篇入門指南,你應該檢視“我的世界維基”[14],或者谷歌一下來獲取更多資訊。網上有很多教程。
via: https://thishosting.rocks/how-to-make-a-minecraft-server/
作者:ThisHosting.Rocks[16] 譯者:heart4lor 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出