[Qiita] ConoHaを使ってCentOS 7.2でMinecraftサーバーを立てる

※この記事は以前Qiitaに投稿されていた古い記事です

はじめに

友人に頼まれてMinecraftサーバーを立てることがたまにあるので、メモとしてまとめておきます。
これが正しいやり方というわけではなく、こういうやり方もあるという前提で見ていただけると助かります。
Linuxをあんまり触ったことがない人でも分かるように書くつもりですが、分からなかったらググってなんとかしてください!

ConoHaとは

ひと月900円から使えるVPSサービスです。
特長 -【ConoHa】
https://www.conoha.jp/conoha/features

なぜConoHaなのか

  • このは可愛い
  • 安い
以上。
ConoHaの可愛さは以下にアクセスするか、
ConoHa - スマート&パワフルなクラウドの新提案。ひと月900円から。
https://www.conoha.jp/conoha
言語設定をこのはにすると、きっと分かります。
スクリーンショット 2016-02-29 3.27.24.png

必要なもの

ConoHaでサーバーを作る

  1. 左のメニューから、サーバー追加ボタンを押す
    スクリーンショット 2016-03-06 18.37.54.png
  2. プランとイメージを決める
    スクリーンショット 2016-03-06 18.39.02.png
    だいたいこんな感じで。
    メモリに関しては、少人数でプレイするなら1GBで充分だとは思いますが、人数が多くなってくると1GBだと重いかもしれません。
    VPSを一度停止すればプランの変更は可能なので、重く感じたらプランを変更するというのもアリだと思います。
    rootパスワードはサーバーに入るときに必要になるので、任意のパスワードを入れておいてください。
  3. オプションを決める
    スクリーンショット 2016-03-06 18.54.05.png
    接続許可ポートは「すべて許可」にしないとTCP以外通らなくなってしまうので、「すべて許可」にしておきます。
    SSH Keyはsshで接続するのであればここで作成しておくと便利ですが、今回の説明では使わないので「使用しない」にしておきます。
  4. サーバーを追加する
    スクリーンショット 2016-03-06 18.59.25.png
    値段などこれで良ければ、「追加」ボタンを押します。
  5. サーバーが正常に作成されているか確認する
    追加ボタンを押したら、自動的にサーバーリストに移動し、「構築中」になっているのが確認できます。
    5秒くらい待ってからページをリロードすると、こんな感じで起動中に変わるので、これでサーバーの作成は完了です。
    スクリーンショット 2016-03-06 19.03.20.png

サーバーのIPアドレスを確認する

  1. サーバーリストからネームタグをクリックする
    スクリーンショット 2016-03-06 19.06.40.png
  2. ネットワーク情報をクリックして、出てきたIPアドレスをメモしておく
    スクリーンショット 2016-03-06 20.02.35.png
ここでメモしたIPアドレスは、実際にMinecraftを遊ぶときに必要になります。

いろいろインストールしたり、設定したり

コンソールを開く

サーバーにいろいろとインストールしたり設定するためには、コンソールを開く必要があるので、まずその手順を説明します。
  1. サーバーリストからネームタグをクリックする
    スクリーンショット 2016-03-06 19.06.40.png
  2. コンソールボタンを押す
    スクリーンショット 2016-03-06 19.08.13.png
  3. コンソールウィンドウが出てきたら、上部の「コンソール」ボタンを押して、「シリアル」を選択する(VNCのままでも良いですが、個人的にシリアルのが使いやすいので)
    スクリーンショット 2016-03-06 19.14.41.png
  4. こんな画面になったら、黒い部分のどこかを1度クリックしてから、Enterを押す
    スクリーンショット 2016-03-06 19.16.47.png
  5. こんな感じでログイン画面になったら、準備完了
    スクリーンショット 2016-03-06 19.17.33.png

root(管理者でログインする)

  1. 先ほどの黒いログイン画面でrootと入力してEnter
    スクリーンショット 2016-03-06 19.22.44.png
  2. サーバー作成時に設定したrootパスワードを入力してEnter
    文字を入力しても画面には出てきませんが、ちゃんと入力されているので、安心してEnterを押しましょう
    スクリーンショット 2016-03-06 19.28.20.png
  3. こんな感じで表示されたらログイン完了
    スクリーンショット 2016-03-06 19.28.38.png
ここからは、このコンソールにせっせとコマンドを打ち込んでいくだけなので、コマンドのみ記載していきます。

Javaを入れる

以下のURLからJDKをダウンロードします。
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
規約に同意してから、以下のコマンドを打ち込みます。
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u73-b02/jdk-8u73-linux-x64.rpm"
インストールします。
rpm -ivh jdk-8u73-linux-x64.rpm
以下のコマンドを打って、See http://www.oracle.com/technetwork/java/javase/documentation/index.html for more details.みたいなメッセージが出てきていたら、インストール完了です。
java

screenを入れる

以下のように入力してscreenをインストールする
yum -y install screen
Complete!と出てこればOK。

ポート開放

  1. ポートを開放する
    以下のコマンドでMinecraftで必要な25565番ポートを開放します
    firewall-cmd --zone=public --add-port=25565/tcp --permanent
    
  2. 反映する
    firewall-cmd --reload
    
  3. 確認する
    firewall-cmd --list-all
    
    portsの部分に25565/tcpと出てこれば、OKです。

Minecraft用のユーザーを作成する

  1. ユーザーを追加
    useradd minecraft
    
  2. パスワードを設定
    passwd minecraft
    
    確認で2回パスワード入力を求められるので、2回入力します。
    スクリーンショット 2016-03-06 19.40.55.png
    入力されていないように見えるかもしれませんが、ちゃんと入力されているので安心してEnterを押しましょう。

Minecraft用のディレクトリを作る

  1. ディレクトリ作成
    mkdir -p /usr/local/games/minecraft
    
  2. ディレクトリの権限変更
    chown minecraft:minecraft /usr/local/games/minecraft
    

起動スクリプトを用意する

  1. minecraftユーザーになる
    su - minecraft
    
  2. Minecraft用のディレクトリに移動する
    cd /usr/local/games/minecraft
    
  3. Minecraft WIKIから、起動スクリプトをダウンロードする
    wget -O minecraft "http://minecraft.gamepedia.com/Tutorials/Server_startup_script/Script?action=raw"
    
  4. 編集する
    vi minecraft
    
    以下を入力して、Enter
    /MCPATH
    
    iを押して編集モードになり、以下のように編集する
    MCPATH='/usr/local/games/minecraft'
    
    Escを押してコマンドモードになり、以下を入力してEnterを押して保存して終了する
    :wq
    
  5. 実行権限を与える
    chmod +x minecraft
    
  6. rootに戻る
    exit
    
  7. /etc/init.d/ディレクトリに移動する
    cd /etc/init.d/
    
  8. シンボリックリンクを作成する
    ln -s /usr/local/games/minecraft/minecraft
    
  9. これで、起動スクリプトの準備は完了

Minecraftサーバーを立てる

普通のサーバー

  1. minecraftユーザーになる
    su - minecraft
    
  2. minecraft用のディレクトリに移動する
    cd /usr/local/games/minecraft
    
  3. Minecraftの公式ページから、jarをダウンロードする
    wget https://s3.amazonaws.com/Minecraft.Download/versions/1.9/minecraft_server.1.9.jar
    
  4. ファイルをリネームする
    mv minecraft_server.1.9.jar minecraft_server.jar
    
  5. minecraft_server.jarを実行する
    java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
    
  6. eula.txtというファイルが作成されるので、MINECRAFT エンド ユーザー ライセンス条項に同意したら、trueにする
    eula.txtviで開く
    vi eula.txt
    
    以下を入力して、falseをtrueにする
    :3s/false/true/
    
    保存する
    :wq
    
  7. Minecraftサーバーを起動する
    java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
    
    起動できたら、こんな感じでログが出てくるはず
    [00:24:28] [Server thread/INFO]: Preparing spawn area: 93%
    [00:24:29] [Server thread/INFO]: Done (10.143s)! For help, type "help" or "?"
    
  8. ついでにop権限を与えたいアカウントに、ここでop権限与える
    以下のように入力してEnter
    op [アカウント名]
    
  9. Ctrl+Cで一旦サーバーを終了する
  10. rootに戻る
    exit
    
  11. 以下のコマンドでサーバーを起動させる
    service minecraft start
    
  12. サーバーの起動時に自動起動する設定を行う
    chkconfig minecraft on
    
  13. Minecraftのクライアントを起動して、サーバー追加でサーバーアドレスの部分に最初にメモしたIPアドレスを入力します
    スクリーンショット 2016-03-06 20.09.41.png
  14. あとは遊ぶだけ!
    スクリーンショット 2016-03-20 4.46.17.png

Modサーバー(Minecraft Forge)

通常のサーバーを構築済みの場合

  1. サーバーを終了する
    service minecraft stop
    
    minecraft_server.jar is stopped.と出るまで待ちます。
  2. 既存のサーバーのファイル名をリネームする
    mv /usr/local/games/minecraft /usr/local/games/backup_minecraft
    
  3. 新たにminecraftディレクトリを作成する
    mkdir -p /usr/local/games/minecraft
    
  4. 起動スクリプトをコピーする
    cp /usr/local/games/backup_minecraft/minecraft /usr/local/games/minecraft/minecraft
    
  5. ディレクトリとスクリプトの権限を変更する
    chown minecraft:minecraft -R /usr/local/games/minecraft
    

Modサーバー構築手順

  1. minecraftユーザーになる
    sudo su - minecraft
    
  2. Minecraft用のディレクトリに移動する
    cd /usr/local/games/minecraft
    
  3. Minecraft Forgeのサイトから、installerとuniversalをダウンロードする
    wget http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.7.10-10.13.4.1558-1.7.10/forge-1.7.10-10.13.4.1558-1.7.10-installer.jar
    
    wget http://files.minecraftforge.net/maven/net/minecraftforge/forge/1.7.10-10.13.4.1558-1.7.10/forge-1.7.10-10.13.4.1558-1.7.10-universal.jar
    
  4. インストールする
    java -jar ./forge-1.7.10-10.13.4.1558-1.7.10-installer.jar nogui --installServer
    
  5. インストールが完了したら、インストーラを削除する
    rm -rf forge-1.7.10-10.13.4.1558-1.7.10-installer.jar*
    
  6. ファイルをリネームする
    mv forge-1.7.10-10.13.4.1558-1.7.10-universal.jar minecraft_server.jar
    
  7. 実行する
    java -Xmx1024M -Xms1024M -jar minecraft_server.jar
    
  8. 通常のMinecraftサーバーと同じく、eula.txtというファイルができるので、MINECRAFT エンド ユーザー ライセンス条項に同意したら、trueにする
    eula.txtviで開く
    vi eula.txt
    
    以下を入力して、falseをtrueにする
    :3s/false/true/
    
    保存する
    :wq
    
  9. 起動する
    java -Xmx1024M -Xms1024M -jar minecraft_server.jar
    
    起動できたら、こんな感じでログが出てくるはず
    [00:24:28] [Server thread/INFO]: Preparing spawn area: 93%
    [00:24:29] [Server thread/INFO]: Done (10.143s)! For help, type "help" or "?"
    
  10. ついでにop権限を与えたいアカウントに、ここでop権限与える
    以下のように入力してEnter
    op [アカウント名]
    
  11. Ctrl+Cで一旦サーバーを終了する
  12. rootに戻る
    exit
    
  13. 以下のコマンドでサーバーを起動させる
    service minecraft start
    
  14. サーバーの起動時に自動起動する設定を行う(まだしてない場合)
    chkconfig minecraft on
    
  15. Minecraftのクライアントを起動して、サーバー追加でサーバーアドレスの部分に最初にメモしたIPアドレスを入力します
    スクリーンショット 2016-03-06 20.09.41.png
  16. あとは遊ぶだけ!
    スクリーンショット 2016-03-20 4.47.02.png

サーバーにModを入れたいとき

  1. minecraftユーザーになる(なってない場合)
    su - minecraft
    
  2. modディレクトリに移動する
    cd /usr/local/games/minecraft/mods
    
  3. Modをダウンロードする
    wget "ModのjarとかのURL"
    

覚えておくと便利なコマンド集

コマンド 内容
pwd 現在のディレクトリの位置を表示
ls -l 現在のディレクトリにあるファイル一覧を表示
cd ディレクトリ名 ディレクトリを移動する
mv 変更前のファイル名 変更後のファイル名 ファイル名を変更する
mv 変更前のファイルの場所 変更後のファイルの場所 ファイルを移動する
su アカウント名 アカウント名でログイン
su - アカウント名 アカウント名でログインしてホームディレクトリに移動する
rm ファイル名 ファイルを削除する
rm -rf ディレクトリ名またはファイル名 ファイルまたファイル名を警告を出さずに削除する
(復元できないのでこのコマンドを打つときは注意してね)

参考

CentOS 7 に Java 8 を入れる
http://blog.tanitanin.net/?p=833

ConoHaクラウドでping/ping6が通らない…(解決済
https://linux.yebisu.jp/memo/1025


コメント

人気の投稿

【Linux】Linuxでディレクトリ毎にzip圧縮する

[Qiita] Google Playのクローズドベータ版テストでメールアドレスを指定して公開する

[Qiita] Androidの実機でPCのlocalhostに接続したり、Webページの要素を検証する