息子はマイクラにまぁまぁハマっておりまして、普段はiPadを使って遊んでいます。
私はマイクラのことは、ほとんどわかりません。
ただ、最近、将来の夢を聞いたところ「建築士になりたい!」と言っており、マイクラのワールド内で建物を建てるなど、建築士っぽいことをしているので、無駄にはなってないような気もしています。
そして、最近ではマイクラのMODという拡張機能のようなものを使いたいと言いだし、それはiPadでは使えなくパソコンだけで使えるとのこと。
ふ~ん、よくわからないがまぁやってみたいならどうぞと、環境を整えることにしました。
まず、MODが使えるサーバーが欲しいらしく、まだ触ったことのない「Raspberry Pi 4(ラズパイ4)」を使ってみることに。
ネット情報を見るとRaspberry Pi 3だとスペック不足らしいとのことで、最高スペックのRaspberry Pi 4 8GBを買ってみました。
よく調べもせず買ったので、まずUSBのコネクタがUSB-Type Cになっており、今までのACアダプタが使えず、さらに8GBモデルを買ったにもかかわらず、Raspberry Pi OSにはまだ正式な64bit版はリリースされていなかったので、Ubuntu 20.04 の64bitをインストールしました。
その時のメモです。
参考にしたサイト。
https://linuxconfig.org/ubuntu-20-04-minecraft-server-setup
目次
Ubuntuのインストール
Raspberry Pi Imagerというソフトをダウンロードしてインストールする。
OS:にUbuntu 20.04 LTS 64-bit server OSを選択。
書き込むSDカードを選択。
「WRITE」で書き込む。
かなり簡単にシステム用SDカードが出来上がり。
SDカードをRaspberry Piに装着して起動。
Ubuntuの設定
初期ユーザーとパスワードでログイン
User:ubuntu Password:ubuntu
システムアップデート
sudo apt update
sudo apt upgrade
キーボードの設定
sudo dpkg-reconfigure keyboard-configuration
Generic 105-key PC(intl.)のJapaneseを選択。
Wifiを有効化
sudo nano /etc/netplan/50-cloud-init.yaml
設定内容はこちら。
network:
ethernets:
eth0:
dhcp4: true
optional: true
wifis: <-- ここから追加
wlan0:
dhcp4: false
optional: true
addresses: [固定IP/24]
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4]
access-points:
"ABCDEFGHIJK": <-- WifiのSSID
password: "???????" <-- Wifiのパスワード
SSHの設定
sudo nano /etc/ssh/sshd_config
ポート変更をするときは上記ファイルにポート番号を追記する。
port 10022
ユーザーの追加とロック
sudo adduser USERNAME
sudo adduser USERNAME sudo
sudo passwd -d ubuntu
sudo passwd -l ubuntu
sudo passwd -l root
USERNAMEは今後利用するユーザー名。
Minecraft(マインクラフト)のインストールと設定
使うMODによってJavaのバージョンを選択する必要がある。今回はopenjdk-8-jre-headlessを利用。
sudo apt install openjdk-8-jre-headless
sudo apt install wget screen nmap
マインクラフトをインストール。
sudo useradd -m -r -d /opt/minecraft minecraft
sudo mkdir /opt/minecraft/survival
sudo wget -O /opt/minecraft/survival/minecraft_server.jar https://launcher.mojang.com/v1/objects/f02f4473dbf152c23d7d484952121db0b36698cb/server.jar
MODを動作させるためにforgeをインストール。使うMODによって対応してるforgeのバージョンが異なる。
今回は、1.12.2を利用。クライアントPCにも同じバージョンをインストールする必要がある。
sudo wget https://files.minecraftforge.net/maven/net/minecraftforge/forge/1.12.2-14.23.5.2854/forge-1.12.2-14.23.5.2854-installer.jar
sudo java -jar forge-1.12.2-14.23.5.2854-installer.jar nogui --installServer
sudo bash -c "echo eula = true> /opt/minecraft/survival/eula.txt"
sudo chown -R minecraft /opt/minecraft/survival/
sudo cp /opt/minecraft/survival/forge-1.12.2-14.23.5.2854.jar /opt/minecraft/survival/minecraft_server.jar
sudo nano /etc/systemd/system/minecraft@.service
ファイルに設定する内容はこちら。
[Unit]
Description=Minecraft Server: %i
After=network.target
[Service]
WorkingDirectory=/opt/minecraft/%i
User=minecraft
Group=minecraft
Restart=always
ExecStart=/usr/bin/screen -DmS mc-%i /usr/bin/java -Xmx6G -jar minecraft_server.jar nogui
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "say SERVER SHUTTING DOWN IN 5 SECONDS. SAVING ALL MAPS..."5'
ExecStop=/bin/sleep 5
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "save-all"5'
ExecStop=/usr/bin/screen -p 0 -S mc-%i -X eval 'stuff "stop"5'
[Install]
WantedBy=multi-user.target
-Xmx6G の6Gの部分は、マイクラサーバーに割り当てるメモリサイズ。
ポートを開ける。
sudo ufw allow 25565
マイクラサーバーを起動して、起動状態を確認。
sudo systemctl start minecraft@survival
sudo systemctl status minecraft@survival
Raspberry Pi起動時にマイクラサーバーも起動するように設定。
sudo systemctl enable minecraft@survival
まとめ
インストールするバージョン違い等ですぐには動作しなかったですが、なんとか動かすことができました。
サーバーを立てれば誰でも入って遊べるのかと思っていたのですが、どうやら3,000円でソフトを購入してアカウントを作成しないと自分で立てたサーバーにもログインできないらしく、これならただクライアントPC内で完結させればよかったです。
今後、娘がやりたいと言いだしたら、もう1つアカウトを作ってサーバーで遊んでもらってもいいかなと思っています。
Raspberry Pi 4は、やはり3よりも発熱が多いようです。ちょっと、IoTには使いづらくなってしまいました。