鯖ドリル

※本記事にはアフィリエイト広告(PR)が含まれています

Palworld

Palworldのセーブデータをバックアップ・復元する|WinSCPで手元PCに残す

Palworld専用サーバーのセーブデータを安全にバックアップし、復元する手順。WinSCPで手元のPCへ落とす方法、Pal/Saved全体を1世代として扱う理由、backup/worldフォルダの誤解、「地図だけ巻き戻ったように見える」現象、別サーバーへワールドを移す場合の注意までまとめます。

#Palworld#バックアップ#復元#WinSCP#ゲームサーバー
目次

Palworld専用サーバーのセーブデータを、壊さずにバックアップして戻す手順です。

結論を先に言うと——

  • 戻す単位は Level.sav 単体ではなく、Pal/Saved 全体を1世代として扱う
  • サーバーを止めてから作業する。動作中の上書きは禁止
  • サーバーの中に置いたバックアップは保険になりません。WinSCPで手元のPCへ落とします

まず知っておくこと

サーバーが動いている最中に、セーブデータを上書きしてはいけません。 ゲーム内で /Save を実行し、サーバーを停止してから作業します。

ワールドは Pal/Saved/SaveGames/ 以下の、ワールドIDごとのフォルダにあります。Level.savLevelMeta.savPlayers/LocalData.sav などは同じ時点の組として扱ってください。

Players だけ、あるいは Level.sav だけを別の時点のデータと混ぜると、キャラクターやワールドの不整合につながります。

バックアップを作る

tar のパスを毎回入力しないよう、補助コマンドを一度だけ作ります。

mkdir -p ~/palworld/bin ~/palworld/backups

tee ~/palworld/bin/palworld-save > /dev/null <<'EOF'
#!/usr/bin/env bash
set -euo pipefail

SERVER_DIR="$HOME/palworld/server"
BACKUP_DIR="$HOME/palworld/backups"
STAMP="$(date +%F-%H%M%S)"

case "${1:-}" in
  backup)
    if systemctl is-active --quiet palworld; then
      echo "Palworldを停止してから実行してください"; exit 1
    fi
    tar -C "$SERVER_DIR" -czf "$BACKUP_DIR/palworld-full-$STAMP.tar.gz" Pal/Saved
    echo "作成完了: $BACKUP_DIR/palworld-full-$STAMP.tar.gz"
    ;;
  list)
    find "$BACKUP_DIR" -maxdepth 1 -type f -name 'palworld-full-*.tar.gz' \
      -printf '%f\\n' | sort -r
    ;;
  restore)
    ARCHIVE="${2:-}"
    [ -n "$ARCHIVE" ] || { echo "使い方: palworld-save restore <一覧に出たファイル名>"; exit 2; }
    case "$ARCHIVE" in *"/"*|*".."*) echo "一覧に出たファイル名だけを指定してください"; exit 2;; esac
    [ -f "$BACKUP_DIR/$ARCHIVE" ] || { echo "見つかりません: $BACKUP_DIR/$ARCHIVE"; exit 2; }
    if systemctl is-active --quiet palworld; then
      echo "Palworldを停止してから実行してください"; exit 1
    fi
    mv "$SERVER_DIR/Pal/Saved" "$SERVER_DIR/Pal/Saved.before-restore-$STAMP"
    tar -xzf "$BACKUP_DIR/$ARCHIVE" -C "$SERVER_DIR"
    echo "復元完了。退避先: $SERVER_DIR/Pal/Saved.before-restore-$STAMP"
    ;;
  *)
    echo "使い方: palworld-save {backup|list|restore <ファイル名>}"
    exit 2
    ;;
esac
EOF
chmod 700 ~/palworld/bin/palworld-save

以後、バックアップは次の3行だけです。

# ゲーム内で /Save を実行してから
sudo systemctl stop palworld
~/palworld/bin/palworld-save backup
sudo systemctl start palworld

手元のPCへ落とす(WinSCP)

ここが一番大事です。サーバーの中に置いたままのバックアップは、保険になりません。

インスタンスを消してしまったとき、ディスクが壊れたとき、操作を誤ったとき——サーバーごと消えれば、その中のバックアップも一緒に消えます。別の場所に置いて初めてバックアップです。

コマンドに慣れていなくても、WinSCP(無料・Windows向け)を使えばドラッグ&ドロップで落とせます。

接続の設定と、鍵の .ppk 変換でつまずいたときの対処は、こちらにまとめました。

WinSCPでゲームサーバーのファイルを扱う|SFTP接続と鍵の設定

注意: 使い慣れたFFFTPでは繋がりません。SFTP(SSH経由の転送)に対応していないためです。

落とすファイル

接続したら、右側(サーバー側)で次のフォルダを開きます。

/home/ubuntu/palworld/backups/

palworld-full-2026-08-01-093500.tar.gz のようなファイルが並んでいます。必要な日時のものを、左側(手元のPC)へドラッグするだけです。

大事な節目(大型アップデートの前、拠点が完成したときなど)で落としておくと安心です。毎回でなくてかまいません。

復元する

まず候補を一覧し、戻したい日時のファイル名を一つだけ選びます。

# 例: palworld-full-2026-08-01-093500.tar.gz が表示される
~/palworld/bin/palworld-save list

# ゲーム内で /Save を実行後に停止。<...> は一覧からコピーして置き換える
sudo systemctl stop palworld
~/palworld/bin/palworld-save restore palworld-full-<復元したい日時>.tar.gz
sudo systemctl start palworld

現在の Pal/SavedPal/Saved.before-restore-日時 として残ります。失敗しても消えていません。

手元のPCに落としたバックアップから戻す場合は、WinSCPで ~/palworld/backups/ へアップロードしてから、上の restore を実行します。

注意: 復元直後に新しいキャラクターの作成を求められたら、すぐ遊ばずに停止してください。退避した Pal/Saved.before-restore-日時 を残したまま、原因を確認します。

別のサーバーへワールドを移す

移行元・移行先がどちらも専用サーバーなら、Pal/Saved フォルダ全体を持ち込むのが安全です。置き場所は次のとおりです。

~/palworld/server/Pal/Saved/

WinSCPでフォルダごと転送できます。作業前に、移行先の現行 Pal/Saved も日時付きで退避してください。

移行先で一度サーバーを起動すると、新しいワールドIDが作られることがあります。コピーしたワールドIDと Pal/Saved/Config/LinuxServer/GameUserSettings.iniDedicatedServerName が一致しないと、空のワールドや新キャラクター画面になります。

注意: シングルプレイや協力プレイのセーブを専用サーバーへ移す操作は別物です。ホストのプレイヤーデータ変換が必要になる場合があるため、この手順で上書きしないでください。

よくある誤解

backup/world は日常の復元用ではない

Pal/Saved/SaveGames/<ワールドID>/backup/world/2026... と日時フォルダが大量に並ぶのは、bIsUseBackupSaveData=True によるゲーム内の自動バックアップです。

これは主に Level.sav などワールド側の世代管理です。日常的に使う復元先ではありません。

普段は palworld-full-*.tar.gz を選び、Pal/Saved 全体を1世代として戻します。ゲーム内の自動バックアップは、外部バックアップを取る前に壊れた場合の保険と考えてください。

場所は次で確認できます。

find ~/palworld/server/Pal/Saved/SaveGames \
  -type d \( -iname backup -o -iname backups \) -print

「地図だけ巻き戻った」ように見える理由

地図の踏破状況やファストトラベルの解放は、Level.sav だけでなく、プレイヤーごとの保存データや LocalData.sav に分かれて保持されることがあります。

そのためワールド側とプレイヤー側を別の時点から戻すと、「拠点は新しいのに地図だけ古い」という状態になります。故障ではありません。

これを避けるために、Level.savPlayers を個別に戻さず、完全アーカイブで丸ごと同じ世代にそろえます。なお、クライアント側にだけ残る表示情報がある場合、サーバーの復元だけでは完全に一致しないこともあります。

まとめ

  • バックアップも復元も、必ずサーバーを停止してから行う
  • WinSCPで手元のPCへ落とす。サーバーの中だけでは保険にならない
  • ワールドとプレイヤーデータは同じ時点の組で戻す。混ぜると不整合が出る

日々の運用(パスワード設定・更新・負荷の確認)は → Palworld専用サーバーの運用