
Shuriken(手裏剣)のメール復旧って、情報が断片的で「結局どこをどう触れば戻るのか」がまとまってないことが多いです。今回、旧データを新しいShuriken環境に復旧する必要があり、ゼロから構造を掘り直して手順化しました。
結論から言うと、ポイントはここです。
mbx\LOCALを旧環境から丸ごとコピーしない- 新環境で生成された
LOCALを活かしつつ、旧データ側を整合させて投入する
これを守ると、復旧の成功率が一気に上がります。
復旧の前提:なぜ mbx\LOCAL をコピーしないのか
Shurikenは起動時に mbx\LOCAL を生成し、内部IDに紐づく索引(IDX/MDX)を構成します。
旧環境のLOCALをそのまま新環境に入れると、新環境で生成されたIDと噛み合わず、表示不整合(フォルダはあるのに中身が出ない等)になりやすい。
だから今回の方針はこうです。
- 旧データはできるだけコピーする
- ただし
mbx\LOCALだけはコピーしない - 新Shurikenを起動して LOCALを生成させる
- 旧LOCAL由来のIDX/MDXを、新LOCALの命名ルール(ID)に合わせて整形して投入する
復旧フロー全体(ざっくり)
- 新しいShurikenで「仮アカウント」を作る
- 旧データをコピー(※
mbx\LOCALは除外) - 新Shurikenを起動 → フォルダ生成 → 全フォルダを1回クリック → 終了
- 自作ツールで検証(Dry Run)
- 問題がなければ生成 → 手動コピーでLOCAL反映
- Shurikenで表示確認して完了
手順1:新Shurikenで仮アカウントを作る
- 真っさらなShurikenを起動
- アカウントを新規作成(仮でOK)
- アカウント名は「数字+月名」など適当でOK(後で変更可能)
- ユーザー名/パスワード/メールアドレスも仮でOK
- Shurikenを終了(完全に閉じる)
手順2:旧データをコピー(ただしLOCALは除外)
旧データから新環境へコピーするときのルールはこれ。
- アカウント直下:基本コピーOK
mbxフォルダ内:LOCAL以外はコピーOKmbx\LOCAL:絶対にコピーしない(最重要)
ここを守るだけでも、崩壊する確率がかなり下がります。

基礎となる「受信」や「送信」は復旧されますが、生成したフォルダは空のままですがこれでOKです!
手順3:Shuriken起動 → フォルダ生成 → 全フォルダをクリック
- 新Shurikenを起動
- 受信箱/送信箱/ゴミ箱/振り分けフォルダが生成されるのを確認
- 空でもいいので、すべてのフォルダを1回ずつクリック
- Shurikenを終了
この「全フォルダをクリック」が地味に効きます。
内部参照(索引の下準備)が揃うのか、後工程が安定します。
手順4:自作ツールで整合を取る(標準モード)
今回使ったのが自作ツールのこれ。
Shuriken Mail Recovery Support Tool (GUI)

4つのパス設定
画面の「パス設定」はこの4つ。
- 旧LOCALフォルダ:旧環境の
...\mbx\LOCAL - 新LOCALフォルダ:新環境で生成された
...\mbx\LOCAL - 作業用フォルダ:例
D:\work - ログフォルダ(空可):例
D:\work\logs
事故防止のコツ
- 作業用フォルダ(work)は、旧LOCAL/新LOCALの配下に置かない
(ツール側にも「作業フォルダが入力配下なら停止」の安全装置があります)
まずはDry Run(テスト実行)
いきなり本番反映しないで、まずは
- Dry Run(テスト実行)
- 投入先の整合チェック
で、差分・不足・危険箇所がないか確認します。
手順5:一括復旧モード(速度重視)で仕上げる
タブを「一括復旧モード(速度重視)」に切り替えます。

この画面の設計がすごく良くて、
- まず
work\generatedに安全に生成 - LOCALへの反映は手動コピー
- 検証 → 生成 → 手動反映、という順番
なので、事故りにくいです。
Phase 1:必要フォルダ判定
ボタン:① Phase 1:必要フォルダ判定
- 新Shuriken側のフォルダ数が足りないと、後で必ずズレます。
- 足りない場合は、Shurikenを起動して ダミーフォルダを作って数を合わせる。
Phase 2:投入先検証(Dry-run)
ボタン:② Phase 2:投入先検証(Dry-run)
- 新環境のフォルダ数/構造と、旧データ側の対象数が一致しているかを検証。
- 1個でも違うとエラーにする設計(ここが強い)。
Phase 3:一括差し替え実行(上書きのみ)
ボタン:③ 一括差し替え実行(上書きのみ)
- 問題がなければ、
work\generatedに生成されます。 - その後、生成されたフォルダの中身を、新LOCALへ手動で上書きコピーして反映します。

これで事故無しで復旧可能になりました!
このアプリでやらかしたエラーと対処
フォルダ数不一致エラー
原因:新Shuriken側のフォルダ数が旧データ側と一致していない
対処:Shuriken側で不足分のフォルダを新規作成 → Phase 2で再検証
パス設定ミス(旧LOCALと新LOCALが逆)
原因:旧LOCAL/新LOCALの指定ミス
対処:パスを確認し直して、必ずDry Runからやり直す
(逆にやると、整合の前提が崩れます)
権限・ファイル使用中でコピーできない
原因:Shurikenが起動中/該当フォルダを掴んでいる
対処:Shurikenを完全終了 → 再実行
(タスクマネージャでプロセスが残っていないかも確認)
LOCALを誤ってコピーしてしまった
原因:手順2で mbx\LOCAL をコピーしてしまった
対処:新環境側のLOCALを一度“正しく生成し直す”必要が出る場合があります
(最初から手順を踏み直すのが安全)
反映後の確認ポイント
- フォルダ構成(受信箱/送信箱/ゴミ箱/振り分け)が揃っている
- 代表メールが開ける
- 検索/一覧表示が破綻していない
- 必要なら不足フォルダを作って再検証 → 再投入
Shurikenの復旧は「コピーして終わり」ではなく、LOCAL生成とID/索引の整合が勝負でした。だからこそ、新LOCALを活かして旧データを合わせ込むのが最も筋が良い。情報が無い領域ほど、やってみて、再現できる形に落とす。今回もそれに尽きました。

このツールを公開するかはまだ未定です














Shurikenは既に開発や提供も終了しているので、サポートの記事などは個人ブログから拝借するしか方法がない状況なんですよね