MinecraftServer」カテゴリーアーカイブ

Minecraft用Ubuntuサーバーの作成(5)

一応、動く状態に持っていったのですが、ここから快適に動くようにポート解放とRAMDiskの設定を行います。
ユーザーはSudoの使えるユーザーに戻します。

minecraft@MineCraft:~$ exit
ログアウト
master@MineCraft:~$

ポート解放

master@MineCraft:~$ sudo ufw allow 25565/tcp
master@MineCraft:~$ sudo ufw reload
master@MineCraft:~$ sudo ufw enable

(Minecraftのポートを変更している場合は 25565/tcp を変更してください)

RAMDiskの作成

マウント先の作成

master@MineCraft:~$ sudo mkdir /ramdisk
master@MineCraft:~$ sudo chmod 777 /ramdisk

メモリの使用状況を確認

master@MineCraft:~$ df -Th
Filesystem                      Type      Size  Used Avail Use% Mounted on
/dev/mapper/GameServer--vg-root ext4      134G  2.0G  125G   2% /
none                            tmpfs     4.0K     0  4.0K   0% /sys/fs/cgroup
udev                            devtmpfs  2.0G  4.0K  2.0G   1% /dev
tmpfs                           tmpfs     396M  668K  395M   1% /run
none                            tmpfs     5.0M     0  5.0M   0% /run/lock
none                            tmpfs     2.0G     0  2.0G   0% /run/shm
none                            tmpfs     100M     0  100M   0% /run/user
/dev/sda1                       ext2      236M   55M  169M  25% /boot

/dev/shmではなく/run/shmになっている上、2.0GBだったので2.5GBに拡張した上で/ramdiskにマウントします。

master@MineCraft:~$ sudo nano /etc/fstab

以下を最終行に追記

none /run/shm tmpfs nosuid,nodev,size=2560M 0 0
/run/shm /ramdisk tmpfs defaults,size=2560M 0 0

(ちなみに、/run/shmは/lib/init/fstabに書かれていますが、/etc/fstabで設定を上書きしています)

反映させるために再起動

master@MineCraft:~$ sudo reboot

RAMDiskができていることを確認

master@MineCraft:~$ df -h | grep ramdisk
/run/shm                         2.5G     0  2.5G   0% /ramdisk

WorldデータをRAMDiskに移動

Minecraftのデータの読み書きは基本的にWorldデータなのでこれをRAMDiskに移動させ、高速化します。
まずは、ユーザーを切り替えし、作業フォルダに移動します。

master@MineCraft:~$ su - minecraft
minecraft@MineCraft:~$ cd 1.7.10/

world フォルダの中身を world_storage(保存用フォルダ) へコピー

minecraft@MineCraft:~/1.7.10$ mkdir world_storage
minecraft@MineCraft:~/1.7.10$ cp -rp world/ world_storage/

RAMDiskにminecraftフォルダを作成してWorldフォルダを持ってくる

minecraft@MineCraft:~/1.7.10$ mkdir /ramdisk/minecraft
minecraft@MineCraft:~/1.7.10$ mkdir /ramdisk/minecraft/1.7.10
minecraft@MineCraft:~/1.7.10$ mv world/ /ramdisk/minecraft/1.7.10/

world へ設定ファイルのリンクを作成する。(実際はRAM上で動くようになる)

minecraft@MineCraft:~/1.7.10$ ln -s /ramdisk/minecraft/1.7.10/world/ .

起動用スクリプトの作成

RAMDiskは電源が切れると消去されるので、起動時にRAMDiskにコピーし、終了時にRAMDiskから保存フォルダにコピーするように起動用スクリプトを書きます。

minecraft@MineCraft:~/1.7.10$ nano  00_StartServer.sh
#!/bin/bash
mkdir /ramdisk/minecraft
mkdir /ramdisk/minecraft/1.7.10
mkdir /ramdisk/minecraft/1.7.10/world
cp -rp /home/minecraft/1.7.10/world_storage/* /ramdisk/minecraft/1.7.10/world/

#起動
java -Xmx1024M -Xms1024M -jar forge-1.7.10-10.13.2.1232-universal.jar nogui

#終了時に保存用フォルダにコピー
rsync -av --delete /ramdisk/minecraft/1.7.10/world/ /home/minecraft/1.7.10/world_storage/

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

minecraft@MineCraft:~/1.7.10$ chmod +x 00_StartServer.sh

そして、実行

minecraft@MineCraft:~/1.7.10$ ./00_StartServer.sh

次回は、停電に対応するため定期的にバックアップを取るようにしていきます。

Minecraft用Ubuntuサーバーの作成(4)

Minecraft Serverの設置

サーバー用ディレクトリを作成します。
今回はバージョン1.7.10なので下記のコマンドを入力しました。

minecraft@MineCraft:~$ mkdir 1.7.10

下記のコマンドで先ほど作ったディレクトリに移動します。

minecraft@MineCraft:~$ cd 1.7.10

次にMinecraftのサーバーファイルをダウンロードします。

minecraft@MineCraft:~/1.7.10$ wget https://s3.amazonaws.com/Minecraft.Download/versions/1.7.10/minecraft_server.1.7.10.jar

サーバーを起動してみます。

minecraft@MineCraft:~/1.7.10$ java -Xmx1024M -Xms1024M -jar minecraft_server.1.7.10.jar nogui

実行するといろいろ表示されますが下記の内容で起動しないはずです。

[10:56:50] [Server thread/INFO]: Starting minecraft server version 1.7.10
[10:56:50] [Server thread/INFO]: Loading properties
[10:56:50] [Server thread/WARN]: server.properties does not exist
[10:56:50] [Server thread/INFO]: Generating new properties file
[10:56:50] [Server thread/WARN]: Failed to load eula.txt
[10:56:50] [Server thread/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.
[10:56:50] [Server thread/INFO]: Stopping server
[10:56:50] [Server Shutdown Thread/INFO]: Stopping server

これは、エンドユーザーライセンス利用規約に同意してないから起動できませんとのことなので、
同意します。(eula.txtは翻訳等を探すなりして把握してから同意してください)

minecraft@MineCraft:~/1.7.10$ nano eula.txt
eula = true

(eula = falseをtrueに変えると同意したことになる)

再度起動してみます。

minecraft@MineCraft:~/1.7.10$ java -Xmx1024M -Xms1024M -jar minecraft_server.1.7.10.jar nogui

以下のような感じで入力可能になれば無事起動に成功しています。

[11:12:57] [Server thread/INFO]: Preparing spawn area: 84%
[11:12:58] [Server thread/INFO]: Done (4.997s)! For help, type "help" or "?"

終了させるときは stop と入力してください。

Minecraft用Ubuntuサーバーの作成(3)

前回SSHを導入したので、リモートで接続し、作業していきます。
(使用しているソフトはRLoginです。)

OracleJDKのインストール

Linux では基本的にOpenJDKをいれるけど今回はWindowsでも使っているOracleのJDKを入れてみます。
バージョンはMinecraft1.7.10を動かすのでJava7にします。本体はJava8でも動くけれどForgeがJava8だとエラーになるので。

$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java7-installer

(切り替えの必要がある場合は、update-alternatives –config java を実行する)

ユーザーの作成

Minecraft用のユーザーを作成します。

$ sudo adduser minecraft

パスワードの入力やユーザープロフィール入力が求められますので、適宜入力してください。

ユーザーの切り替え

ここからは、Minecraft専用の設定になりますので先ほど作ったユーザーに切り替えます。

master@MineCraft:~$su – minecraft

を実行すると下記のように表示が変わります。

minecraft@MineCraft:~$

次回からサーバーを設置していきます。

Minecraft用Ubuntuサーバーの作成(2)

ファイル転送も使いたいので操作は基本的にSSHを利用したリモート端末から行います。
そのためにOpenssh Serverをインストールしたいのでまず、最新のソフトウェアリストを取得します。

$ sudo apt-get update

Test-2014-12-08-16-27-50

すると、なにやら文字化けしています。
これはインストーラで日本語を選択した場合、コンソールでも各プログラムが日本語を出力しようとしますが、標準のコンソールでは日本語表示に対応していないためなのでまずはこれを直します。

コンソール画面の文字化け対応

コンソールで英語のメッセージを表示させるための設定を行います。

$ nano ~/.bashrc

nanoエディタで.bashrc開いたらファイルの末尾に下記を追記

case $TERM in
linux) LANG=C ;;
*) LANG=ja_JP.UTF-8 ;;
esac

Ctrl+Xキーを押し、画面の指示に従えば保存し終了

$ source ~/.bashrc

以上で英語のメッセージが表示されるようになったかと。

UbuntuServerを最新の状態に更新

コンソールの文字化けを英語出力に戻すことで回避したのでまず、Ubuntuを最新の状態に更新します。
必要ないですが、文字化けの対処できてることを確認するためもう一度下記のコマンドを実行します。

$ sudo apt-get update

Test-2014-12-08-16-09-06

英語表記になっていますね。
次に先ほど更新したリストに従い、更新のあったソフトウェアを下記のコマンドで最新の状態にします。

$ sudo apt-get upgrade

OpenSSH Serverのインストール

今回はLAN内で利用するサーバーなのでパスワード方式でログインできるように設定します。

まずは下記のコマンドでインストール

$ sudo apt-get install openssh-server

そして、念のためサーバーを再起動

$ sudo /etc/init.d/ssh restart

以上で、サーバーへSSHリモートログイン可能。
(設定ファイルがデフォルトのままなのでサーバーのログインパスワードでリモートログイン可能)

Minecraft用Ubuntuサーバーの作成(1)

PCが1台開いたのでMinecraftのLocalサーバーにしようと思う。

サーバーにするPCの構成は下記の通り

OS Ubuntu Server 14.04
CPU Intel Core 2 Duo E4500 @2.20GHz
Memory 4GB
HDD 1TB

ということで早速OSのインストール。
今回はUbuntuServer14.04を使います。

ISOをダウンロードしDVD-Rに焼いてサーバーでBootさせます。

Test-2014-12-08-09-40-04
上記の画面になりますので日本語を選択して[Enter]

Test-2014-12-08-09-42-20
Ubuntu Serverをインストールを選択して[Enter]

Test-2014-12-08-09-42-36
確認画面が表示されるが、今回は続行するので[はい]

Test-2014-12-08-09-42-48
日本を選択して[Enter]

Test-2014-12-08-09-42-55
日本語を選択して[Enter]

Test-2014-12-08-09-43-02
お使いのキーボードを選択して[Enter]
(通常は日本語)

Test-2014-12-08-09-44-45
ホスト名を入力し[続ける]
(これはWindowsでいうコンピュータ名です。今回はMineCraft)

Test-2014-12-08-09-45-22
ユーザー名の入力し[続ける]
(今回はmaster)

Test-2014-12-08-09-46-00
アカウント名の入力し[続ける]
(今回はmaster)

Test-2014-12-08-09-46-08
パスワードを入力し[続ける]

Test-2014-12-08-09-46-25
パスワードを再入力し[続ける]

Test-2014-12-08-09-46-36
簡単なパスワードを入力した場合、確認画面が表示されます

Test-2014-12-08-09-46-49
ゲームデータしか入れないので今回は暗号化しないので[いいえ]

Test-2014-12-08-09-48-24
今回は、自動検出のタイムゾーンで正しいので[はい]

Test-2014-12-08-09-48-49
ガイド – ディスク全体を使いLVMをセットアップするを選択して[Enter]
(HDDはUbuntu専用かつ増設の可能性も考えてLVMを使ってインストール)

Test-2014-12-08-09-52-20
ディスクを選択し[Enter]

Test-2014-12-08-09-52-28
問題なければ[はい]

Test-2014-12-08-09-52-56
容量設定画面。適切な値を入力し[続ける]
(スクリーンショットは解説用VM環境のためHDDが20GBの設定のため21.2GBという少なさです)

Test-2014-12-08-09-53-09
問題なければ[はい]

Test-2014-12-08-09-55-50
Proxyの設定を入力し[続ける]

Test-2014-12-08-09-57-47
自動的にアップデートしないを選択し[Enter]
システムのアップデートは基本手動で行います。

Test-2014-12-08-09-58-09
すべて未選択で[続ける]
(1つ1つ確認しながら入れるためすべて未選択)

Test-2014-12-08-10-02-08
[はい]

Test-2014-12-08-10-02-23
[続ける]

以上で、UbuntuServerをインストール完了です。次から環境構築していきます。