【Linux/Ubuntu】マイクラMODサーバーを構築する!

java

【初心者向け】UbuntuでマイクラJava版サーバーを24時間フル稼働させる完全ガイド

以前こちらのブログでバニラ用のマルチサーバーの建て方を説明しました。

今回は同じマイクラのマルチサーバーでもMODサーバーの建て方を解説します!以前よりも丁寧に説明していきます。

まず必要なものですが…

  • サーバーをインストールするLinuxPC(私はUbuntuを使ってるのでUbuntu環境での解説になります)
  • Teraterm(LinuxPCにSSH接続する)

まずこの二つがあれば大丈夫ではないでしょうか

注意事項としては

MODサーバーはメモリ消費が激しい!

ということですかね。メモリ容量は余裕をみて多めに積んだ方がいいかもしれません。ちなみに私は32GB積んであります。

TeratermやSSH接続するためのソフトがない方はこちらから(あった方が圧倒的に便利です)

SSH接続について解説しますと、、、これからサーバーを建てようとするLInuxPCにWindowsPCから接続して遠隔操作するっていう感じです。これがあればLinuxPCにマウスやキーボードやモニター等を使わずに済むんですよね。はい便利ですねw

初めてSSH接続するよって方はLinuxPCにopenssh-serverのインストールとポート開放を済ませましょう!

まずopenssh-serverのインストール

sudo apt install openssh-server

サービスが起動してるか確認します

sudo systemctl status ssh

ステータスが緑色でactive (running)になってればOKです

なっていなかったら

sudo systemctl enable ssh
sudo systemctl start ssh

これでactive (running)になるはずです。

次にポート開放です。SSH接続にはTCP22番を使うのでポートを開放します。ついでにマイクラサーバーでTCP25565番を使うので一緒に開放しておきましょう。

sudo ufw allow 22/tcp
sudo ufw allow 25565/tcp

そしたら開放できてるか確認します。

sudo ufw reload
sudo ufw status

これは私のPCの表示ですが

user@(ユーザー名):~$ sudo ufw status
状態: アクティブ

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
8211/udp                   ALLOW       Anywhere
25565                      ALLOW       Anywhere
Samba                      ALLOW       Anywhere
80                         ALLOW       Anywhere
25575                      ALLOW       Anywhere
19132                      ALLOW       Anywhere
25585                      ALLOW       Anywhere
19132/udp                  ALLOW       Anywhere
26900:26905/tcp            ALLOW       Anywhere
26900:26905/udp            ALLOW       Anywhere
8212                       ALLOW       Anywhere
8212/udp                   ALLOW       Anywhere
6587                       ALLOW       Anywhere
8081                       ALLOW       Anywhere
8080                       ALLOW       Anywhere
52/udp                     ALLOW       Anywhere
Nginx Full                 ALLOW       Anywhere

ちゃんと22番と25565番が通っていますね。これでポート開放はOKです。

じゃあ早速SSH接続してみましょう

WindowsPCからTeratermを起動します

こんな画面が出てきますので、TCPポートは22番

ホストの部分はLinuxPCのローカルIPを入力します(192.168.0.xxみたいなやつですね)

こんな画面が出たら続行します

LinuxPCログイン用のユーザー名とパスワードを入力すれば接続完了です。

ここまで済めばサーバー構築の下準備はOKだと思います。

ここからサーバーの構築をしていきますが、今回はForgeサーバーを構築する手順で説明します。

次にMODサーバーのバージョンを決めましょう。

バニラサーバーとは違ってMODサーバーは基本的にバージョンは固定して運用します。

使いたいMODが対応してるバージョンの中でも比較的色んなMODが対応してるバージョンを選んでおけば後々MOD追加したくなった時に幸せになれると思います。

今回は仮に1.20.1のバージョンでサーバーを立ててみたいと思います。

そしたらLinuxPCの方でサーバーをインストールするディレクトリを作成します。好きなところで良いですが、管理し易い場所が良いと思います。

今回は仮にhome直下にtestというディレクトリを作ってサーバーを構築したいと思います。ちなみに私のLinuxPCのユーザー名は「user」となっています。userというユーザー名…ちょっとややこしいかもしれませんがw

mkdir test

これで/home/(ユーザー名)/testというディレクトリができます。

私の場合は/home/user/testですね。

次にこちらがForgeインストーラーをダウンロードするサイトになります。

バージョンを選んでDownload Recommendedを選びます。

それで次にとんだ先のページが要注意です

ちょっと見にくいかもしれませんが、ページに飛んで数秒待つと右上に青枠で囲んだ赤いSKIPというボタンが出てきます。

これがインストーラーのダウンロードするボタンになりますので

間違っても他のDOWNLOADなどのリンクは踏まないようにしてください!

ではこのSKIPボタンをクリックしてダウンロードしてください。ついでにSKIPボタンを右クリックして「リンクのコピー」をしておきましょう。

ダウンロードしたファイルを実行してまずマイクラをプレイするPCにForgeをインストールします。

Install clientでOKしてインストールします。

次にLinux側での作業で先ほどコピーしたリンクを使ってサーバー側にもForgeをインストールします

cd /home/user/test     #testディレクトリに移動する

wgetコマンドを使用してtestディレクトリにForgeをダウンロードします。

wget + (コピーしたリンク)でダウンロードします

wget https://maven.minecraftforge.net/net/minecraftforge/forge/1.20.1-47.3.0/forge-1.20.1-47.3.0-installer.jar

これでtestの中に「forge-1.20.1-47.4.10-installer.ja」というファイルがダウンロードされます。

次にforge-1.20.1-47.4.10-installer.jaを実行するのですが、オプションに必ず「–installServer」をつけてください。これでサーバー用のファイルがインストールされます。

java -jar forge-1.20.1-47.3.0-installer.jar --installServer

run.shが生成されてると思うので実行します

./run.sh

初回は必ず強制終了します。llコマンドで覗いてみると「eula.txt」というファイルが生成されています。

要はこのファイルを開いて規約に同意してねってことです。

nano eula.txt

すると中に

eula=false

と書かれていますので、ここを

eula=true

これで規約に同意したことになります。ctrl+oで保存。ctrl+xでnanoエディターから出ます。

そしてもう一度サーバーを起動します。

./run.sh

これでサーバーが起動したはずなので実際にマイクラからアクセスしてみましょう。

必ずここもforgeの同じバージョンにしましょう。

ローカルIPを入力してサーバーに接続します。

無事ワールドに入れたら成功です。お疲れさまでした。

ちょっと色々MOD入れちゃってるので画面がすごいことになってますねw

ctrl+cでサーバーを止められます。

そしたらサービスに登録してPCの電源オンとサーバーの起動を連動させちゃいましょう。

サービス名は「forge.service」にしてみましょう。

sudo nano /etc/systemd/system/forge.service

そして中身を

[Unit]
Description=Minecraft Forge Server
After=network.target

[Service]
WorkingDirectory=/home/user/test
User=user
ExecStart=/home/user/test/run.sh
Restart=always

[Install]
WantedBy=multi-user.target

パスはご自身の環境に合わせて書き換えてくださいね。

最初にも説明してますが、今回私の環境では

ユーザー名:user

インストールディレクトリ:/home/user/test

という環境で構築しています。

サービスを有効化します。

systemctl enable forge.service     #サービス有効化

これでPCの起動とサーバーの起動が連動するようになりました。

systemctl start forge.service     #サーバー起動
systemctl status forge.service    #サーバーの状態を確認
systemctl stop forge.service      #サーバー停止
systemctl disable forge.service   #サービス無効化

お疲れさまでした!これで一通りの作業が終わってサーバーも安定稼働させられるようになってると思います。

サーバー安定的に運用するにあたって

  • メモリリーク対策として定期的にサーバーを再起動させる
  • サーバーデータ損壊に備えてバックアップを取る
  • そのバックアップファイルをすぐに復元できる準備

この辺りは抑えておいた方が良いでしょう。

【完全保存版】Python×Ubuntuでマイクラサーバーを自動運用!バックアップ・再起動・復元をまるごと自動化

こちらのブログでそのことも説明していますので参考にしてみてください。

コメント

タイトルとURLをコピーしました