再起動後にゲームサーバーが動かない
手動起動と自動起動を分け、サービスの実行条件を確認します。
対象systemdで管理するLinuxサーバー。例ではサービス名をminecraft.serviceとしています。
最初に確認すること
まず、サービスが存在するか・有効化されているか・起動に失敗していないかを確認します。SSHの画面で手動起動できることと、OS起動時に動くことは別です。
存在・有効化・起動状態を確認する
サービス名は環境に合わせて読み替えてください。Unit not foundなら、その名前のサービスは登録されていません。新しい設定を作る前に、すでに使っている起動方法がないか確認します。
systemctl status minecraft.service --no-pager
systemctl is-enabled minecraft.service
journalctl -u minecraft.service -b -n 60 --no-pagerサービスから見た実行条件を照合する
手動では動くのにサービスでは失敗する場合は、実行ユーザー、作業ディレクトリ、Javaの実行パス、ファイルの所有者を確認します。シェルで設定した環境変数が、そのままサービスへ渡るとは限りません。
自動再起動を設定する場合も、エラーが高速に繰り返されないよう再試行間隔を考えます。起動に必要なメモリと、OSに残すメモリも確認してください。
正常に起動するサービスだけ有効化する
既存サービスの設定と停止方法を確認し、手動で正常に起動・停止できる状態にしてから有効化します。次のenableは、今すぐサーバーを起動する操作ではありません。
sudo systemctl enable minecraft.service
# 自動起動を元に戻す場合(現在のプロセスは停止しません)
sudo systemctl disable minecraft.service再起動後に外部から入れるかまで確認する
ワールドをバックアップし、停止時間を利用者と調整したうえでOSを再起動します。起動ログとゲーム内への接続を確認し、サービスがactiveになっただけで作業完了にしないようにします。
参照した公式資料
資料確認日:2026年9月12日。公式資料と一般的な確認手順をもとに作成しています。すべてのOS・ルーター・ゲームの組み合わせを実機検証したものではありません。