MagicBag manual

接続設定マニュアル

Cloudflare R2を例に、バケット作成からMagicBagでの接続確認までを説明します。S3互換サービスへ接続する場合も、最後の共通設定を利用できます。

← ランディングページへ戻る

Before you start

最初に確認すること

MagicBagはストレージサービスではありません。ファイルはユーザーが指定したCloudflare R2またはS3互換オブジェクトストレージへ、アプリから直接保存されます。保存料、操作料金、税金は接続先の契約に従います。

重要: Access Key IDやSecret Access KeyをこのWebサイトへ入力しないでください。このサイトには資格情報を送信するフォームはありません。キーはMagicBagアプリの設定画面だけに入力します。

この手順に必要なものは次のとおりです。

  • CloudflareアカウントとR2を利用できる状態
  • MagicBagを実行するmacOS端末
  • バケット名、Endpoint、APIキーを安全に保管できる場所

01 / Cloudflare R2

R2バケットを作成する

用途ごとにバケットを分けると、APIキーの権限を限定しやすくなります。MagicBag専用のバケットを作る構成を推奨します。

  1. Cloudflare Dashboardへログインし、対象アカウントを選択します。
  2. 左側メニューの R2 Object Storage を開きます。
  3. Create bucket を押します。
  4. バケット名を入力します。例: magicbag-files
  5. リージョンの選択が表示される場合は、利用地域と運用方針に合わせて選択します。
  6. Create bucket で作成を確定します。

バケット名の注意: バケット名はMagicBagの設定にそのまま入力します。末尾のスラッシュやEndpointのURLをバケット名に含めないでください。

R2 APIキーを発行する

  1. R2の概要またはAPI Tokens画面から、R2 API Tokens の作成画面を開きます。
  2. トークン名に用途を入力します。例: magicbag-mac
  3. 権限は Object Read & Write を選びます。
  4. 適用対象は、作成した 1つのバケットだけ に限定します。
  5. 作成後に表示される Access Key IDSecret Access Key を安全な場所へ一度だけ控えます。

Secret Access Keyは再表示できない場合があります。 画面を閉じる前に保管してください。紛失した場合は新しいキーを発行し、古いキーを削除します。

MagicBagで使うR2の値

項目入力例説明
BackendCloudflare R2R2プリセットを選択します。
Endpointhttps://<account-id>.r2.cloudflarestorage.com<account-id>はCloudflareアカウントIDです。
Bucketmagicbag-files作成したバケット名です。
Prefixmagicbag/バケット内の保存領域です。既存データと分けるため、空にせず専用prefixを推奨します。
Signing regionautoR2では通常 auto を使います。
Addressing stylepathまずは path を使います。
Access Key ID発行した値R2 APIトークンのAccess Key IDです。
Secret Access Key発行した値R2 APIトークンのSecret Access Keyです。

02 / MagicBag app

MagicBagを設定する

  1. MagicBagを起動し、設定画面を開きます。
  2. ストレージバックエンドで Cloudflare R2 を選択します。
  3. 前の表のEndpoint、バケット名、prefix、キーを入力します。
  4. 同期フォルダを選びます。初回は空の専用フォルダにすると既存ファイルとの衝突を避けられます。
  5. 保存または接続確認を実行します。

既存のDropboxファイルを残す場合: 初回同期の方式は、アプリの表示に従ってpullまたは空の状態から開始してください。既存データを上書きしないため、移行前にコピー元と保存先のprefixを確認します。

03 / Verify

接続と同期を確認する

  1. 接続テストが成功し、バケットへアクセスできることを確認します。
  2. テスト用の小さなファイルを同期フォルダへ追加します。
  3. FinderのMagicBag仮想領域、またはR2 Dashboardでファイルが見えることを確認します。
  4. アプリからテストファイルを削除し、削除が意図どおり反映されることを確認します。

MagicBagはprefix配下に次のようなデータを保持します。manifest.jsonは同期の索引なので、動作中に手作業で削除・編集しないでください。

magicbag/
├── manifest.json
└── files/
    └── ...

S3-compatible

他のS3互換サービスへ接続する

Amazon S3、Wasabi、Backblaze B2など、S3 APIのEndpointを提供するサービスは、接続先の仕様に合わせて入力できます。

項目設定の考え方
Endpointサービスが案内するS3 APIのHTTPSエンドポイントを入力します。コンソールのWeb URLとは異なる場合があります。
Bucket対象バケット名だけを入力します。
Regionサービスが指定する署名リージョンを入力します。R2以外で auto を使わないでください。
Addressing styleまず virtual を試し、サービスがpath形式を要求する場合は path にします。
権限対象バケットのオブジェクト読み書きだけを許可し、アカウント管理権限は付けません。

Security

安全な運用

  • MagicBagの資格情報はmacOS Keychainへの保存を優先します。
  • APIキーはバケット単位、読み書き用途単位で分けます。
  • 不要になった端末のキーは、接続先の管理画面から失効させます。
  • Secret Access KeyをGit、Issue、チャット、スクリーンショットへ貼り付けません。
  • データのバックアップ、履歴、削除復元の仕様は接続先と自分の運用で別途用意します。

このサイトの役割: 設定手順と仕様を案内するだけです。キーの検証、アップロード、保存、解析は行いません。

Troubleshooting

トラブルシューティング

症状確認すること
AccessDeniedR2 APIトークンが対象バケットへObject Read & Writeを持つか、バケット名とprefixが一致するか確認します。
SignatureDoesNotMatchR2はSigning regionが auto か、Endpointに余分なパスがないか、キーの前後に空白がないか確認します。
接続先が見つからないEndpointが https://<account-id>.r2.cloudflarestorage.com の形式か、ネットワークとバケット名を確認します。
Finderに表示されないMagicBagアプリの設定保存が成功しているか、File Provider領域を再度開き、アプリを再起動します。
同期が止まったアプリの同期状態、ローカルディスク容量、接続先の操作制限を確認します。manifestを手作業で編集しないでください。
想定より高い料金保存容量だけでなく、Class A/B操作数、データ取得、バックアップやライフサイクル設定を接続先で確認します。

Dropbox migration

Dropboxから段階的に移行する

Dropboxのファイルをすぐ削除せず、まずMagicBag側へコピーし、ランダムなファイルを開いて破損がないことを確認してから契約変更を判断してください。

  1. Dropboxのローカル領域が必要なファイルを取得できる状態か確認します。
  2. MagicBagの接続テストと小さなテストファイルの同期を完了します。
  3. 付属の移行ツールでコピーを実行します。コピー元は変更・削除されません。
  4. ファイル数、合計サイズ、ランダムサンプルのハッシュまたは開封結果を比較します。
  5. 一定期間問題がないことを確認してからDropboxをダウングレードまたは解約します。
python3 macos/scripts/import-dropbox-direct.py \
  --source "$HOME/Library/CloudStorage/Dropbox" \
  --state-dir "$HOME/Library/Application Support/MagicBag/dropbox-migration" \
  --concurrency 8

長時間の移行では、READMEに記載された再開用runnerを使い、元データを削除する処理と同時に実行しないでください。

Cost reference

料金を判断するときの基準

MagicBagのアプリ価格と、接続先ストレージの月額は別です。R2の料金表、操作数、税、為替は変更されるため、申し込み前に公式料金を確認してください。

MagicBagは「2TBを必ず安くする」製品ではありません。Dropboxの容量をほとんど使っていない個人が、必要な容量だけを自分のバケットで管理するケースを主な対象としています。

Cloudflare R2の最新料金を見る