ユーザ用ツール

サイト用ツール


ubuntu-server-14-04:minecraft-server

Minecraft サーバーのインストール

Ubuntu に Minecraft サーバーをインストールして、マルチプレイを楽しむ。

インストール前の環境

  • Ubuntu 14.04.1 LTS 64bit
パッケージ名 バージョン インストールするバージョン
python-software-properties none 0.92.37.3
oracle-java8-installer none 8u45+8u33arm-1~webupd8~0

インストール

Oracle JDK8 のインストール

Oracle の JDK をインストールする。

普通にインストールすると、OpenJDK がインストールされてしまう。OpenJDK を使うと、Minecraft サーバーで問題が起こるので使用しない。

Oracle JDK のリポジトリを追加する。

$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update

Oracle JDK8 をインストール。

$ sudo apt-get install oracle-java8-installer

ライセンスに同意するかだけ聞かれるので回答する。

ユーザと権限を追加

セキュリティの観点から Minecraft サーバーを実行するユーザーは root 以外を使用する。

Minecraft サーバー用のユーザーを追加する。

$ sudo adduser minecraft

新しいパスワードを設定する。ユーザーの名前等、色々聞かれるが空欄でOK。

minecraft のグループを確認してみると、デフォルトで minecraft グループが作成されてメンバーになっている。

$ groups minecraft
minecraft : minecraft

Minecraft サーバーのバイナリを設置

サーバーのバイナリを設置するディレクトリを作成する。

$ sudo mkdir -p /var/minecraft/server01

バックアップ用のディレクトリも作成。

$ sudo mkdir /var/minecraft/backup

サーバーのバイナリを設定するディレクトリに移動。

$ cd /var/minecraft/server01

バージョン 1.8.6 (2015年5月30日時点で最新) をダウンロード。最新版の URLここ でチェック。

$ sudo wget https://s3.amazonaws.com/Minecraft.Download/versions/1.8.6/minecraft_server.1.8.6.jar
$ sudo mv minecraft_server.1.8.6.jar minecraft_server.jar

パーミッションを変更する。

$ sudo chown -R minecraft:minecraft /var/minecraft
$ sudo chmod -R 775 /var/minecraft

ファイアウォールの設定を変更

Minecraft でデフォルトで使用するポート 25565 を開放する。

$ sudo ufw allow 25565

起動確認

一旦起動することを確認する。

ユーザーを変更する。

$ su - minecraft
$ cd /var/minecraft/server01/
$ java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

ライセンスをに同意しないと起動しないらしい。

[Server thread/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

メッセージで示されたファイルを確認。

$ vi ./eula.txt 

eula の行を TRUE に変更する。

eula=TRUE

再度起動を試みる。

$ java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
:
:
[17:27:04] [Server thread/INFO]: Preparing spawn area: 52%
[17:27:05] [Server thread/INFO]: Preparing spawn area: 67%
[17:27:06] [Server thread/INFO]: Preparing spawn area: 81%
[17:27:07] [Server thread/INFO]: Preparing spawn area: 94%
[17:27:07] [Server thread/INFO]: Done (8.842s)! For help, type "help" or "?"

今度は起動成功。Minecraft のクライアントからサーバーにログインできるかを確認する。

Minecraft サーバーの設定

クライアントからの接続が確認できたら Minecraft サーバーを一旦停止する。

起動中のサーバーに以下のコマンドを入力。

stop

特殊な権限を持つオペレーターユーザーを設定する。

$ vi ./ops.json

オペレーターに設定するユーザーのユーザーネームと UUID を記述する。ユーザーネームと UUID の変換は こちら

レベルと対応する権限は以下の通り。

レベル 権限
1 spawn-protection の無視
2 /clear, /difficulty, /effect, /gamemode, /gamerule, /give, /tp コマンド及びコマンドブロックの使用を許可
3 /ban, /deop, /kick, /op コマンドの許可
4 /stop コマンドを含む全てのコマンドの許可
[
  {
    "uuid": "9b15dea6-606e-47a4-a241-420251703c59",
    "name": "Foo",
    "level": 4
  },
  {
    "uuid": "d5f5c683-5ad5-476f-9191-a220df6953f1",
    "name": "Bar",
    "level": 2
  }
]

server.properties 内の設定を変更して、Minecraft サーバーの設定を変更する。

設定値の詳細は Minecraft server properties にて。

$ vi ./server.properties

server.properties で white-list=true に設定した場合は、whitelist.json に接続を許可するユーザーを追加する。

$ vi ./whitelist.json 
[
  {
    "uuid": "9b15dea6-606e-47a4-a241-420251703c59",
    "name": "Foo"
  },
  {
    "uuid": "d5f5c683-5ad5-476f-9191-a220df6953f1",
    "name": "Bar"
  }
]

実行スクリプトの作成

毎回コマンドラインでパラメータを渡すのも面倒なので、スクリプトを作成する。

$ cd /var/minecraft
$ vi ./run_server01.sh
#!/bin/bash
cd /var/minecraft/server01
java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui

実行権限を付与する。

$ chmod ug+x ./run_server01.sh

参考

ubuntu-server-14-04/minecraft-server.txt · 最終更新: 2015/05/30 23:09 by admin