もくじ
サーバ目標
・v0.15に対応させる。
・PHP7に対応させる
・週7、24時間稼働させる。
早速作っていきます。
まず、必要なものを準備する
WinSCP
URLよりダウンロード出来ます→ttp://forest.watch.impress.co.jp/library/software/winscp/
Putty ごった煮版
URLよりダウンロード出来ます→ttp://yebisuya.dip.jp/Software/PuTTY/
Genisys
URLにアクセス後、緑色のボタン「Clone or Download」をクリックし「Download zip」でダウンロード出来ます。
ttps://github.com/iTXTech/Genisys
バイナリ
URLにアクセス後、「PHP_7.0.6_x86-64_Linux.tar.gz」をクリックしてダウンロード
ttps://dl.bintray.com/pocketmine/PocketMine/
libltdl.so.7
多分バイナリの欠如してるファイル。URLアクセス後、ページ中ほどの
下記よりダウンロード出来ます。
全部集めるとこんな感じ。
WinSCP、Puttyはインストールをしてください。Genisysは解凍してください。
VPSサーバーを借りる&設定する+α
今回はConohaVPSを借りたのでConohaで記事を書いていきます。
URLより新規登録をしてください。
ttps://www.conoha.jp/
一連の設定を終えたらコントロールパネル左上にあるサーバー追加をクリックします。
rootパスワードを決めて追加を押します。rootパスワードは忘れないようにしてください
コピーしたIPアドレスを使いPuttyとWinSCPをVPSサーバーに接続させます。
それぞれ画像のようにIPアドレス、ユーザ、パスワードを入力したらログインと開くを押してください。パスワードはサーバを追加したときに設定したrootパスワードです。
Puttyはまだひと手間必要です。Puttyに下記を入力します。
root
その次にパスワードを求められるのでrootパスワードを入力します。成功すると画像のようになります。
下準備
VPSサーバに必要なものをインストールしたりポートを開放したりユーザを作成します。
必要な物インストール
pocketmineMPのサイトを見ると「perl gcc make automake libtool autoconf m4」が必要と書いてあるのでインストールします。
Puttyに下記を入力します。
yum -y install perl gcc g++ make automake libtool autoconf m4
ポート開放
Puttyに下記の3つを順に入力してください。
1. 19132番のポートを開放する
firewall-cmd --zone=public --add-port=19132/udp --permanent
2. 反映させる
firewall-cmd --reload
3. 確認する
firewall-cmd --list-all
デーモン化する為の奴インストール
Puttyに下記の2つを順に入力してください。
1. npmをインストール。Complete!と表示されたら成功です。
yum install -y npm --enablerepo=epel
2. foreverをインストール。forever-monitor@1.6.0と出たら成功です。
npm install -g forever
一般ユーザを作成
一般ユーザを作ります。
またまた下記をPuttyに入力してください。
1. ユーザ作成。mcpeの所はユーザ名なので好きな名前でいいです。良く分からなかったらそのままでおk。
useradd mcpe
2. ユーザのパスワードを設定。
passwd mcpe
New passwordと出たら好きなパスワードを入力してください。カーソルは動きませんが入力はできてます。
Retype new passwordと出たらNew passwordで入力したパスワードを再度入力してください。
下準備は以上です!
PocketMine-MPをインストール
まず、先ほど作ったユーザにログインします。
Puttyに下記を入力してください。
su - mcpe
続けて下記を入力します。
wget -q -O - http://get.pocketmine.net/ | bash
Everthing done!と出たらPocketMineインストール終わりです!
次はWinSCPも使って作業していきます。
srcとバイナリ+αを変える
WinSCPで/home/mcpeを開きます。下記画像参照。
開いたらPocketMine-MP.pharとstart.shとbinを削除します。
まず、srcとstart.shを変える
最初にダウンロードしたGenisysの中にあるsrcフォルダとstart.shをVPSサーバに移してください。
次にバイナリを変える。
最初にダウンロードした「PHP_7.0.6_x86-64_Linux.tar.gz」をVPSサーバに移動させます。
次にPuttyを開き下記を入力してください。
tar zxvf PHP_7.0.6_x86-64_Linux.tar.gz
WinSPCで確認してみると「bin」というフォルダが出来ていることが分かります。
次にこのbinの中にlibltdl.so.7を入れます。。
binを開き中にあるPHP7を開きさらにlibを開きます。(画像割愛^^)
手に入れたlibltdl.so.7をそこに移動させます。
移動させたらstart.shとかsrcとかがある場所に戻ってください。
PocketMineーMPを起動
start.shの上で右クリック→プロパティをクリック
パーミッションを下記のように変更して適用をクリック。
Puttyを開き下記を入力
./start.sh
Puttyに下記を順に入力
1.
jpn
2.y
y
3.y
y
Puttyに下記を入力してサーバーをストップさせます。
1. そのまんまだね
stop
WinSCPでF5を押して更新してみるといろいろファイルが出てきます。
この中のops.txtをダブルクリックで開いてください。
開いたら自分のマイクラの名前を記入して保存してください。
マイクラサーバのデーモン化
デーモン化はマイクラサーバを24時間起動しっぱなしにする作業です。現段階ではPuttyを閉じるとマイクラ鯖も閉じてしまいます。
やり方は簡単。
Putyyに下記を入力するだけです。
forever -c sh start start.sh
止めるときは下記のように入力
forever -c sh stop start.sh
簡単!
あとはマイクラPEを起動してIPアドレスとポートを入力して接続したら遊べます!
※間違いや分からない箇所がありましたらコメントでお願いします。
初心者なので対応できない場合もあります。
参考サイト様
コメント
最後のパーミッションの変更で権限がないと出て、変更できない。
早急に対処方法を教えて下さい。
rootでログインして行ってください。
PHP_7.0.6_x86-64_Linux.tar.gzを入れて
tar zxvf PHP_7.0.6_x86-64_Linux.tar.gzを打ってもbinというファイルが出来ません
どうすればいいでしょうか?…
解凍が出来ているのなら、解凍したフォルダの中にbinというファイルがありますので、そちらを使用してください。
もし、解凍が出来ていない場合はディレクトリ(居る場所)が違う可能性がありますので、cd /home/mcpeと打ち、ディレクトリを移動してから再度tar zxvf PHP_7.0.6_x86-64_Linux.tar.gzと打ってください。
できません…
tar.gz形式で解凍できるソフトで解凍してそれを入れてもできますかね…
私も同じようなことをしたのですが、windowsで解凍してからサーバーの方に渡すとエラーになります。
もし、現在rootユーザでログインしどこのディレクトリにいるかわからない場合su – mcpeと入力後、tar zxvf PHP_7.0.6_x86-64_Linux.tar.gzと打ってみてください。
なんかjpnと打つと凄く文字化けします
PocketMineが起動しません…
puttyの文字コードを変更してみてください。
http://techmemo.biz/sw/putty%E3%81%AE%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92utf-8%E3%81%AB%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
すいません原因わかりました
PHP_7.0.6_x86-64_Linux.tar.gz
を
PHP_7.0.3_x86-64_Linux.tar.gz
をdlしちゃってました…
すいません!
いえいえ、解決してなによりです^ – ^
なにからなにまですいません…
下のぶんがコンソールに出て最後にはインターフェイスが停止しました とでます
[RakLibServer thread/1]: **** FAILED TO BIND TO 0.0.0.0:19132!
2016-09-28 [12:50:55] [RakLibServer thread/1]: Perhaps a server is already running on that port?
2016-09-28 [12:50:55] [Server thread/EMERGENCY]: RakLib crashed!
そしてサーバーには入れたのですがコンソールに
○○が参加しましたと出ません
どうすればいいでしょうか…
そのポートが既に使用されている?のでそのようなエラーが出るみたいです。もしかしたらポートを番号を変えれば正常に起動するかもしれません。
http://forum.minecraftuser.jp/viewtopic.php?f=7&t=1416
こちらも、そのようなエラーはみたことがないので詳しくわかりません。申し訳ありません。
パソコンが無くても端末だけでそういう設定はできますか?
返信が遅くなり申し訳ありません。
出来なくはありませんがとても面倒です。
デーモン化したら入れなくなりました…
なぜ入れないのかわかりませんが、もう一度ためしてみてください
foreverがDLできません
forever使うとコンソールに入れないので
screenを使うべきかと思います。
screenの使い方を説明して頂けますでしょうか…?
できればPMMPサーバーに合った使い方でお願いしますm(__)m
すいません。./start.shを入力したところエラーになりセットアップが起動しません。ファイルのダウンロードは、すべてできているはずです。
返信お待ちしております。
どのようなエラーでしょうか?
./start.shを実行したところ、
error while loading shared libraries: libmvec.so.1: cannot open shared object file: No such file or directory
と表示され、実行できずにいます。
パーミッションも画像のように変更しましたし、原因が分からずにいます。
助言を頂ければ幸いです。
この記事に書かれている手順通りにやったら無事ワールドを開くことができました。
しかし、pluginのフォルダにDevToolsやその他のプラグインを入れてもまったく反映されません。サーバーの再起などもしましたがまったく。
エラーなども一切出ていなくて、原因が全くわかりません。