解决七牛云存储bucket无法访问问题

Posted by Xiaoyan(Sharon) Mu on 2018-11-11
Estimated Reading Time 3 Minutes
Words 816 In Total
Viewed Times

因为工作的事情,最近忙于切换节奏适应新环境,有一个月没来 kikitaMap “巡检”了。果然昨天发现了小故障,七牛云存储的存储空间的临时域名失效了,之上的我的图床也就挂了。涉及到的对象:碎碎念相机里 中的全部图片和 木工开物 的小部分博客中图片。Just too bad …

解决方法建议

这种情况下只能发工单联系技术支持了,七牛的技术支持回复比较及时,给出了解决方案,如下:

有两种方式来获取文件:

您需要先新建一个同区域存储空间,会分配一个新的测试域名到新空间。
通过qshell batchcopy 到有域名的同区域空间然后再进行qdownload下载操作
1)qshell listbucket 原bucket名 list.txt
​ (list出全部文件,listbucket的文档
2)cat list.txt | awk '{print $1}' >list_final.txt
​ (用awk获取list结果的第一列)
3)qshell batchcopy 原bucket名 新bucket名 list_final.txt
​ (复制到新bucket的文件和原bucket文件名一致,batchcopy的文档
4)qshell qdownload newfilelist.txt
​ (newfilelist.txt为下载的配置文档

qshell安装包及文档请参考
https://developer.qiniu.com/kodo/tools/1302/qshell

如果您不熟悉命令行工具的安装使用,也可以结合文档最后提供的视频教程
https://developer.qiniu.com/kodo/tools/1302/qshell#9

2.
使用工具qrsctl
https://developer.qiniu.com/kodo/tools/1300/qrsctl
qrsctl get <bucket> <file> <file>

实践过程

选择了第一种方式,问题解决,因为看起来像是批量的。

按照提示下载的zip包类似 qshell-v2.2.0.zip 这样的名字,里面包含了Windows,Linux,Mac各操作系统使用的程序。

我以Mac为例,使用Mac自带的 Commandline 访问解压之后的文件夹 qshell-v2.2.0。

1
2
3
4
kikitamoondeMBP:SoftwareSetup kikitamoon$ cd qshell-v2.2.0
kikitamoondeMBP:qshell-v2.2.0 kikitamoon$ ls
qshell-darwin-x64 qshell-linux-x64 qshell-windows-x64.exe
qshell-linux-arm qshell-linux-x86 qshell-windows-x86.exe

其中 qshell-darwin-x64 是Mac可用的 Qshell 版本。在使用Qshell之前需要配置账户信息,qshell account即可设置AK和SK。

1
2
3
4
5
kikitamoon$ ./qshell-darwin-x64
Use help or help [cmd1 [cmd2 [cmd3 ...]]] to see supported commands.
kikitamoon$ ./qshell-darwin-x64 account
Open account file error, open /Users/kikitamoon/.qshell/account.json: no such file or directory, please use `account` to set AccessKey and SecretKey first
kikitamoon$ ./qshell-darwin-x64 account <AK> <SK>

接着使用七牛技术支持给出的建议,将旧库的文件list出来,然后batchcopy到新库中。

1
2
3
kikitamoon$ ./qshell-darwin-x64 listbucket kikitamapgallery list.txt
kikitamoon$ cat list.txt | awk '{print $1}' >list_final.txt
kikitamoon$ ./qshell-darwin-x64 batchcopy kikitamapgallery kikitamapgallerycopy list_final.txt

最后,通过 qdownload 命令下载所有源文件。在执行命令之前还需要做个配置文件,download.conf ; 并且可以设置开几个任务并行下载。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
kikitamoon$ ./qshell-darwin-x64 qdownload 4 download.conf

Writing download log to file /Users/kikitamoon/.qshell/qdownload/7d41b43ca364d28da34dbd030f1331be/7d41b43ca364d28da34dbd030f1331be.log
Downloading MGKW_ArcGIS_Daemon.png [1/62, 1.6%] ...
Downloading MGKW_ArcMapStartupLog.png [2/62, 3.2%] ...
Downloading MGKW_BatchClip.png [3/62, 4.8%] ...
Downloading MGKW_FeatureTable.png [4/62, 6.5%] ...
Downloading MGKW_HelloArcGISPythonAPI.png [5/62, 8.1%] ...
...
...
...
Downloading XJL_TripToGreece.png [61/62, 98.4%] ...
Downloading XJL_TripToHongkong.png [62/62, 100.0%] ...
See download log at path /Users/kikitamoon/.qshell/qdownload/7d41b43ca364d28da34dbd030f1331be/7d41b43ca364d28da34dbd030f1331be.log

kikitamoon$

至此,源图片文件算是都找回来了。当然我还需要把我的网站中使用到旧地址的位置update一下喽。


如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !