【CentOS 7】Linuxでのマインクラフトのサーバの建て方
CentOS 7 でマインクラフト(Minecraft)のサーバを構築してみました。
私の備忘録も兼ねて、記事に書いておこうと思います(^o^)
手順
大きく分けて、やることは9つです。
- マインクラフトのサーバ用のアカウントの作成
- Javaのインストール
- screenのインストール
- ポートの開放
- マインクラフトサーバのダウンロード
- マインクラフトのサーバの設定
- マインクラフトのサーバの起動
- screenを用いてのバックグラウンドでの起動
- マインクラフトのサーバの詳細設定
の9つです。
順に説明していきます。
目次
スポンサーリンク
1. マインクラフトのサーバ用のアカウントの作成
まずは、マインクラフトのサーバ用のアカウントを作成しましょう。
アカウントの作成とパスワードの設定方法
ユーザの作成を行うには、useradd を使用します。ユーザにパスワードを割り当てるには、passwd を使用します。
[meideru@localhost ~]$ sudo useradd meideru-minecraft [meideru@localhost ~]$ sudo passwd meideru-minecraft Changing password for user meideru-minecraft. New password: Retype new password: passwd: all authentication tokens updated successfully. [meideru@localhost ~]$ cat /etc/passwd (~~~中略~~~) meideru-minecraft:x:1003:1004::/home/meideru-minecraft:/bin/bash
ユーザが作成できているかどうかはmcat /etc/passwd を使用します。作成できていますね!
2. Javaのインストール
マインクラフトはJavaで開発されています。マインクラフトのサーバも同様です。なので、Javaをインストールする必要があります。
Javaをインストールするには、yum -y install java を使用します。
[meideru@localhost ~]$ sudo yum -y install java [sudo] password for meideru: (~~中略~~) Complete!
これでインストールは完了です。
3. screenのインストール
通常、ログアウト(exit)するとアプリケーションは動作し続けますが、再びログインしたときにそのアプリケーションをコントロールすることはできません。
(シェルにはfgとbgというアプリケーションをバックグランドで動作させるコマンドがありますが、このコマンドは、それをできるアプリケーションとできないアプリケーションがあります。マインクラフトのサーバはできません。)
つまり、起動したは良いものの、ログアウトすると、あとはそのアプリケーションを終了することしかできないということです。
これを解決できるのがscreenというアプリケーションです。これを用いると、再びログインしたときにアプリケーションをコントロールすることができます。
早速、screenをインストールしてみましょう。
screenをインストールするには、yum -y install screen を使用します。
[meideru@localhost ~]$ sudo yum -y install screen (~~中略~~) Complete!
これでインストール完了です。
4. ポートの開放
サーバですからパケットの通信が必要です。
パケットを通過させるにはファイアウォールを設定する必要あります。
マインクラフトのサーバは通常、25565というポート番号を使用して通信しますので、このポートを開放してやります。
ポートを開放するには、firewall-cmd –permanent –add-port=(ポート番号) –zone=(ゾーン名) を使用します。
[meideru@localhost ~]$ sudo firewall-cmd --permanent --add-port=25565/tcp --zone=public success [meideru@localhost ~]$ sudo firewall-cmd --reload success [meideru@localhost ~]$ firewall-cmd --list-all public (default, active) interfaces: eth0 sources: services: dhcpv6-client ssh ports: 25565/tcp masquerade: no forward-ports: icmp-blocks: rich rules:
firewall-cmd –reload はファイアウォールの設定を反映するコマンドです。
その下のfirewall-cmd –list-all は、ファイアウォールの設定を確認するコマンドです。portsの横に25565/tcpというのが書いてありますよね?これはこの番号のポートを解放しているという意味です。
5. マインクラフトサーバのダウンロード
マインクラフトのサーバのアプリケーション本体をダウンロードします。
ダウンロードするには、wget を使用します。wget はファイルをダウンロードするコマンドです。
入っていない方はインストールしてください。
wget をインストールするには、yum -y install wget を使用します。
[meideru@localhost ~]$ sudo yum -y install wget (~~中略~~) Complete!
次に、マインクラフトのサーバのアプリケーション本体をダウンロードします。
wget (URL) を使用します。(URL)にはファイルがダウンロードできるURLを入力してください。
通常はカレントディレクトリにファイルが保存されますので、保存先のディレクトリに移動しておいてください。
この記事では、ホームディレクトリにダウンロードします。
[meideru@local ~]$ wget https://s3.amazonaws.com/Minecraft.Download/versions/1.10.2/minecraft_server.1.10.2.jar [meideru@localhost ~]$ ls minecraft_server.1.10.2.jar
ls を入力した結果、ダウンロードできていることが確認できました。
成功です!
6. マインクラフトのサーバの設定
マインクラフトのサーバを設定する前に、ダウンロードしたファイルの名前を変更しましょう。
mvを使用して名前を変更します。
[meideru@localhost ~]$ mv minecraft_server.1.10.2.jar minecraft_server.jar [meideru@localhost ~]$ ls -l total 9240 -rwxrwxr-- 1 meideru meideru 9459897 Jun 23 21:23 minecraft_server.jar
ls で名前が変更できていることを確認してみましょう。できていますね!
マインクラフトのサーバを起動してみましょう。結論から言いますが、初回の起動は必ず失敗します。利用規約に同意していないためです。
起動するには、java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui を使用します。
[meideru@localhost ~]$ java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui [01:37:52] [Server thread/INFO]: Starting minecraft server version 1.10.2 [01:37:52] [Server thread/INFO]: Loading properties [01:37:52] [Server thread/WARN]: server.properties does not exist [01:37:52] [Server thread/INFO]: Generating new properties file [01:37:52] [Server thread/WARN]: Failed to load eula.txt [01:37:52] [Server thread/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info. [01:37:52] [Server thread/INFO]: Stopping server [meideru@localhost ~]$ ls -l total 9248 -rw-rw-r-- 1 meideru meideru 181 Jul 12 01:37 eula.txt drwxrwxr-x 2 meideru meideru 23 Jul 12 01:37 logs -rwxrwx--- 1 meideru meideru 9459897 Jun 23 21:23 minecraft_server.jar -rw-rw-r-- 1 meideru meideru 59 Jul 12 01:37 server.properties
実行すると起動に失敗して、新しく合わせて3つのファイルとディレクトリが作られたと思います。eula.txtとlogsとserver.propertiesの3つです。
eula.txtの記述を書き換えます。具体的には、eula=false となっているところをeula=true に書き換えてください。
これで、利用規約に同意したことになります。
7. マインクラフトのサーバの起動
もう一度起動してみましょう。
[meideru@localhost ~]$ java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui [01:46:07] [Server thread/INFO]: Starting minecraft server version 1.10.2 [01:46:07] [Server thread/INFO]: Loading properties [01:46:07] [Server thread/INFO]: Default game type: SURVIVAL (~~中略~~) [01:46:22] [Server thread/INFO]: Preparing spawn area: 89% [01:46:23] [Server thread/INFO]: Preparing spawn area: 98% [01:46:23] [Server thread/INFO]: Done (14.887s)! For help, type "help" or "?"
これで無事起動できました!
マインクラフトを起動して、マルチプレイでサーバのIPアドレスを入力してみてください。接続できるはずです!
サーバを停止するには、stopと入力してenterを押します。
基本的なことは、これで全て終了です。
8. screenを用いてのバックグラウンドでの起動
起動してみてわかったと思うのですが、マインクラフトのサーバの画面だけが表示されていて他の作業が何もできません。
マインクラフトのサーバをバックグラウンドで実行する必要があるのです。
そのためには、3でインストールしたscreen を使用します。
以下ではザックリとscreenの使い方を説明しますので、しっかりと使い方を理解したい方は「関連記事」を見てください。
まず、screenを起動します。シェルでscreen と入力して起動します。
[meideru@localhost ~]$ screen
screen を起動すると、新しく画面が生成されると思います。
新しく生成された画面で、マインクラフトのサーバを起動してください。
[meideru@localhost ~]$ java -Xms1024M -Xmx1024M -jar minecraft_server.jar nogui [02:21:29] [Server thread/INFO]: Starting minecraft server version 1.10.2 (~~中略~~) [02:21:32] [Server thread/INFO]: Done (2.544s)! For help, type "help" or "?"
マインクラフトのサーバを起動している状態で、Ctrl + A を押してから D を押してください。すると、元の画面に戻ると思います。これをデタッチと言います。
この状態でログアウトしてもマインクラフトのサーバは動作し続けています。
試しにログアウトしてみましょう。
ログアウトしてから、もう一度、ログインしてみましょう。
ログインしてから、screen -ls とコマンドを打ってみてください。すると、起動している画面の一覧が表示されます。
[meideru@localhost ~]$ screen -ls There is a screen on: 5452.pts-0.tk2-250-34620 (Detached) 1 Socket in /var/run/screen/S-meideru.
5452というのはPID番号です。
これがデタッチ(Detached)されていることがわかりますね。
この画面は、マインクラフトのサーバを起動している画面です。
この画面に戻るには、screen -r (PID番号)を使用します。
[meideru@localhost ~]$ screen -r 5452
すると、マインクラフトのサーバの画面に戻っているはずです!
これで完璧です!
とてもザックリとした説明になってしまいました^^;
screenの使い方について詳しく知りたい方は、関連記事をご覧ください。
ザックリとscreenの使い方を説明しますので、しっかりと使い方を理解したい方は「関連記事」を見てください。
9. マインクラフトのサーバの設定
1~8までの作業で、マインクラフトのサーバは運用できます。
しかし、今後、色々と詳細に設定しなければならない機会が出てくると思います。なので、紹介しておきます。
設定を行うには、server.properties を編集します。
例えば、初期の状態では内容は以下のようになっています。
[meideru@localhost ~]$ cat server.properties #Minecraft server properties #Tue Jul 12 02:24:38 JST 2016 max-tick-time=60000 generator-settings= force-gamemode=false allow-nether=true gamemode=0 enable-query=false player-idle-timeout=0 difficulty=1 spawn-monsters=true op-permission-level=4 announce-player-achievements=true pvp=true snooper-enabled=true level-type=DEFAULT hardcore=false enable-command-block=false max-players=20 network-compression-threshold=256 resource-pack-sha1= max-world-size=29999984 server-port=25565 server-ip= spawn-npcs=true allow-flight=false level-name=world view-distance=10 resource-pack= spawn-animals=true white-list=false generate-structures=true online-mode=true max-build-height=256 level-seed= use-native-transport=true motd=A Minecraft Server enable-rcon=false
これをいじって設定を変更します。
各項目についてはググってみてください(無責任ですがw)
以上です!
ノシ
スポンサーリンク
関連記事