バックアップ・復元マップ
「復元して」と言われたら、確認なしで即実行できる状態を維持する。
全システムのバックアップ場所・最新確認方法・復元手順を一覧化。
30秒で全体像
| 観点 |
一言 |
| 核心 |
全システムのバックアップ場所・即復元手順を一元管理 |
| キーワード |
tar.gz / バックアップ / 復元 / ロールバック / 5分以内に戻す |
| 使う人 |
Claude(緊急対応時)/ 大串 |
| 読了目安 |
3分(緊急時は1分でOK) |
大串から「復元して」と言われた時の標準動作
確認なし・即実行。最新バックアップから戻す。
1. 該当システムのバックアップ場所を以下の表で確認
2. 最新のバックアップを ls -lt で確認
3. tar -xzf で展開 → rsync で本体へ上書き
4. npm run build → npx wrangler pages deploy
5. 本番URLで動作確認 → 大串に報告
→ 5分以内に復元完了が目標。
システム別 バックアップ場所マップ
SCALE CRM(営業代行・主軸)
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/株式会社SCALE/scale-lead/ |
| バックアップ |
~/Library/CloudStorage/.../AI/scale-lead-backups/(Drive上) |
| ローカルバックアップ |
~/scale-lead-backups/ |
| D1 Time-Travel |
24h 内任意時点に復元可(無料) |
| snapshots テーブル |
100世代保持(30分毎自動) |
| 本番URL |
https://crm.scale-group.co.jp/base/ |
# 最新バックアップ確認
ls -lt ~/scale-lead-backups/ | head -5
# 復元
tar -xzf ~/scale-lead-backups/scale-lead_YYYY-MM-DD_HHMM.tar.gz -C /tmp/restore_$(date +%s)/
rsync -av /tmp/restore_*/ /Users/oogushiyuuki/株式会社SCALE/scale-lead/
cd /Users/oogushiyuuki/株式会社SCALE/scale-lead && npx wrangler pages deploy . --project-name=scale-lead
SCALE Base(業務統合・社内OS)
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/scale-base/ |
| バックアップ |
~/scale-base-backups/ |
| 本番URL |
https://scale-base.pages.dev/home/ |
ls -lt ~/scale-base-backups/ | head -5
tar -xzf ~/scale-base-backups/scale-base_YYYY-MM-DD_HHMM.tar.gz -C /tmp/restore_$(date +%s)/
rsync -av /tmp/restore_*/ ~/scale-base/
cd ~/scale-base && npm run build && npx wrangler pages deploy out --project-name=scale-base
TERASU 公式HP
| 項目 |
値 |
| ローカル |
~/Library/CloudStorage/.../AI/scale-hp-showcase/ |
| バックアップ |
~/scale-hp-showcase-backups/ |
| 本番URL |
https://terasu.scale-group.co.jp/ |
ls -lt ~/scale-hp-showcase-backups/ | head -5
tar -xzf ~/scale-hp-showcase-backups/scale-hp-showcase_YYYY-MM-DD_HHMM.tar.gz -C /tmp/restore_$(date +%s)/
rsync -av /tmp/restore_*/ ~/Library/CloudStorage/.../AI/scale-hp-showcase/
cd 該当パス && npx wrangler pages deploy . --project-name=scale-hp-showcase --branch=main --commit-dirty=true
TERASU 案件管理
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/株式会社SCALE/hp/terasu/ |
| バックアップ |
~/terasu-backups/ |
| 本番URL |
https://terasu-mgmt.pages.dev/ |
TERASU Lens
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/terasu-lens/ |
| バックアップ |
(要新規作成)~/terasu-lens-backups/ |
| 本番URL |
https://terasu-lens.pages.dev/ |
SCALE Base Pilot
| 項目 |
値 |
| ローカル |
~/scale-base/(Base配下の /pilot セクション) |
| バックアップ |
~/scale-base-backups/(Baseと同一) |
| 本番URL |
https://scale-base.pages.dev/pilot/ |
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/株式会社SCALE/scale-x-tool/ |
| バックアップ |
~/scale-x-backups/ |
scale-lead-manual
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/株式会社SCALE/scale-lead-manual/ |
| バックアップ |
~/scale-lead-manual-backups/ |
hp(旧コーポレートHP)
| 項目 |
値 |
| ローカル |
/Users/oogushiyuuki/株式会社SCALE/hp/ |
| バックアップ |
/Users/oogushiyuuki/株式会社SCALE/hp-backups/ |
| 本番URL |
https://scale-group.co.jp/ |
| 注意 |
scale-hp-corporate Phase 3 完了まで触らない |
バックアップ未整備のシステム(要対応)
以下のシステムは バックアップディレクトリが未整備。デプロイ前に作成が必要:
| システム |
推奨バックアップ場所 |
terasu-lens |
~/terasu-lens-backups/ |
scale-hp-corporate |
~/scale-hp-corporate-backups/ |
scale-partner-program |
~/scale-partner-program-backups/ |
scale-partner-manual |
~/scale-partner-manual-backups/ |
| その他scale-XXX系 |
~/<システム名>-backups/ |
→ 新規開発・デプロイ前に必ず該当ディレクトリを作る。
scale_deploy.sh ラッパースクリプト(推奨)
5ステップ(バックアップ→ビルド→デプロイ→commit→ログ)を1コマンドで実行
容量オーバー対策の決定版。デプロイ忘れ・バックアップ忘れ・commit忘れを物理的に不可能にする。
# 基本(5ステップ全実行)
~/Obsidian/scripts/scale_deploy.sh scale-base
~/Obsidian/scripts/scale_deploy.sh scale-lead
~/Obsidian/scripts/scale_deploy.sh terasu-lens
# オプション
--no-build # ビルド不要の場合(静的サイト等)
--no-commit # commitしない
--dry-run # 実行内容だけ確認
# 対応システム
scale-base / scale-lead (=scale-crm) / scale-hp-showcase (=terasu) /
terasu-mgmt / terasu-lens / scale-hp-corporate /
scale-partner-program / scale-partner-manual /
scale-x-tool / scale-lead-manual / hp
→ 完了通知が macOS notification で届く。
→ ログ: ~/Obsidian/logs/scale_deploy.log
バックアップを取る標準コマンド(手動)
単発(デプロイ前に必ず)
# システム名と日時で命名
SYSTEM="scale-base" # ← 該当システム名に変更
TIMESTAMP=$(date +"%Y-%m-%d_%H%M")
mkdir -p ~/${SYSTEM}-backups
tar -czf ~/${SYSTEM}-backups/${SYSTEM}_${TIMESTAMP}.tar.gz \
--exclude='node_modules' \
--exclude='.next' \
--exclude='out' \
--exclude='.wrangler' \
-C $(dirname /Users/oogushiyuuki/${SYSTEM}) ${SYSTEM}
バックアップ後の確認
ls -lh ~/${SYSTEM}-backups/${SYSTEM}_${TIMESTAMP}.tar.gz
tar -tzf ~/${SYSTEM}-backups/${SYSTEM}_${TIMESTAMP}.tar.gz | head -20
バックアップ世代管理
各バックアップディレクトリで 直近30世代を保持(古いものは自動削除推奨):
# 古いバックアップ削除(30世代より古いもの)
ls -t ~/${SYSTEM}-backups/*.tar.gz | tail -n +31 | xargs rm -f
自動化済み(launchd):
com.scale.backup-rotation (毎日 朝3時)
→ ~/Obsidian/scripts/backup_rotation.sh が30世代より古い tar.gz を自動削除
→ ログ: ~/Obsidian/logs/backup_rotation.log
NG パターン(絶対回避)
| NG |
結果 |
| デプロイ後にバックアップを取る |
デプロイ失敗時に 動いてた版 が残らない |
node_modules 込みで tar.gz |
サイズ膨大・無意味 |
| バックアップ命名がぐちゃぐちゃ |
「最新どれ?」が分からなくなる |
| 30世代以上保持 |
ディスク圧迫 |
| バックアップ場所の Vault 記録なし |
復元時に場所探しに時間 |
関連ノート
Claude チェックリスト(緊急復元時)
[ ] 「復元して」と言われた → このノートを Read
[ ] 該当システムのバックアップ場所を確認
[ ] ls -lt で最新バックアップ確認
[ ] tar -xzf → rsync で復元
[ ] ローカルで動作確認
[ ] デプロイ
[ ] 本番URLで動作確認
[ ] 大串に Slack 報告
更新履歴
| 日付 |
内容 |
| 2026-05-03 |
初版作成(大串FB「セッション容量オーバーで復元できない問題」を受けて) |