robocopy コマンド利用して、EBS ボリューム間のデータコピーをやってみた
はじめに
テクニカルサポートの 片方 です。
今回は、robocopy コマンドを利用して、EBS ボリューム間のデータコピーをやってみました。
例: D:ドライブ ⇒ G:ドライブ
EBS ボリュームはボリュームサイズの拡張が可能なものの、縮小は叶いません。もしボリュームサイズを縮小したい場合には新規に EBS ボリュームを作成してアタッチを行いコピーなどを実施する必要があります。
なお、AWS 上のデータ移行に一般的な AWS DataSync 利用が考えられますが、現時点 EBS は未対応です。
そのため、robocopy (Windows インスタンス) のアプリケーションレベルのツールを使用してデータを移行することが想定されます。
EBS ボリュームのサイズを小さく変更することはできません。ただし、より小さなボリュームを作成し、そのボリュームに対して rsync (Linux インスタンス) または robocopy (Windows インスタンス) などのアプリケーションレベルのツールを使用してデータを移行することができます。
やってみた
EBS ボリュームを 2 つ 作成し D:ドライブ、G:ドライブとして Amazon EC2 Windows インスタンスにアタッチしています。また、D:ドライブ内には適当なフォルダー作成を行っている状態です。
以下を参考に D:ドライブに存在するフォルダーを全て G:ドライブへコピーしたいと思います。
PowerShell を利用して実行します。※ 適宜修正してください
robocopy "D:" "G:" /E /COPYALL /DCOPY:DAT /R:3 /W:10 /MT:32 /V /TEE /LOG:ebs_copy_log.txt
成功しました!
ebs_copy_log.txt は、robocopyの実行結果(コピーの進捗状況、エラー、成功したファイル等)を記録するログファイルの名前を指定しています。
この場合では C:ドライブ配下に保存されるのでご参考ください。
保存内容の例
-------------------------------------------------------------------------------
ROBOCOPY :: Robust File Copy for Windows
-------------------------------------------------------------------------------
Started : Sunday, February 2, 2025 8:22:20 AM
Source : D:\
Dest : G:\
Files : *.*
Options : *.* /V /TEE /S /E /COPYALL /MT:32 /R:3 /W:10
------------------------------------------------------------------------------
same 12 D:\System Volume Information\WPSettings.dat
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$R0BOKN7\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$R13IPAM\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$R64WGO9\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RB8DY6M\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RBCGYRV\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RETNBG6\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RFOLREE\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RIDJGNU\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RP2VDMJ\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RSRGYEJ\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RUHJT1U\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RWAJEB3\
*EXTRA Dir -1 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RX96JMW\
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$I0BOKN7
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$I13IPAM
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$I64WGO9
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IB8DY6M
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IBCGYRV
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IETNBG6
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IFOLREE
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IIDJGNU
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IP2VDMJ
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$ISRGYEJ
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IUHJT1U
*EXTRA File 76 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IUO4XJY.lnk
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IWAJEB3
*EXTRA File 46 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$IX96JMW
*EXTRA File 713 G:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\$RUO4XJY.lnk
same 129 D:\$RECYCLE.BIN\S-1-5-21-1438703573-3966823771-2451148893-500\desktop.ini
New File 5 D:\Test1\Sample1.txt
100%
New File 5 D:\Test2\Sample2.txt
100%
New File 5 D:\Test3\Sample3.txt
100%
------------------------------------------------------------------------------
Total Copied Skipped Mismatch FAILED Extras
Dirs : 7 7 4 0 0 13
Files : 5 3 2 0 0 15
Bytes : 156 15 141 0 0 1.3 k
Times : 0:00:00 0:00:00 0:00:00 0:00:00
Ended : Sunday, February 2, 2025 8:22:20 AM
まとめ
本ブログが誰かの参考になれば幸いです。
参考資料
- よくある質問 - AWS DataSync | AWS
- Elastic Volumes オペレーションを使用して Amazon EBS ボリュームを変更する - アマゾン EBS
- Robocopy | Microsoft Learn
アノテーション株式会社について
アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。