从Azure VM迁移文件系统至Azure Files的最佳方案咨询
迁移Ubuntu 16.04 Azure VM文件至Azure Files的最佳方案及访问方法
一、一次性文件迁移的最佳方式
针对大量文件的一次性复制需求,推荐以下两种高效方案:
1. 使用AzCopy(官方工具,适合海量文件)
AzCopy是微软推出的命令行工具,专门用于Azure存储服务间的高效数据传输,支持断点续传和批量操作:
- 安装AzCopy:
在Ubuntu 16.04终端执行以下命令安装兼容版本:wget https://aka.ms/downloadazcopy-v10-linux tar -xvf downloadazcopy-v10-linux sudo cp ./azcopy_linux_amd64_*/azcopy /usr/local/bin/ - 获取访问凭据:
登录Azure门户,进入目标存储账户的文件共享,生成SAS令牌(推荐,权限更可控)或获取存储账户密钥。 - 执行复制命令:
替换占位符后运行,--recursive=true会包含子目录:azcopy copy "/path/to/your/local/files" "https://<storage-account-name>.file.core.windows.net/<file-share-name>?<sas-token>" --recursive=true
2. 挂载SMB共享后直接复制
通过挂载Azure Files为本地目录,用常规Linux命令复制,适合熟悉文件系统操作的场景:
- 安装SMB客户端工具:
sudo apt-get update && sudo apt-get install cifs-utils -y - 创建挂载点:
sudo mkdir /mnt/azurefiles - 挂载Azure Files共享:
替换占位符,vers=3.0确保Ubuntu 16.04兼容性:sudo mount -t cifs //<storage-account-name>.file.core.windows.net/<file-share-name> /mnt/azurefiles -o username=<storage-account-name>,password=<storage-account-key>,vers=3.0 - 复制文件:
用cp或rsync(更稳妥,支持断点续传)完成复制:# 使用cp sudo cp -r /path/to/your/local/files/* /mnt/azurefiles/ # 或使用rsync sudo rsync -avh /path/to/your/local/files/ /mnt/azurefiles/ - 复制完成后卸载挂载:
sudo umount /mnt/azurefiles
二、迁移后访问Azure Files的方法
1. 在Ubuntu 16.04 VM中访问
- 临时挂载:重复上述挂载SMB共享的步骤即可。
- 开机自动挂载:编辑
/etc/fstab文件添加挂载配置,确保重启后自动挂载:
添加以下内容(替换占位符):sudo nano /etc/fstab
保存后执行以下命令生效://<storage-account-name>.file.core.windows.net/<file-share-name> /mnt/azurefiles cifs username=<storage-account-name>,password=<storage-account-key>,vers=3.0 0 0sudo mount -a
2. 在Windows系统中访问
- 打开“此电脑”,点击“映射网络驱动器”。
- 输入网络路径:
\\<storage-account-name>.file.core.windows.net\<file-share-name>。 - 点击“使用其他凭据连接”,输入存储账户名和密钥即可完成映射。
3. 通过Azure门户访问
登录Azure门户,找到目标存储账户,进入“文件共享”页面,点击目标共享的“浏览”按钮,即可在线查看、上传、下载和管理文件。
内容的提问来源于stack exchange,提问作者Fr0zt
相关产品推荐
相关产品推荐

