失敗から学ぶ:事前スキャンで見落としがちな「移行エラー」の原因と対策
テナント間移行で「移行ツールを実行したらエラーが大量に出た」という事態は、事前スキャンの不足が原因です。移行の実行前に旧テナントのデータをスキャンし、移行エラーの原因になる問題を事前に修正することで、本番移行のエラー率を大幅に下げられます。
見落としやすいエラー原因 TOP 8
1. ファイルパスの長さ制限(400文字超え)
SharePoint Onlineのファイルパス(サイトURL+フォルダ階層+ファイル名)の上限は400文字です。日本語のフォルダ名が深い階層にネストされている場合、URLエンコードされて400文字を超え、移行エラーになります。
対策: 事前スキャンで400文字に近いパスを検出し、フォルダ名の短縮または階層の整理を実施。
2. ファイル名の特殊文字
SharePoint Onlineでは、ファイル名に ~ # % & * { } \ : < > ? / | " を含むファイルはアップロードできません。旧環境で作成されたファイルにこれらの文字が含まれていると移行エラーになります。
対策: スキャンで特殊文字を含むファイルを一覧化し、リネーム。PowerShellスクリプトで一括リネームが効率的。
3. 1ファイル250GB超え
SharePoint Online / OneDriveの1ファイルの上限は250GBです。動画ファイルやデータベースバックアップファイルで超過するケースがあります。
対策: 250GB超のファイルを事前に特定し、分割またはStreamやAzure Blob Storageなど別の保存先に移動。
4. OneNoteノートブックの移行
OneNoteノートブックはSharePoint上に.oneファイルとして保存されていますが、移行ツールによっては通常のファイルコピーではなく専用の処理が必要です。移行後にOneNoteが開けない、同期エラーが発生するといった問題が起きやすい対象です。
対策: OneNoteノートブックの数と場所を事前に把握し、移行ツールのOneNote対応状況を確認。必要に応じてOneNoteの移行は個別ジョブで実行。
5. チェックアウト状態のファイル
SharePointでチェックアウト(排他ロック)されたままのファイルは移行エラーになることがあります。長期間チェックアウトされたままのファイルが放置されているケースは意外と多いです。
対策: SharePoint管理センターまたはPowerShellでチェックアウト状態のファイルを検出し、所有者に解除を依頼。必要に応じて管理者が強制解除。
6. サイトコレクションの容量制限
移行先テナントのSharePointストレージ容量が不足していると、移行途中でエラーになります。移行元の合計データ量と移行先の空き容量を事前に照合する必要があります。
対策: 移行前に移行先テナントのストレージ残容量を確認。不足する場合はOffice 365 Extra File Storageを追加購入。→ SharePoint Onlineの容量制限と追加方法
7. 権限の継承切れ(Broken Inheritance)
SharePointでは、サイト→ライブラリ→フォルダ→ファイルの権限が継承されますが、個別に権限を設定すると「継承切れ」が発生します。継承切れの箇所が大量にあると、移行ツールが個別に権限を処理するため、移行速度が大幅に低下し、タイムアウトエラーが発生することがあります。
対策: SharePointの権限レポート(PowerShellまたはサードパーティツール)で継承切れの箇所を一覧化。不要な個別権限を削除し、継承に戻す。
8. 外部共有リンクと匿名リンク
旧テナントで作成された外部共有リンク(Anyone リンク、特定ユーザーリンク)は、移行先テナントには移行されません。移行後にリンクが無効になり、外部パートナーがファイルにアクセスできなくなります。
対策: 移行前に有効な外部共有リンクの一覧を取得し、移行後に新テナントで再作成が必要なリンクを特定。外部パートナーに「移行後にリンクが変わります」と事前通知。
事前スキャンの実施方法
移行ツールのスキャン機能
AvePoint FLY、ShareGate、BitTitanなどの移行ツールには、移行前のプレスキャン(アセスメント)機能が搭載されています。プレスキャンを実行すると、上記のエラー原因を自動検出し、レポートとして出力されます。
PowerShellでのカスタムスキャン
移行ツールのスキャンでカバーされない項目(長いファイルパス、特殊文字など)は、PowerShellスクリプトでカスタムスキャンを作成し、事前に検出します。
プレスキャン→修正→本番移行のフロー
Week 1: プレスキャンを実行。エラーレポートを分析。
Week 2〜3: エラー原因の修正(リネーム、チェックアウト解除、権限整理、容量確保)。
Week 4: 修正後に再スキャンを実行し、エラーがゼロになったことを確認。
Week 5〜: 本番移行を実行。
まとめ
テナント間移行のエラーの8割は、事前スキャンで検出・修正できます。「とりあえず移行を実行してみて、エラーが出たら対応する」というアプローチは、本番移行の遅延とユーザーへの影響を招きます。プレスキャン→修正→再スキャン→本番移行のフローを必ず組み込んでください。
情シス365では、移行前のアセスメントとエラー修正を含むテナント統合プロジェクトを支援しています。