CentOS8でMinecraftマルチサーバー構築手順メモ

(2021.11.3 更新)

こんにちは。natarikoです。

レンタルサーバーを借りてminecraftのマルチサーバーを立てたので、手順を備忘録的に残しておきます。CentOS 8対応。

とりあえず、他ブログで探し出せなかった部分をメモ的に。

基本は下記2サイトを参考にしました。基本の流れは1つめ、カゴヤのレンタルサーバー借りるところは2つめのサイト。

Linux(CentOS7)で、Minecraftマルチサーバを立ち上げる手順

【Minecraft JE】お手軽マルチサーバの立て方

   

スポンサーリンク

   

目次
  • 1.レンタルサーバーを借りる
  • 2.keyのパーミッションを変更する
  • 3.Open JDKをインストールする
  • 4.Minecraft用のディレクトリを作成する
  • 5.Minecraftの最新版をダウンロード
  • 6.起動スクリプトを作成する
  • 7.起動する
  • 8.EULAへ同意する
  • 9.常時起動させる
  • 10.Minecraftサーバーを自動起動させる

   

1.レンタルサーバーを借りる

natarikoは「安い」「それなりに実績のあるところがいい」「Linuxの勉強したいからできるだけ自分で構築したい」という希望に叶う、カゴヤのレンタルサーバーを借りました。

ですが3つ目の「Linux」については「よくわからないよ」という方でもマルチサーバーを立てられるよう、このブログで手順や立ち上げ後の作業まで解説していきますのでご安心を。

カゴヤのレンタルサーバー

上記のリンクをクリックするとカゴヤのトップページに飛ぶので、上の方にある「レンタルサーバー」をクリック。

(画面は2020年11月現在のものです)

  次に、「共用レンタルサーバー」をクリック。「Webサイトを使ってみよう」という言葉に戸惑うかもしれませんが、気にしなくて大丈夫ですよ。

すみません、キャプチャの丸印が見にくいですが、画面右下あたり、もしくはスクロールしていって最後にある「お申し込みはこちら」をクリック。

あとは画面の案内に従って設定。

   

登録したメールアドレス宛に登録完了メールが届いたら、早速ログインしてみます。

こんな感じの画面が出てきて、初めてだとどうすればいいのか困惑するかもですが大丈夫。

右上の「KVM」をクリック→「インスタンス」クリック→「インスタンス作成」をクリック。

するとスペックなどを選択する画面になります。

natarikoは3人固定で仲間内でしかプレイしないので、2コア/ 2 GB 30GBのプランを選択。同時プレイ人数が多い場合は、その分より良いスペックにする必要があります。具体的な人数とスペックの関係は今回割愛します。

パッケージはCentOS 8 64bit。

「ログイン用認証キー」を設定するところで、(確か)右側の「ログイン用認証キー追加」をクリックして認証キーのファイルをダウンロードします。このファイルを無くすとやり直すことになるのでご注意を。

ダウンロードしたら、ファイル名を

minecraft_ssh.key

に変更。

他の設定はデフォルトのままで大丈夫です。一番下までいったら「インスタンス作成」をクリック。

数分待ちます。

契約が終わって利用可能になったら、表示されるIPアドレスを控えておきます。

   

2.keyのパーミッションを変更する

先程ダウンロードした minecraft_ssh.keyのアクセス権を変更します。

Macだったら「ターミナル」、Windowsなら「コマンドプロンプト」を使っていきましょう。

まずは、上記minecraft_ssh.key があるフォルダへ移動します。

以下の文字列(コマンド)を入力します。cdの後ろに半角スペースがありますのでご注意を。

cd [フォルダ名]

↑例えば/Users/natariko/Documents/MinecraftServerフォルダに置いてある場合は

cd /Users/natariko/Documents/MinecraftServer

と記載してエンターキーを押します。

そして、パーミッションを変更します。

chmod 0400 ./minecraft_ssh.key

(最初は0600にしてました…)

これをやらないと、これからの手順をやろうとしても

unprotected private key file

というエラーが出てレンタルサーバーに入れません。

   

3.Open JDKをインストールする

さて、早速レンタルサーバーに入ってみましょう。

上記の手順と同様、「ターミナル」や「コマンドプロンプト」を起動します。2.で使用した画面が残っている人は、そのままその画面で作業してください。

先ほどと同様に、minecraft_ssh.key があるフォルダへ移動します。

cd [フォルダ名]

レンタルサーバーに入ります。1.の最後で控えておいたIPアドレスを使用します。
(下記の例では、000.000.000.000 としています、ご自身のレンタルサーバーのIPアドレスに置き換えてください。)

ssh -i minecraft_ssh.key root@000.000.000.000

見た目はあまり変わりませんが、よーく見ると入力位置の左側が

[root@v000.000.000.000 ~]#

のようになっていて、先ほどまでと変わったことが確認できます。これがレンタルサーバーに入ったよ、と示してくれているのです。

しばらく放置しておくと、勝手にログアウトする場合がありますので気をつけましょう。

ログアウトしてしまった場合は、上の「ssh〜」を入力すれば再びログインできます。

その場で、以下のコマンドを入力して利用可能な”openjdk”を確認してみましょう。

yum search openjdk

するとずらずら〜っと文字列が出てきます。

 Loaded plugins: fastestmirror
base                                                                                                                            | 3.6 kB  00:00:00 extras 

(中略)
 ========== N/S matched: openjdk ==========
java-1.6.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.6.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.6.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.6.0-openjdk-javadoc.x86_64 : OpenJDK API Documentation
java-1.6.0-openjdk-src.x86_64 : OpenJDK Source Bundle
java-1.7.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.7.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
java-1.7.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.7.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.7.0-openjdk-headless.x86_64 : The OpenJDK runtime environment without audio and video support
java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle
java-1.8.0-openjdk.i686 : OpenJDK Runtime Environment
java-1.8.0-openjdk.x86_64 : OpenJDK Runtime Environment
java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector
java-1.8.0-openjdk-accessibility-debug.x86_64 : OpenJDK accessibility connector for packages with debug on java-1.8.0-openjdk-debug.i686 : OpenJDK Runtime Environment with full debug on
java-1.8.0-openjdk-debug.x86_64 : OpenJDK Runtime Environment with full debug on
java-1.8.0-openjdk-demo.x86_64 : OpenJDK Demos
java-1.8.0-openjdk-demo-debug.x86_64 : OpenJDK Demos with full debug on
java-1.8.0-openjdk-devel.i686 : OpenJDK Development Environment
java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment
java-1.8.0-openjdk-devel-debug.i686 : OpenJDK Development Environment with full debug on
java-1.8.0-openjdk-devel-debug.x86_64 : OpenJDK Development Environment with full debug on
java-1.8.0-openjdk-headless.i686 : OpenJDK Runtime Environment
java-1.8.0-openjdk-headless.x86_64 : OpenJDK Runtime Environment
java-1.8.0-openjdk-headless-debug.i686 : OpenJDK Runtime Environment with full debug on
java-1.8.0-openjdk-headless-debug.x86_64 : OpenJDK Runtime Environment with full debug on
java-1.8.0-openjdk-javadoc.noarch : OpenJDK API Documentation
java-1.8.0-openjdk-javadoc-debug.noarch : OpenJDK API Documentation for packages with debug on
java-1.8.0-openjdk-javadoc-zip.noarch : OpenJDK API Documentation compressed in single archive
java-1.8.0-openjdk-javadoc-zip-debug.noarch : OpenJDK API Documentation compressed in single archive for packages with debug on
java-1.8.0-openjdk-src.x86_64 : OpenJDK Source Bundle
java-1.8.0-openjdk-src-debug.x86_64 : OpenJDK Source Bundle for packages with debug on
icedtea-web.x86_64 : Additional Java components for OpenJDK - Java browser plug-in and Web Start implementation

細かいところはわからなくて大丈夫です。とりあえず、下の方に出てくる数字を見て「java-1.8.0が最新だな!」ってのがわかればOK。

java-1.8.0をインストールします。適宜、確認した最新版の数字に置き換えてください。

yum install -y java-1.8.0-openjdk

最後に “Complete!” と表示されればインストール完了です。

   

4.Minecraft用のディレクトリを作成する

ディレクトリというのは、WindowsやMacでいう「フォルダ」です。

早速作ってみましょう。今回は “var/minecraft” というフォルダを作ります。

この “/” は名前ではなくフォルダの中を示します。Windowsでいうところの “¥” ですね。”var” というディレクトリを作って、その中に “minecraft” というディレクトリを作ります。

コマンドは下記の1行だけでOK。

mkdir /var/minecraft

早速、作成したディレクトリへ移動しましょう。

cd /var/minecraft

   

5.Minecraftの最新版をダウンロード

インターネットで下記のサイトにアクセスして、最新版を確認します。

https://minecraft.net/ja-jp/download/server

確認した最新版をダウンロードします。下記の例では最新版が「1.17.1」と仮定しています。上記で確認したバージョンに置き換えてください。バージョンの記載箇所が2ヶ所あるので注意↓

wget https://s3.amazonaws.com/Minecraft.Download/versions/1.17.1/minecraft_server.1.17.1.jar

正しくダウンロードできたか確認します。↓このコマンドは「エルの小文字2文字」です。

ll

下記のような文字列が出てくればOK。

total 29532 
-rw-r--r-- 1 root root 30202458 Aug 12 13:00 minecraft_server.1.17.1.jar

   

6.起動スクリプトを作成する

スクリプトっていうのは簡単なプログラムみたいなものです。直訳は「原稿、台本」だそう。

テキストエディタ(メモ帳など)にちょろっと書いて作れます。やってみましょう。

ここではvi(ブイアイと読む)というCentOS等Linuxの中ではメジャーなテキストエディタを使います。

下記のコマンドを入力すると、「minecraft.sh」というファイルが作成され、開いた状態になります。

vi minecraft.sh

何も書かれていない状態(”~” が縦一列書かれている状態)ですね。

開いた時点では「コマンドモード」という閲覧やファイル操作ができる状態となっていますので、「編集モード」に切り替える必要があります。”a” を入力すると、画面下に” — INSERT –” と表示されるかと思います。この状態が編集モードです。

ちなみにa以外でも編集モードへ切り替えることは可能です。ここでは割愛。

編集モードにしたら、下記の文字列を入力します。(バージョンはご自身のものに書き換えてください)

#!/bin/sh
java -Xmx1024M -Xms1024M -jar minecraft_server.1.17.1.jar nogui

入力できたら、コマンドモードに戻します。コマンドモードへ切り替えるときは「Esc」キーを押下します。

コマンドモードへ切り替えたら、保存してviを終了します。下記のコマンドを入力します。

:wq

すると元の画面に戻ります。これでminecraft.shの作成ができました。

次に、実行権限を付与します。

chmod o+x minecraft.sh

正しく付与できたか確認します。再び登場、Lの小文字2文字です。

ll

total 29536
-rw-r--r-x 1 root root       72 Aug 12 16:22 minecraft.sh
-rw-r--r-- 1 root root 30202458 Aug 12 13:00 minecraft_server.1.12.jar

「minecfart.sh」と書かれている行の一番左、「–rw-r–r-x」の部分が権限を示しています。一番右側が「x」となっていればきちんと権限付与されています。

   

7.起動する

さ、あと一息です!

先ほど作成した、シェルスクリプトを実行するとMinecraftが起動します。

./minecraft.sh

・・・・・・

「Stopping server」と表示されると思います!!

大丈夫です。これ、

初回は絶対失敗するという通過儀礼です。

次に進みましょう。

  

8.EULAへ同意する

さて、初回は絶対失敗するという通過儀礼を終えて、改めてL小文字2文字のコマンドを入力してみます。

ll

total 29548
-rw-r--r-- 1 root root      181 Aug 12 16:55 eula.txt
drwxr-xr-x 2 root root     4096 Aug 12 16:55 logs 
-rw-r--r-x 1 root root       72 Aug 12 16:22 minecraft.sh 
-rw-r--r-- 1 root root 30202458 Aug 12 13:00 minecraft_server.1.17.1.jar 
-rw-r--r-- 1 root root       59 Aug 12 16:55 server.properties

先ほどよりも数行増えていることがわかります。これ、ファイルが新しく作成されたんですね。”eula.txt” というファイルをviを使って書き換えます。

vi eula.txt

すると中身はこんな感じ。最終行の”eula=false” を “eula=true” に書き換えます。

まずは “a” を一回押下して編集モードに切り替えて、書き換えましょう。

書き換え前:

\#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). 
\#Thu Aug 12 16:55:20 GMT 2021 
eula=false

書き換え後:

\#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). 
\#Thu Aug 12 16:55:20 GMT 2021 
eula=true

書き換えたら、Escキーを押下してコマンドモードへ切り替え、保存して閉じます。

:wq

では改めてスクリプトを実行します。今回は正常にMinecraftが起動します。

./minecraft.sh

これで、とりあえずマルチサーバーに入って遊ぶ環境が整いました!

友人を招待して遊ぶもよし! とりあえず自分だけ入って散策してみるのもよし!

しかし、上記手順だけではレンタルサーバーからログアウトしてしまうとマイクラサーバーも落ちる、という方もいらっしゃると思います。大丈夫です、私もでした。

この先の手順を確認してみてください。

   

9.常時起動させる

「マイクラ 常時起動」とかで検索していて、「screen」という単語にぶち当たった方もいらっしゃるでしょうか。

CentOS 8 で下記のコマンドを実行しても、エラーになってうまくいきません:

dnf install screen

ちなみに、CentOS 7まではうまくいきます(と聞きました 笑)。詳細は割愛しますが、CentOS 8から仕様が変わったみたいです。興味ある方は調べてみてください(雑)。

さて、ではどうするか? 下記の2つのコマンドを実行してください:

dnf install epel-release

dnf –enablerepo=epel install screen

はい、これで無事にscreenがインストールできました。

  

この手順で、レンタルサーバーからログアウトしてもマイクラのサーバーは起動し続けるはず。

  

10.Minecraftサーバーを自動起動させる

さて、レンタルサーバーを再起動したあとにいちいちMinecraftのマルチサーバー再起動もするのが面倒、など自動起動させたい人への追加設定について記載します。ちょっと上級者向けですね。

まずは自動起動用のファイルを作成します。

vi /etc/systemd/system/minecraft_server.service

[Unit] 
Description=Minecraft Server
After=network-online.target 

[Service]
 ExecStart=/bin/bash /var/minecraft/minecraft.sh 
WorkingDirectory=/var/minecraft/
 Restart=always
 User=root
 Group=root 

[Install] 
WantedBy=multi-user.target

保存したら、下記のコマンドでファイルを読み込みます。

systemctl daemon-reload

次に、サーバー起動時に自動起動するように下記のコマンドを実行します。

systemctl enable minecraft_server

Minecraftを起動します。

systemctl start minecraft_server

ステータスを確認するときは、下記のコマンドを実行します。

systemctl status minecraft_server

Minecraftサーバーを停止するときは、下記のコマンドを実行します。

systemctl stop minecraft_server

これですべての設定が完了です!

お疲れさまでした!!

   

また何か思い出したら追記します。

   

サーバーを立ち上げたら、次は実際に友人を招待しましょう。

招待の仕方はMinecraftでマルチサーバー立ち上げ後の友人参加方法をご参照ください。

   

https://natariko.com/blog/minecraft_server_multi_invitation/

   

スポンサーリンク

初期費用無料・月額864円から 高セキュリティ・高安定のレンタルサーバー

1件のコメント

  1. ピンバック: Minecraftでマルチサーバー立ち上げ後の友人参加方法 | natariko blog

コメントは受け付けていません。