ARK: Survival Evolved 《方舟:生存進化》 Linux 伺服器架設 教學分享(1) 初始設定篇
這系列文章會分享如何建立、設定,並優化 ARK: Survival Evolved 《方舟:生存進化》的 伺服器架設。這裡是第一篇,說明基本的系統需求與設定。
哈囉,我是阿克,最近都跟朋友一起在水晶島上玩耍,抓抓恐龍蓋蓋家,偶爾出去冒險找神器,在水晶島上時間真的流逝得好快XD。而如果你有架設伺服器的話,平時想上線採採資源也不用請朋友幫開,隨時都可以進去玩耍囉。
至於為什麼要用 Linux,而不是用 Ark Server Manager 在 Windows 上面建立伺服器呢?對我來說的優點有以下幾個:
- 不需要圖形介面的話,可以榨出更多資源
- 如果用 GCP 或是 AWS 的話,Linux 機器收費應該會比 Windows 便宜
- 我不想要我的 Windows 電腦一直開著XD
- 如果家裡有舊電腦或是筆電的話,加個記憶體拿來開伺服器就可以榨乾他的價值XD
這系列教學主要是使用 LinuxGSM,LinuxGSM 幫你簡化了很多繁雜的步驟與 SteamCMD 的操作,我自己是沒有研究它更內部的原理及架構,使用起來還滿好上手的。除了Ark 之外,LinuxGSM 其實也支援很多 Steam 上面遊戲伺服器的設置,所以如果你有其他遊戲也在支援的清單中,也可以試試看哦。
傳送門在這裡:https://linuxgsm.com/
系統配置
- CPU:雙核心應該就夠
- RAM:至少8G
- OS:官方建議 Ubuntu 16.04 以上,我是用 Ubuntu Server 20.04 LTS
- 需要有 Public IP 位址
以上規格應該能夠撐得起 10 人以下所需要的伺服器環境,但我實測感覺它跑起來會有點喘,尤其是 RAM 的使用,伺服器開起來之後它的 process 佔用約 7.5~7.6G,再加上 Ubuntu Server 背景還有一些 process 佔用了約100~200 MB 的 RAM,幾乎將機器上面的 8G 佔好佔滿,SSH 登入後進去打一些指令管理機器還會有點頓頓的。
以最初的地圖 The Island 來說,這樣的配置應該是足夠的。若是你的伺服器需要提供給更多玩家,或是設定了更複雜的地圖,那我建議 RAM 再加一條 4G 到 12G(對,我後來為了水晶島加了XD),這樣會比較充裕一些,偶爾要進去機器做一些簡單的管理也不會卡卡的。
至於 Ubuntu Server 的安裝和 Public IP 的部分,就有點太細節了。或者你是用GCP 這種雲端平台的話,這兩件事情也不用煩惱,VM instance 開了就直接都準備好了,真是究極方便。之後如果累積了足夠的篇幅可以分享的話,也許會再開一篇寫寫~
伺服器安裝與啟動
在正式開始之前,會先建議你挑一個固定的路徑來放 LinuxGSM 的檔案及操作。像我是固定放在
/opt/ark-server
這樣以後要維護或是備份搬家之類的話,操作邏輯上會比較一致一點。
首先,先 cd 至你想放伺服器檔案的目錄,然後使用以下指令先把 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 netcat lib32gcc1 lib32stdc++6 steamcmd
官方是有建議為這個服務建立一個 user,我自己是沒有啦,詳細的部分再麻煩到參考資料看看。
接著用以下指令將 LinuxGSM 的 script 抓回來。
wget -O linuxgsm.sh https://linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh arkserver
抓完之後,接著再下
./arkserver install
就會自動幫你把所需要的檔案通通抓回來囉。這一步會花比較多時間哦~
等 install 結束之後,你可以下以下指令,把伺服器的程式跑起來。
./arkserver start
這邊一樣要給他一點時間載入,畢竟他要吃 7G 多的 RAM,載入時間也不少嘛XD
載入完成之後,你應該可以在遊戲內的伺服器清單看到他囉。
至此,你應該可以順利啟動方舟的伺服器,很簡單吧XD
而伺服器程式預設是以 The Island 開局。至於地圖切換、設定密碼、設定伺服器名稱、MOD、參數調整、伺服器停止/啟動/更新,這些細節設定,我就留在第二篇囉。
最後再補充一下基本的維護指令
// 開啟伺服器
./arkserver start
// 關閉伺服器
./arkserver stop
// 更新伺服器
./arkserver update
謝謝收看~
參考資料:
https://linuxgsm.com/lgsm/arkserver/
https://docs.linuxgsm.com/