9月22日まで!XServer GAMEsにキャンペーンあり

【初心者向け】マイクラサーバーを再起動する方法!手動・自動の両方を解説

当ページのリンクには広告が含まれています。
  • マイクラサーバーを、どうやって再起動すればいいかわからない…
  • 手動で毎回再起動するのが面倒で、自動化したい…
  • 再起動の方法を間違えて、データが消えてしまわないか心配…

以上の悩みを解決します!

マイクラサーバーの再起動は、正しい手順で行えばデータ損失のリスクを回避できます。

そして、自動化すれば管理の手間も大幅に削減できるんです。

この記事では、手動での安全な再起動方法から、systemdやcronを使った自動化まで徹底解説。

記事を読めば、マイクラサーバーの再起動を安全かつ効率的に行えるようになりますよ。

目次

なぜマイクラサーバーに再起動が必要なのか

マイクラサーバーを長時間動かし続けていると、避けて通れないのが「再起動」です。

でも、なぜ再起動が必要なのでしょうか、理由は以下の通りです。

プラグインやMODの設定変更を反映させるため

新しいプラグインを追加したり、既存の設定ファイルを変更した場合、基本的には再起動が必要になります。

特に以下のような変更を行った時は、再起動なしでは反映されません。

  • サーバー設定(server.properties)の変更
  • 新しいプラグインのインストール
  • ワールド生成設定の変更

サーバーの安定性を保つため

長時間稼働し続けるとサーバーが不安定になることがあります。

定期的な再起動は、サーバーを「リフレッシュ」して安定性を高める方法として効果的です。

多くのマイクラサーバーが、1日1回や週1回の定期再起動をスケジュールしているのはこのためですね。

アップデートを適用するため

サーバーソフトウェア(Spigot、Paper、Forgeなど)のアップデートを適用する際も再起動が必要です。

セキュリティホールの修正や新機能の追加を反映させるために、アップデート後の再起動は欠かせません。

これらの理由から、マイクラサーバーの再起動は「必要な作業」というより「サーバー運用の基本」と考えておいた方がいいでしょう。

手動でマイクラサーバーを再起動する基本の方法

まずは、マイクラサーバーを手動で再起動する基本的な方法を2つ紹介します。

  • stopコマンドでサーバーを安全に停止させる
  • Spigot/Paperのrestartコマンドで自動再起動する

stopコマンドでサーバーを安全に停止させる

もっともシンプルで確実なのが、/stopコマンドを使う方法です。

ゲーム内のチャット欄、またはサーバーのコンソール画面で以下のコマンドを実行してください。

/stop

このコマンドを実行すると、サーバーは安全にシャットダウンします。

ワールドデータの保存処理も自動的に行われるので、データが消える心配はありません。安心してくださいね。

停止が完了したら、シェル(コマンドプロンプト)で以下のようなJavaコマンドを再実行すればサーバーが起動します。

java -Xms4G -Xmx4G -jar server.jar nogui

メモリ容量(-Xms、-Xmx)は、お使いのサーバー環境に合わせて調整してください。

Spigot/Paperのrestartコマンドで自動再起動する

SpigotやPaperMCを使っている方には、もっと便利な方法があります。

これらのサーバーソフトには、/restartコマンドが標準で用意されているんです。

まず、サーバーフォルダに「start.sh」または「start.bat」というファイルを作成してください。

「start.bat」がWindows用で「start.sh」がLinux用なので、間違えないよう注意が必要。

これらは、マイクラサーバーを起動するためのスクリプト(命令が書かれたメモ帳)です。

start.sh の例はこんな感じですね。

#!/bin/bash
java -Xms4G -Xmx4G -jar server.jar nogui

Linuxでは、ファイルに「実行権限」を与えないと動いてくれません。

実行権限も忘れずに付けておきましょう。

chmod +x start.sh

次に、spigot.ymlファイルの設定を確認してください。

settings:
  restart-script: ./start.sh

これで準備完了です!

ゲーム内またはコンソールで/restartコマンドを実行すると、サーバーは自動的に停止して再起動します。

/restart

プレイヤーには「Server is restarting」というメッセージが表示され、一時的にキックされますが、すぐに再接続できるようになりますよ。

Linuxでsystemdサービスとして管理する方法

Linuxサーバーを使っている方には、systemdを使ったサービス化がめちゃくちゃおすすめです。

この方法なら、ワンクリックで再起動できるだけでなく、サーバーがクラッシュした時の自動復旧も可能になります。

minecraft.serviceファイルを作成してサービス化する

まず、systemd用のサービスファイルを作成します。

/etc/systemd/system/minecraft.serviceに、以下の内容をコピペしましょう。

[Unit]
Description=Minecraft Server
After=network.target

[Service]
User=minecraft
WorkingDirectory={WorkingDirectory}
ExecStart=/usr/bin/java -Xms4G -Xmx4G -jar server.jar nogui
Restart=always
RestartSec=30
RuntimeMaxSec=6h

[Install]
WantedBy=multi-user.target

コピペする際に、変更点がいくつかあります。

WorkingDirectoryに関しては、マイクラサーバーの「.jar」ファイルがある場所に置き換えてください。

ExecStartに関しても、メモリ量などを適切に設定してくださいね。

そして、以下のコマンドでユーザーを事前作成しておきましょう。

# ユーザーの作成(WorkingDirectoryは置き換えてください)
sudo useradd -r -m -U -d {WorkingDirectory} -s /bin/bash minecraft

# マイクラサーバーに権限を与える
sudo chown -R minecraft:minecraft {WorkingDirectory}

ちなみに、他の設定はこんな感じです。参考にしてみてください。

項目設定値説明
User専用ユーザーマイクラサーバー専用のユーザーで実行(セキュリティ向上)
Restartalwaysクラッシュ時も自動再起動
RestartSec30再起動まで30秒待機
RuntimeMaxSec6h6時間ごとに強制リスタート

systemctlコマンドでワンクリック再起動を実現する

サービスファイルを作成したら、systemdに登録しましょう。

sudo systemctl daemon-reload
sudo systemctl enable minecraft

これで以下のコマンドでサーバーを操作できるようになります。

操作コマンド
起動sudo systemctl start minecraft
停止sudo systemctl stop minecraft
再起動sudo systemctl restart minecraft
状態確認sudo systemctl status minecraft

特に、sudo systemctl restart minecraftは一行で安全な再起動ができるので便利ですよ。

サーバーの自動起動もsudo systemctl enable minecraftで設定済みなので、OSが再起動してもマイクラサーバーが自動的に立ち上がります。

screenとcronを組み合わせた定期再起動

VPSや自宅サーバーを使っている方で、定期的に自動再起動させたい場合には、screenとcronの組み合わせもおすすめです。

systemdほど高機能ではありませんが、設定が簡単で依存関係も少ないのが利点ですね。

毎日決まった時間に自動再起動させる設定方法

まず、再起動用のシェルスクリプトを作成します。

/usr/local/bin/mc-restart.shなどに、以下のスクリプトを置いてください。

#!/bin/bash
SCREEN_NAME=Minecraft

# プレイヤーに事前通知
screen -S "$SCREEN_NAME" -p 0 -X stuff "say サーバーを再起動します\015"
sleep 10

# サーバー停止
screen -S "$SCREEN_NAME" -p 0 -X stuff "stop\015"

# 少し待ってから再起動
sleep 30
cd /opt/minecraft
screen -dmS "$SCREEN_NAME" java -Xms4G -Xmx4G -jar server.jar nogui

実行権限を付けるのを忘れずに。

chmod +x /usr/local/bin/mc-restart.sh

次に、cronで定期実行を設定します。

まずは、cronの設定ファイルを開きましょう。

自分のスケジュール帳を開く感じですね。

crontab -e

例えば、毎日午前4時55分に再起動する場合にはこうします。

55 4 * * * /usr/local/bin/mc-restart.sh

これで毎日自動的に再起動されるようになります。

事前に警告メッセージでプレイヤーに通知する

上のスクリプトでは、再起動10秒前に警告メッセージを送っていますが、もっと丁寧に通知したい場合は以下のような感じにできます。

#!/bin/bash
SCREEN_NAME=Minecraft

# 15分前通知
screen -S "$SCREEN_NAME" -p 0 -X stuff "say 15分後にサーバーを再起動します\015"
sleep 900  # 15分待機

# 5分前通知
screen -S "$SCREEN_NAME" -p 0 -X stuff "say 5分後にサーバーを再起動します\015"
sleep 300  # 5分待機

# 1分前通知
screen -S "$SCREEN_NAME" -p 0 -X stuff "say 1分後にサーバーを再起動します\015"
sleep 60   # 1分待機

# 再起動実行
screen -S "$SCREEN_NAME" -p 0 -X stuff "stop\015"

プレイヤーの皆さんにやさしい設定ですね。

【まとめ】マイクラサーバーの安全で効率的な再起動方法

この記事では、マイクラサーバーの再起動方法について、手動から自動化まで詳しく解説しました。

記事の要点をまとめます。

  • マイクラサーバーに再起動は安定のため必要だった
  • stopコマンドでの手動再起動は最も安全で確実な方法だった
  • Spigot/Paperのrestartコマンドを使えば簡単に自動再起動できた
  • systemdでサービス化すれば運用が格段に楽になった
  • screenとcronの組み合わせでも定期再起動を実現できた

サーバーの規模や用途に合わせて、最適な再起動方法を選んでくださいね。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次