#Azure# #Azcopy#
1.安装Azcopy
tar -xzvf azcopy_linux_amd64_10.27.1.tar.gz
sudo mv azcopy /usr/local/bin/
sudo chmod +x /usr/local/bin/azcopy
azcopy --version
2. 基础命令参数测试成功
在测试环境中对 基础命令参数 进行了验证:
azcopy copy 'https://<source-URL>' 'https://<destination-URL>' \
--recursive \
--preserve-smb-permissions=true \
--preserve-smb-info=true \
--include-after "2025-01-01" \
--exclude-path "archives"
测试结果:
参数 --include-after 成功实现了对指定日期之后文件的传输。
参数 --exclude-path 排除了指定路径(如 "archives")的文件。
数据传输结果符合预期,未发现明显异常。
3.1 是否可以在后台运行脚本
使用 nohup 或 & 在后台运行 AzCopy,例如:
nohup azcopy copy '<source-URL>' '<destination-URL>' --recursive &
或者使用任务调度器(如 cron)定期运行传输脚本。
3.2 是否支持数据持续性传输
现状:测试中,AzCopy 支持断点续传,但在长时间传输中需要进一步验证。
初步建议:
使用 --log-level=INFO 参数监控任务,结合 --resume 选项继续未完成的传输。
3.3 是否会带来数据不一致性
现状
多次同步可能存在源和目标数据不同步的情况(尤其是文件改动或删除)。
初步建议
如果需要持续一致性,建议采用以下步骤:
先使用 AzCopy copy 完成全量迁移,快速将所有数据从源传输到目标:
azcopy copy '<source-URL>' '<destination-URL>' --recursive
适合首次迁移,确保目标拥有源的所有文件。
再使用 AzCopy sync 进行增量同步,确保源和目标之间保持一致性:
azcopy sync '<source-URL>' '<destination-URL>' --recursive
此步骤会删除目标中源不存在的文件,并更新源中已修改的文件。
该方式能够最大程度地提高传输效率,同时保持数据的一致性。