概述七牛云OSS对象存储bucket创建后有一个「外链默认域名」这个域名, 如果没有记错的2018上半年没有回收这个概念, 2018下半年隐隐约约记录收到过「【七牛云】测试域名回收通知」邮件, 出现这个域名后也没有太在意, 因为是个人使用, 怎么着都成! 后来用得着静态文件存储时就接着新建bucket, 接二连三的收到「测试域名回收通知」回收后最大的影响就是「整个Bucket基本所有功能都不能使用了, 都不能使用了, 都不能使用了~」下载什么的你就可劲点吧, 额~~~, 好吧!所有外部引用文件都不可用了, 你之前的所有引用又都想使用之前那些文件吧, 好了, 下载下来这个文件将其上传到阿里云对象存储OSS完美解决问题, 请看下面迁移过程, 可能会对你有所帮助~建立一个同区下的新Bucket您需要先新建一个同区域存储空间,会分配一个新的测试域名到新空间下载qshell关于qshell的下载请移步Github, 关于qshell的配置请参考命令行工具(qshell), 最好将qshell添加系统环境变量设置qshell登录账号查看 qshell account 命令使用方式➜ qshell account –helpGet/Set AccessKey and SecretKeyUsage: qshell account [<AccessKey> <SecretKey> <Name>] [flags]Flags: -h, –help help for account -w, –overwrite overwrite account or not when account exists in local db, by default not overwriteGlobal Flags: -C, –config string config file (default is $HOME/.qshell.json) -d, –debug debug mode -L, –local use current directory as config file path -v, –version show version添加 qshell account 登录账号AccessKey: 访问密钥SecretKey: 安全密钥SelfCustomName: 此处填写自定义的用户名(这个name就是qshell存存您登陆的账户名,可以随便设置的,比如qiniuaccount 或者 account_1 等等)AccessKey 及 SecretKey 可以到控制台右上角的个人面板,密钥管理里找到### 格式: qshell account AccessKey SecretKey SelfCustomName### 列如:➜ qshell account AccessKey SecretKey warnerwu将已被回收Bucket文件同步到新建Bucket下载已被回收Bucket下所有文件列表到文件进入到「本地数据备份路径」如➜ cd /qiniu/migration执行以下命令, 下载已被回收Bucket下所有文件列表到文件➜ migration qshell listbucket warner -o warner-data-list.txt下载到已被回收Bucket下所有文件列表到文件具体内容类似如下图所示将下载到的文件的第一列复制到一个最终文件列表文件➜ migration cat warner-data-list.txt | awk ‘{print $1}’ > warner-data-list-final.txt文件列表到文件内容如下:将文件列表文件将旧Bucket文件列表文件拷贝到新建Bucket文件列表➜ migration qshell batchcopy warner warnerwu-migration -i warner-data-list-final.txt执行以上命令七牛云会有一个安全机制就是让你输入验证码到此文件也就会从旧Bucket拷贝或者说同步到新建Bucket列表啦下载已同步到建新Bucket文件到本地备份文件夹关于如何下更详细讲解可以移步Github下载说明文档添加一个下载配置文件文件名如 warnerwu-migration-download.confdest_dir: 为本地备份文件绝对路径文件夹, 不过这个绝对路径要提交建立好bucket: 要下载Bucket下文件所在的Bucket名称{ “dest_dir” : “/Users/warnerwu/qiniu/migration/warnerwu-migraition”, “bucket” : “warnerwu-migration”}下载Bucket列表文件到本地备份文件夹-c: 10 参数 -c 代表是要使用多个 goroutine 进行下载Bucket列表下的文件, 我们都知道七牛后端全站 Go 语言开发, 对头, 你当前使用的 qshell 也是使用 Go 语言编写➜ migration qshell qdownload -c 10 warnerwu-migration-download.conf下载完成后会生成一个下载日志文件, 它是默认生成当前用户家目录下查看下载日志文件tail 默认显示最后10行tail -n 24 可以指定显示行数➜ migration tail /Users/warnerwu/.qshell/qdownload/e65c69a164299e2f7045ea3b7a3d18d7/e65c69a164299e2f7045ea3b7a3d18d7.log2019/02/18 22:14:33.548 [I] Download 2017.02.17.attrbute.01.png => /Users/warnerwu/qiniu/migration/warnerwu-migraition/2017.02.17.attrbute.01.png success 1785.53KB/s2019/02/18 22:14:33.548 [I] ——-Download Result——-2019/02/18 22:14:33.548 [I] Total: 262019/02/18 22:14:33.548 [I] Skipped: 02019/02/18 22:14:33.548 [I] Exists: 02019/02/18 22:14:33.548 [I] Success: 262019/02/18 22:14:33.548 [I] Update: 02019/02/18 22:14:33.548 [I] Failure: 02019/02/18 22:14:33.548 [I] Duration: 2.205420428s2019/02/18 22:14:33.548 [I] —————————–可以看到这个下载还是很快的只用了 2 秒左右的时间, 并且所有的下载都成功了!查看下载文件最后你可以将文件上传到阿里云对象存储OSS上, 它不存在「测试域名」的问题, 不过你要先购买对象存储OSS, 不贵40G好像是9块多钱的样子并且是一年!希望本文对你的工作和学习有所帮助如果觉得还不错怎么感谢我呢? 妈呀! 点赞啊!Good Luck! from warnerwu at 2019.02.18 PM