ゲストOSで稼働していたLinux MintとHyper-Vの相性が悪いのか、ホストマシンを再起動するとゲストが起動しなくなる現象が多発しており、その復旧が結構いつもハラハラするので、Windowsで稼働させることにしました。
利用したマシンはいつものN100中華ミニPC。

このマシンはもうすでに普通に使ってみたり、TrueNASをゲストで動かしたり、LinuxMintをインストールされたり、それをゲストで動かしたりと、さんざんおもちゃにされて運用方法が定まっておりません。そしてまた今回もその犠牲となってもらいます。

Linux Mint上にあるMinecraftのデータを取り出す
今回のLinux MintはHyper-V上で稼働しているため、Hyper-Vのゲスト側にストレージなどを認識させてやるのが一番手っ取り早いと思います。外付けSSDかなんかをホストマシンに接続して、「ディスクの管理」からオフラインにすると、ゲストにアタッチさせることができます。
必要なフォルダは前回作った「/opt/minecraft」フォルダのみです。

WindowsにMinecraftのデータをコピーする
Windowsマシンの適当なところにLinux Mintから取り出したMinecraftフォルダーを配置します。私の環境ではDドライブがあったので、その直下としました。

続いて、コピーしたMinecraftフォルダを開き、起動バッチを作成していきます。
何もないところで右クリックして、「新規作成」→「テキストドキュメント」をクリック。

名前を「start.bat」などわかるものにします。

以下のようにテキストになってしまいますので、拡張子を変更します。

上の方にあるメニューの「表示」→「表示」→「ファイル名拡張子」をクリックします。

拡張子(.txtのような末尾の文字列)が表示されました。

さらに右クリック、「名前の変更」で.txt拡張子を削除します。

以下のような警告文が表示されますので「はい」をクリックします。

変更が終わると、アイコンが変わります。さらに、中身を作成していきます。右クリック→「メモ帳で編集」をクリックします。

下記コマンドを基本として、コマンドに記載されているファイル名を実物のファイル名に合わせます。
@ECHO OFF
java -Xms1024M -Xmx2048M -jar server.jar --nogui
pause

私の環境ではファイル名が「server.1.21.5.jar」となっていますので、変更しました。

以下が変更後になります。

完了したら上書きして閉じます。
Javaをインストールする
Linux Mintの時のMinecraftサーバーの踏襲でJDK21をインストールしていきます。公式のWikiによれば、Minecraftのバージョン1.20.5と1.21 には Java21とありますので、実際に遊んでいるマインクラフトのバージョンに合わせて変えてください。下記URLからダウンロードします。
https://www.oracle.com/jp/java/technologies/downloads/#jdk21-windows

本当はJREでもいいのですが、JDKはJREを包含しているので、大は小を兼ねる。JDK21にしました。
「JDK21」→「Windows」→「x64 Installer」の右側にあるURLからダウンロードします。


ダウンロードしたらそれを開きます。


インストールは特に工夫するところはありません。指示に従います。






起動する
Minecraftフォルダ内に作った「start.bat」をダブルクリックして起動します。
初回はファイアウォールの開放について聞いてきますので許可をします。



Linuxも大好きなOSですが、Windowsはこのあたりのおぜん立て機能は本当にありがたい。


「Done」と表示され無事に起動しました。


あとは、IPアドレスをチェックして接続テストするのみです。
総括:安定稼働のための模索は続く
おそらくこの状態でも次なる問題や課題などが出てくるかもしれません。しかし今となっては家族で作ったMinecraftサーバーは生活必需品になりました。データが壊れたり、サーバーが起動しなくなったときはきっと子供たちも悲しみます。これをどうにか、バックアップの充実、冗長化などを含めて、今後も検討していこうと思います。
次なる候補は、Linux MintをホストOSとして回帰させる方法で考えています。
コメント