- マイクラサーバーを、どうやって再起動すればいいかわからない…
- 手動で毎回再起動するのが面倒で、自動化したい…
- 再起動の方法を間違えて、データが消えてしまわないか心配…
以上の悩みを解決します!
マイクラサーバーの再起動は、正しい手順で行えばデータ損失のリスクを回避できます。
そして、自動化すれば管理の手間も大幅に削減できるんです。
この記事では、手動での安全な再起動方法から、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 | 専用ユーザー | マイクラサーバー専用のユーザーで実行(セキュリティ向上) |
Restart | always | クラッシュ時も自動再起動 |
RestartSec | 30 | 再起動まで30秒待機 |
RuntimeMaxSec | 6h | 6時間ごとに強制リスタート |
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の組み合わせでも定期再起動を実現できた
サーバーの規模や用途に合わせて、最適な再起動方法を選んでくださいね。