次の方法で共有


ある SMB Azureファイル共有から別のファイル共有にファイルを移行する

この記事では、SMB Azure ファイル共有間でファイルを移行する方法について説明します。 これを行う一般的な理由の 1 つは、アプリケーション ワークロードのパフォーマンスを向上させるために、標準のファイル共有から Premium ファイル共有に移行する必要がある場合です。

警告

Azure File Sync を使用している場合、移行プロセスはこの記事で説明されているのとは異なります。 代わりに、「Azure File Sync を使用するときに、ある Azure ファイル共有から別の Azure ファイル共有にファイルを移行する」を参照してください。

適用対象

ファイル共有の種類 SMB NFS
Standard ファイル共有 (GPv2)、LRS/ZRS はい いいえ
Standard ファイル共有 (GPv2)、GRS/GZRS はい いいえ
Premium ファイル共有 (FileStorage)、LRS/ZRS はい いいえ

Robocopy を使用した移行

Windows に組み込まれているコマンド ライン ファイル コピー ユーティリティである Robocopy を使用して移行するには、次の手順に従います。

  1. ソース ファイル共有と同じリージョン内の Azure に Windows 仮想マシン (VM) をデプロイします。 Azure でのデータとネットワークの維持は高速であり、送信データ転送料金を回避できます。 最適なパフォーマンスを得るには、少なくとも 56 GiB のメモリを備えたマルチコア VM の種類 (たとえば、Standard_DS5_v2) をお勧めします。

  2. ソースとターゲットの両方のファイル共有を VM にマウントします。 VM がすべてのファイルにアクセスできることを確認するには、必ずストレージ アカウント キーを使用してマウントしてください。 ドメイン ID は使わないでください。

  3. Windows コマンド プロンプトでこのコマンドを実行します。 必要に応じて、ログ機能のフラグをベスト プラクティス (/NP、/NFL、/NDL、/UNILOG) として含めることができます。

    robocopy <source> <target> /MIR /COPYALL /MT:16 /R:2 /W:1 /B /IT /DCOPY:DAT
    

    ソース共有が s:\ としてマウントされている場合と target は t:\ でしたコマンドは次のようになります:

    robocopy s:\ t:\ /MIR /COPYALL /MT:16 /R:2 /W:1 /B /IT /DCOPY:DAT
    

    ソースがまだオンラインの間はコマンドを実行できますが、I/O は既存の共有のスロットル制限に対して機能します。

  4. 最初の実行が完了したら、既存の共有からアプリケーションを切断し、同じ robocopy コマンドをもう一度実行します。 これにより、最初の実行以降に発生したすべての変更がコピーされ、既にコピーされているファイル データはスキップされます。

  5. コマンドが 2 回目に完了したら、アプリケーションを新しい共有にリダイレクトできます。

関連項目