今回はラズベリーパイでマイクラのサーバーを作るのだ!
ラズベリーパイって何?
なんでラズベリーパイで作るの?
普通のサーバーより場所を取らず電気代も節約できるんだね!
目次
ラズベリーパイとは?
RaspberryPIは名刺サイズの大きさにもかかわらず、有線LANやHDMI・USBまで搭載している超小型のパソコンです。
プログラミングの学習などの教育現場でも使用されることもあり、省電力という特徴からサーバーとしても使用されることがあります。
メリット | デメリット |
---|
省電力で電気代はわずか月100円以下 スペースを取らないため邪魔になりにくい 自分の好きなOSを入れることができる PCの割には低価格 SDカードで簡単に管理できる | スペックが足りない場面がある おもちゃとして買うには高すぎる 熱くなるため対策が必要 |
RaspberryPIはメモリ8GB搭載の『RaspberryPI 4 model B』を選ぶことを推奨します。
リンク
RaspberryPIを動かす上で必要なもの
- 【電源】USB-Cケーブル
- 【ストレージ】マイクロSDカード
- 【映像出力】マイクロHDMIからHDMIに変換するケーブル
- 【ネットワーク】有線LANケーブル
- 【OSの書き込み】SDカードリーダー & WindowsPC
1.【電源】USB-Cケーブル
通電すれば何でも良いってわけではありません。
RaspbeyPI用に設計されたものを使うのが一番好ましいです。
リンク
2.【ストレージ】マイクロSDカード
SDカードはある程度信用できるメーカーから購入することをおすすめします。
容量は32GBあれば問題なく動かすことができます。
32GBのSDカードであれば、ダイソーでも購入することができます。
しかし、数百円高くてもある程度信用できるメーカーから購入した方が安心できると思います。
リンク
3.【映像出力】マイクロHDMI⇨HDMI変換ケーブル
RaspberryPIには普通の大きさのHDMI端子ではなく、マイクロHDMI端子がつけられています。
このままでは映像を出力できないため、新しくケーブルを購入する必要があります。
リンク
4.【ネットワーク】有線LANケーブル
有線LANケーブルにこだわりがない方は、百均で購入しても大丈夫でしょう。
ある程度の信頼性や長さが欲しい方はAmazonなどで購入してください。
リンク
5.【OSの書き込み】SDカードリーダー & WindowsPC
SDカードにOSを書き込む必要があるのでSDカードリーダーが必要になってきます。
特にRaspberryPIを持っている方は必需品です!
自分に合う手ごろなものを1つ用意しておきましょう。
リンク
準備ができたら早速サーバーを作っていきましょう!
Ubuntu-Serverのインストール
まずはRaspberryPIにUbuntu-Serverをインストールします。
このOSは余計なCPU使用量を抑えるように作られているため、サーバーを構築するためにRaspberryPIを使う方におすすめです。
欠点は全てコマンドで操作する必要があるところで、慣れていない方は慣れていく必要があります。
ダウンロード
こちらの公式サイトからUbuntuServerをダウンロードしてください。
Download Ubuntu Serverのブロックまでスクロールして、左の安定版をダウンロードします。
Rufusのダウンロード
SDカードに書き込むソフトをダウンロードします。
ダウンロードのブロックまでスクロールし、一番上の標準タイプをダウンロードしましょう。
ダウンロードが完了後起動してください。
今回使用するSDカードをPCに読み込ませてください。
SDカードに書き込み
Rufusを起動するとこのような画面になります。
デバイスからSDカードを選び、選択ボタンから先ほどダウンロードしたUbuntuServerを選択してください。
スタートを押すと書き込みが始まります。
書き込みが完了すると下のステータスが『準備完了』になります。
書き込みは3分ほどで完了しました。
UbuntuServerの起動
いよいよラズベリーパイを起動していきます!
キーボードやSDカードなどをラズベリーパイに取り付けた後に電源を入れてください。
電源を入れると、このような順番で画面が切り替わっていきます。
しばらくすると『ubuntu login』という画面が出現します。
ユーザー名やパスワードは初期設定でubuntuなので、まずはログインしてみましょう!
ユーザー名 : ubuntu
パスワード : ubuntu
パスワードは入力しても何も画面に出てこないようになっています。慌てずに自分を信じてパスワードを入力しましょう。
パスワードの変更
パスワードを入力すると、もう一度パスワードの入力を求められ、新しパスワードを入力するよう求められます。
パスワードの設定が終わるとこのような画面に切り替わります。
これで初期設定が完了しました。
IPの確認
次に、ラズベリーパイを遠隔で操作したほうが楽なので、ラズベリーパイのIPアドレスを調べていきます。
まずは以下のコマンドをそのまま入力し、実行してください。
sudo apt install net-tools
このツールをインストールするとIPアドレスを確認することができます。
この表示になったらインストール完了です。
次にこのコマンドを実行してIPアドレスを確認していきます。
ifconfig
実行するとこのような画面になります。
白の四角で囲ってある場所の数字がIPアドレスです。
192.168~~~~~で始まるものが必要で、127.0.0.1は必要ないのでご注意ください。
ここからはwindowsPCでの作業に戻ります。
SSHでの遠隔操作
Windowsキーを押して『cmd』と入力します。
検索結果に『コマンドプロンプト』というものが表示されるのでこれを開いてください。
開くとこのような画面が表示されるので、以下のように入力してください。
ssh ubuntu@IPアドレス
このコマンドを打ってエンターを押すとパスワードが求められるので、先ほど設定したパスワードを入力してください。
ログインが完了すると先ほど見たような画面が表示されます。
管理者の状態で操作したほうがやりやすいので、管理者に切り替えていきます。
以下のコマンドを実行してください。
sudo su
入力欄の表示が$から#に変わればOKです!
サーバーの設定
アップデート
次にこのOSの中身をアップデートして、最新の状態にします。
以下のコマンドを必ず順番通りに実行してください。
apt update
apt upgrade
本当に続けるかを聞かれるので、y
と入力してエンターを押してください。
途中で紫の画面などが出てきた場合は迷わずそのままエンターを押せばOKです!
日本語化
次にこのままだと英語で見づらい部分もあるので、日本語化をしていきます。
下記のコマンドを順番通りに実行してください。
sudo apt install language-pack-ja
sudo update-locale LANG=ja_JP.UTF8
reboot
再起動コマンド実行後、1分後くらいに再度ssh接続をするとつながります。
再起動完了後、適当にコマンドを打ってみると、無事に日本語化に成功しているのがわかります。
Javaのインストール
プラグインサーバーを起動するためにJava17をインストールします。
下記のコマンドを実行してください。
sudo apt install openjdk-17-jre
続行しますか?と聞かれるのでy
と入力してエンターを押します。
3分ほど待つとインストールが完了します。
WinSCPのインストール
次はサーバーのファイルを簡単に管理するためにWinSCPと呼ばれるソフトをダウンロードします。
こちらのファイルがダウンロードされるので開いてインストールしてください。
インストールモードは好きな方を選んでください。
同意画面が出てくるのでそのまま許諾してください。
あとは次へをインストールが終わるまで押し続けてください。
インストールが完了したら閉じても大丈夫です。
WinSCPからサーバーに接続
WinSCPを起動するとこのようなウィンドウが開かれます。
- ホスト名にサーバーのIPアドレス
- ユーザー名はubuntu
- パスワードは設定したパスワード
を入力してログインを押すと接続されます。
キャッシュに追加しますか?と聞かれるので「はい」を押してください。
ログインが完了するとこのような画面になります。
左が接続元のPCのファイル一覧で、右がサーバーのファイル一覧です。
新しいディレクトリの作成
まずはサーバー側で新しいディレクトリを作成してください。
フォルダ名はminecraft
としました。
OKを押して作成します。
サーバーに新しいフォルダが作成されました。このフォルダーを開いておいてください。
PaperMCのダウンロード&アップロード
Paperをダウンロードしてサーバーにアップロードします。
こちらの公式サイトからダウンロードしてください。
青いボタンを押すと最新版のダウンロードが始まります。
ほかのバージョンをダウンロードしたい方はこちらのページからダウンロードできます。
ダウンロードが完了したらアップロードします。
先ほど作成したフォルダにアップロードしてください。
起動用ファイルの作成
最後にサーバーを起動するためのファイルを作成していきます。
paperと同じフォルダ内に新しくファイルを作成します。
ファイル名はstart.sh
としておきます。
真っ白な状態のファイルが開かれるので、以下のように記入してください。
【サーバーファイル名】はダウンロードしたサーバーファイルの名前と一致させてください
java -Xmx4G -Xms4G -jar 【サーバーファイル名】.jar
今回は余裕があるように4GBのメモリを使うよう指示しました
入力したら保存して閉じてください。
次にこのファイルを実行できるよう権限を付与します。
start.shを右クリックして「プロパティ」を選択してください。
パーミッションの所有者のXにチェックを入れてください。
OKを押して画面を閉じます。
これで起動の準備ができました!
起動
遠隔操作の画面に戻り、以下のコマンドを順番通りに実行してください。
exit
管理者状態から普通のユーザーに切り替え
cd minecraft
minecraftフォルダを開く
./start.sh
サーバー起動ファイルを実行
許可がありませんと出てくる場合は権限の付与ができているかもう一度確認して下さい。
実行するとダウンロードなどが始まり、しばらくするとeula.txtに同意してくださいと表示されます。
このファイルを開いて編集していきます。
eula=false
eula=true
に書き換え、保存してください。
もう一度./start.sh
を実行するとサーバーがスタートします。
Doneと表示されれば起動完了です!
試しにサーバーに参加してみましょう。
サーバーアドレスにアドレスを入力して「サーバーに接続」を押してください。
無事に参加することができました!
次回以降の起動時はcd minecraft
でフォルダを開き、./start.sh
でサーバーを起動します。
終了するときはCTRL+C
を同時押しすることで終了できます。
screenでの起動
screenと呼ばれるものを使って起動することによって、コマンドプロンプトを閉じてもマイクラのサーバーが稼働し続けるようになります。
./start.shの前にscreenを入れるだけなので難しい設定は必要ありません!
コマンド:screen ./start.sh
このような画面になり、CTRL+Aを押した後にDキーを押すと別の作業ができるようになります。
マイクラのサーバーコンソールをもう一度開きたい場合は、screen -r
というコマンドを実行してください。
ポート開放
ポート開放は外部からサーバーに参加してもらうために必要な手段となっています。
UbuntuServer側は既にポートが解放された状態になっていて、必要に応じて各自ルーターのポートを開放してください。
各家庭でルーターの種類が違うので、この記事では解説しません。各自で調べてください。
ポート開放がわからない方はこちらのプラグインを使ってサーバーを公開してみましょう!
プラグインを入れる場所
プラグインはサーバーフォルダ内のpluginsフォルダを開き、この中に入れてください。
『プラグインを入れるたびにこのソフトを開くのが面倒だ』と感じる方はこちらのプラグインの導入をおすすめします。
コメント
コメント一覧 (5件)
コメント失礼します。
Ubuntu serverの最新版のLST版をRaspberryPi4B8GBに導入して使用しています。
そこでSSH接続ができなくて困っています。
Tera TermやPowerShell・コマンドプロンプト等試してもだめでした。
IPアドレスは合っていて、通信は到達しているようですがログインしようとするとできません。
サーバー側のコマンドラインで自分自身に対してsshすると接続できました。(SSHサーバーは動いています)
もし解決策等あれば教えていただきたいです。
解決しなければRaspberryPiOSliteの64bit版を使用しようと思っているのですが、本記事で紹介されていたpaperMCやWinSCPなどのソフトは使用可能ですか?
コメントありがとうございます!
SSHで接続できないということですが、何かエラーメッセージが表示されていれば内容をお聞きしたいです。(タイムアウトや接続拒否などが挙げられます)
JavaやSSHが動けばどのOSでもサーバーを作ることができますが、こちらでテストしていないので調べていただく必要があります。
とにかくエラー次第で解決できると思うのでお返事お待ちしております!
返信ありがとうございます。
今日家帰ったら、エラーメッセージ送ってみます。
SSHのプライベートキー等の設定はしていないのですが、それが問題の可能性もありますかね
SSHは何の設定もしなくてもユーザー名とパスワードが合っていればログインできます。
昨日伝え忘れたのですが、rootユーザーを使う場合はちょっとした設定が必要が必要です。
もしrootを使っていたのであれば、ログインする前にこちらをお試しください。
その際デフォルトのユーザーを使い「sudo su」でroot権限を取得してから設定する必要があります。
デフォルトユーザー名:ubuntu
パスワード:ubuntu
https://atmarkit.itmedia.co.jp/flinux/rensai/linuxtips/422sshokroot.html
返信ありがとうございます。
raspberryPIimagerを使って書き込みを行ったのが原因のようでした。
公式サイトからダウンロードして書き込んだらでできました。
大変ご迷惑をおかけました。
もう一つ相談なのですが、別記事のplayit.ggの使い方なのですが
raspberryPI+ubuntuserverを使うとどうもうまくいきません
原因もわかりません。(通信が到達していないようです)
MaincraftJavaでエージェントを作成するところまではできました。
サイト上ではオンラインになっているので、raspberryPI→play.ggサーバーは通信できているようです。
Linuxのところを見てやって見たのですが…やり方を説明していただけると幸いです