Linux下搭建帶mod的Minecraft服務(wù)器

前言

??Minecraft围肥,中文翻譯為我的世界罩扇,是一款老少皆宜的游戲婆芦,高中時期室友用手機(jī)玩怕磨,我也入了這個坑,后來同班的幾個人一起集資租了MC服務(wù)器消约,加了些MOD肠鲫,漸漸學(xué)會了原版、IC2或粮、BC导饲、神秘及拓展等MOD的玩法。
??當(dāng)年租個最低端的服務(wù)器被啼,一個月30元帜消,后來降低到10元棠枉,是在網(wǎng)頁操控服務(wù)器關(guān)閉浓体、重啟等。
??現(xiàn)在也在大學(xué)學(xué)了幾年了辈讶,我想自己搭個服務(wù)器是沒什么問題的命浴,不過大學(xué)開學(xué)前一個月集中玩神秘4,同學(xué)服主沒在某個世界關(guān)閉死亡掉落贱除,導(dǎo)致辛苦研究出的物品付之東流生闲,導(dǎo)致現(xiàn)在都不怎么想玩MC了。
??最近恰巧大學(xué)同學(xué)看了vtuber直播MC月幌,開始玩MC碍讯,也想一起玩,不過還是希望玩mod扯躺,查了查聽說網(wǎng)易客戶端對加mod不是很好捉兴,于是升起了自己搭服務(wù)器的念頭。
??操作步驟不多录语,具體博客參考:

linux下建立可加載mod的minecraft服務(wù)器

??大部分操作都是在里面學(xué)來的倍啥,本文只是細(xì)化一些細(xì)節(jié)。

準(zhǔn)備一臺作為服務(wù)器的電腦

??畢竟要搭建服務(wù)器澎埠,一般都用裝linux系統(tǒng)的電腦虽缕。這個電腦一般是租云服務(wù)器,所以做好每月給云服務(wù)商錢的準(zhǔn)備蒲稳,除非你有裝linux電腦氮趋,并且只要有人玩就要在運(yùn)行狀態(tài),供玩家訪問江耀。
??直接去阿里云或騰訊云租用就行剩胁,如果是學(xué)生,可以搜索阿里云的云翼計(jì)劃(學(xué)生優(yōu)惠决记,騰訊云也有類似的)摧冀,最低配置的機(jī)器,如果租用大概100多每月,學(xué)生只用十塊錢左右索昂。
??登陸建车,購買頁面不需要改變什么,服務(wù)器地點(diǎn)根據(jù)自己的情況

選擇椒惨,服務(wù)器登陸密碼(要求大寫缤至、小寫字母、數(shù)字康谆、特殊符號至少占三個)最好提前定義(或者買完后定義也沒問題)领斥,付款完成。
阿里云云翼計(jì)劃頁面
??等幾分鐘后服務(wù)器啟動沃暗,點(diǎn)擊左側(cè)面板月洛,點(diǎn)擊云服務(wù)器,即可看到當(dāng)前實(shí)例列表孽锥。
??等到看到狀態(tài)變?yōu)椤斑\(yùn)行中”之后嚼黔,復(fù)制公有IP,就開始下一步了惜辑。
遠(yuǎn)程連接服務(wù)器

??因?yàn)槭窃品?wù)器唬涧,像阿里云、騰訊云都有自己的網(wǎng)頁控制終端盛撑,但網(wǎng)頁不是很方便穩(wěn)定碎节,最好還是用ssh軟件遠(yuǎn)程連接,我用Xshell抵卫。
??如果不想用Xshell狮荔,也可以點(diǎn)擊上圖右側(cè)的遠(yuǎn)程連接,一樣可以登錄服務(wù)器陌僵,但是不推薦轴合。

??點(diǎn)擊軟件左上角的按鈕,在彈出的菜單中碗短,將主機(jī)內(nèi)容改為你剛剛看到服務(wù)器的公網(wǎng)IP受葛,名稱酌情更改,點(diǎn)擊確定后等幾秒鐘偎谁,會彈出框讓你輸入密碼总滩,把你購買時填寫的密碼填上,如果購買時沒改巡雨,就需要到云服務(wù)端的控制臺去找一找了(1.騰訊云好像需要ssh文件驗(yàn)證闰渔,驗(yàn)證方法自己去找找。2.部分校園網(wǎng)可能會ban掉此類連接铐望,那只能用熱點(diǎn)連接了冈涧,不然就算用網(wǎng)頁規(guī)避掉ban茂附,MC也可能連不上服務(wù)器)。
輸入成功督弓,進(jìn)入命令行

??此時通過輸入:cd ..回車营曼,進(jìn)入最底層目錄。
??再輸入ls命令即可查看文件內(nèi)容愚隧。
??新建兩個文件夾蒂阱,一個用于下載和中轉(zhuǎn),一個用于裝MC服務(wù)端狂塘,輸入:

mkdir download
mkdir minecraft_server

??先下載java录煤,看原博客說open-jdk有問題。java有jre和jdk之分荞胡,jdk包含jre妈踊,運(yùn)行服務(wù)端只需要jre就夠了。我試著去java的網(wǎng)站上硝训,點(diǎn)了同意后响委,將地址復(fù)制到linux中新思,然后wget下載窖梁,下載回來的大小都一樣,但是無法解壓夹囚,網(wǎng)上查到的原因是:那個鏈接如果不點(diǎn)同意直接下載纵刘,下載回去的文件是有問題的。我不清楚是否有其他方便的安裝方法荸哟,我直接下載到我本地電腦中假哎,然后用ftp軟件上傳到服務(wù)器中。

ftp傳輸文件

??ftp軟件就是要向服務(wù)器傳文件用的軟件鞍历,有些東西在服務(wù)器上下載比個人電腦慢很多(幾B每秒那種)舵抹,或者更麻煩,我用的Pycharm自帶的ftp功能劣砍,不過不推薦惧蛹,這東西是用來寫python代碼的,低端電腦光是打開就要很長時間刑枝,推薦xftp等專業(yè)ftp軟件香嗓。
??示意下Pycharm的傳輸方法,其他軟件可能類似:

??我選擇將文件傳輸目標(biāo)定在download文件夾下装畅。
Java官網(wǎng)下載JRE靠娱,根據(jù)機(jī)器情況酌情選擇x86的32位或x64的64位
圖是JRE,鏈接是JDK

安裝jre(或jdk)

??下載到本地后掠兄,再通過ftp軟件傳到linux的download文件夾下像云,然后我們進(jìn)入到download文件夾下并解壓锌雀,輸入:

cd /download
tar -zxvf jre【tab】

??不同的版本文件名不一樣,因此輸入jre(或jdk)后迅诬,直接按tab鍵補(bǔ)全文件名汤锨。下面可以參考linux下安裝jdk1.8安裝jdk百框,jre可以百度jre的安裝闲礼,總之最終結(jié)果铐维,只要你在命令行下輸入java,有正常的輸出(不提示沒有命令)嫁蛇,就可以進(jìn)行下一步了。

下載MC服務(wù)端

??通過訪問https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/1.12.2.jar下載服務(wù)端睬棚,根據(jù)客戶端的版本號,只要改一改數(shù)字就能下載不同版本的服務(wù)端抑党,可以用進(jìn)入到download的文件夾后,試試用wget下載本文件底靠,或者本地下完后傳給服務(wù)器。
??然后將文件放到服務(wù)端文件夾中暑中,運(yùn)行命令獲得必要配置文件(有些代碼很長,善用Tab補(bǔ)齊和Shift+Insert在linux下粘貼):

mv /download/minecraft_server.1.12.2.jar /minecraft_server
cd /minecraft_server
java -Xms512m -Xmx1024m -jar minecraft_server.1.12.2.jar nogui

??最后一行代碼有三處可以改:最小鳄逾、大內(nèi)存、jar包名稱雕凹。
??本地會多出一些文件,我們需要更改eula.txt文件请琳,輸入vim eula.txt,并按INSERT進(jìn)入輸入狀態(tài)询筏,將eula=false改為eula=true,然后按ese鍵竖慧,輸入:wq保存并退出逆屡,然后重新運(yùn)行上面的java -Xms512m -Xmx1024m -jar minecraft_server.1.12.2.jar nogui
??此時程序會一直執(zhí)行不會退出踱讨,可以后面看到加載地圖的百分比魏蔗,顯示done便是加載完畢痹筛,現(xiàn)在用快捷鍵Ctrl+C退出。
??用ls命令能看到多出很多文件帚稠,此時用vim server.properties進(jìn)入編輯文件,輸入/online查找滋早,在找到online-mode=true后,按INSERT進(jìn)入編輯模式杆麸,將true改成false搁进,這樣就不會區(qū)分正版和盜版了昔头。同樣用ESC+:wq保存并退出。
??第三次運(yùn)行java -Xms512m -Xmx1024m -jar minecraft_server.1.12.2.jar nogui就能開啟服務(wù)器减细,理論上輸入你的公網(wǎng)IP:25565(就是你控制臺的公網(wǎng)IP,例如40.128.15.15:25565這種形式)就能訪問了未蝌,訪問不了大概是防火墻沒開或者25565的端口沒開放茧妒。
??我去查了開放linux端口的方法并打開萧吠,但是并不好使桐筏。(驗(yàn)證方法是在手中的windows系統(tǒng)中,WIN鍵+R喚出運(yùn)行窗口梅忌,出入cmd打開命令行,在其中輸入telnet 公網(wǎng)IP 端口號25565牧氮,例如telnet 40.128.15.15 25565,如果什么也沒輸出踱葛,并且cmd內(nèi)所有字符都消失光坝,才是正確的結(jié)果,否則在等一段時間后會顯示失敹⒘怼)。
??突然想起云服務(wù)器也可能禁止端口洲赵,于是發(fā)現(xiàn)果然是這個問題,解決方法(演示阿里云的):

阿里云控制臺
選擇配置規(guī)則
保守起見悲敷,入方向和出方向都添加自定義TCP

??我不知道需不需要重啟服務(wù)器(我是重啟了一次,可能不需要)后德,此時再運(yùn)行java -Xms512m -Xmx1024m -jar minecraft_server.1.12.2.jar nogui抄腔,在done后瓢湃,進(jìn)入游戲,在多人游戲中輸入服務(wù)器地址和端口號绵患,即可登錄游戲:
悟耘。
??這是原版MC落蝙,如果想加mod暂幼,就要安裝forge框架的universal版本

加載mod

??選擇游戲版本,再找到適合版本的forge(應(yīng)該不低于客戶端)旺嬉,然后下載universal版本的forge管行。
??這個也不能wget下載邪媳,它會先跳到一個廣告頁面倒計(jì)時,等過了后按SKIP跳過雨效,才能下載,所以同樣要下載到本地后徽龟,用ftp傳送到服務(wù)器。
??不管是不是傳送到/download文件夾顿肺,都要將下載好的jar文件移動(前面的mv命令)到/minecraft_server文件夾下渣蜗。
??除了forge,還需要有運(yùn)行庫耕拷,到本地的MC客戶端下,.minecraft文件夾下托享,找到libraries文件夾,把整個文件夾ftp傳輸并拷貝到linux服務(wù)器的/minecraft_server下赃绊。
??然后執(zhí)行java -Xms512m -Xmx1024m -jar forge-1.12.2-14.23.5.2811-universal.jar nogui,注意羡榴,這次是運(yùn)行forge,并且文件名需要和下載的保持一致忠售,我寫的是我下載的forge文件名。
??運(yùn)行到一定時間迄沫,感覺加載完成(有百分?jǐn)?shù)),用Ctrl+C退出程序泰佳,此時用ls命令,即可發(fā)現(xiàn)/minecraft_server文件夾下生成了mods文件夾逝她,將本地mods文件中,需要上傳到服務(wù)端的mod全裝到這個文件夾下摇予,再運(yùn)行java -Xms512m -Xmx1024m -jar forge-1.12.2-14.23.5.2811-universal.jar nogui即可汽绢。

離線運(yùn)行

??我們和服務(wù)器會話的窗口(無論是Xshell侧戴、網(wǎng)頁控制臺還是其他)都是一個進(jìn)程跌宛。而在其上運(yùn)行的MC服務(wù)端都是它的子進(jìn)程酗宋,當(dāng)我們關(guān)閉窗口時疆拘,服務(wù)器程序都會終止蜕猫,這大概不是我們想要的,畢竟這和我們本地計(jì)算機(jī)搭建服務(wù)器就沒什么區(qū)別了哎迄。
??方法是分離進(jìn)程隆圆,將服務(wù)端的進(jìn)程從ssh會話進(jìn)程中脫離開來翔烁,我們需要screen。screen是linux上的一款軟件蹬屹,用于管理會話。
??如果還運(yùn)行著之前的forge程序慨默,命令行還是MC服務(wù)器的,我們需要Ctrl+C先退出程序厦取。運(yùn)行apt-get install screen下載并安裝screen潮太。
??我們需要的命令只有那么幾種虾攻。
??首先,screen -ls顯示當(dāng)前所有screen創(chuàng)建的窗口台谢,此時我們還沒有創(chuàng)建。
??screen -S <窗口名>創(chuàng)建一個名為‘窗口名’的窗口朋沮。
??我們輸入screen -S mc蛇券,再輸入screen -ls,就可以看到和下面圖片類似的字符:

??每行的格式大致為:窗口號.窗口名 創(chuàng)建日期 狀態(tài)
??窗口名可以重復(fù)纠亚,窗口號唯一標(biāo)識一個窗口筋夏,狀態(tài)中Attached意思是窗口依賴于當(dāng)前會話,當(dāng)當(dāng)前會話結(jié)束条篷,進(jìn)程也會釋放,而Detached是分離的進(jìn)程赴叹,意思是:就算會話結(jié)束鸿染,進(jìn)程也會一直運(yùn)行乞巧。
??因此我們先在這個服務(wù)器運(yùn)行上面的代碼涨椒,隨后新打開一個會話窗口(Xshell或云控制臺窗口,不是screen -S創(chuàng)建的窗口)蚕冬,用screen -d 窗口名分離進(jìn)程。
??我輸入screen -d mc猎提,現(xiàn)在回到剛開始的窗口赢乓,發(fā)現(xiàn)窗口已經(jīng)自動從服務(wù)端的進(jìn)程中退出了,如果再運(yùn)行screen -ls牌芋,會發(fā)現(xiàn)mc窗口處于Detached狀態(tài)蚓炬,此時就可以放心關(guān)閉會話窗口了躺屁。
??如果過一段時間想要調(diào)出服務(wù)端命令行,用來輸入指令犀暑,例如賦予op權(quán)限怎么辦?
??用screen -r 窗口名徊都,即可再調(diào)出MC命令行,此時用screen -ls會發(fā)現(xiàn)窗口再次回到了Attached狀態(tài)广辰。

以上

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末择吊,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子几睛,更是在濱河造成了極大的恐慌,老刑警劉巖所森,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異洪唐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進(jìn)店門肝匆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人旗国,你說我怎么就攤上這事枯怖∧茉” “怎么了寿冕?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長藻茂。 經(jīng)常有香客問我玫恳,道長京办,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任不恭,我火速辦了婚禮县袱,結(jié)果婚禮上佑力,老公的妹妹穿的比我還像新娘。我一直安慰自己暴拄,他們只是感情好编饺,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布透且。 她就那樣靜靜地躺著,像睡著了一般鲸沮。 火紅的嫁衣襯著肌膚如雪讼溺。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天炫狱,我揣著相機(jī)與錄音剔猿,去河邊找鬼。 笑死憎亚,一個胖子當(dāng)著我的面吹牛弄慰,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播陆爽,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼慌闭!你這毒婦竟也來了别威?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎丧失,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體琳拭,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡白嘁,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年膘流,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡础爬,死狀恐怖奄抽,靈堂內(nèi)的尸體忽然破棺而出甩鳄,到底是詐尸還是另有隱情,我是刑警寧澤妙啃,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布揖赴,位于F島的核電站渐北,受9級特大地震影響赃蛛,放射性物質(zhì)發(fā)生泄漏呕臂。R本人自食惡果不足惜歧蒋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望褥琐。 院中可真熱鬧晤郑,春花似錦磕洪、人聲如沸析显。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽材蛛。三九已至卑吭,卻和暖如春抽诉,著一層夾襖步出監(jiān)牢的瞬間陨簇,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工迹淌, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留河绽,地道東北人。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓唉窃,卻偏偏與公主長得像耙饰,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子纹份,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內(nèi)容