New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

七牛测试域名过期之后,图片无法备份,qshell也不行,还有别的办法吗,求助 #188

Closed
Flowsnow opened this Issue Oct 1, 2018 · 15 comments

Comments

Projects
None yet
@Flowsnow

Flowsnow commented Oct 1, 2018

No description provided.

@lidawn

This comment has been minimized.

lidawn commented Oct 2, 2018

  1. 重新创建一个测试bucket(会分配一个新的测试域名)
  2. batchcopy 原bucket到新的bucket
  3. qdownload 新bucket

done!

@bambooom

This comment has been minimized.

bambooom commented Oct 3, 2018

我试了之后发现,新建的 bucket 必须和原 bucket 在同一个区(华东/华南什么的)才能进行 batchcopy,否则会报 incorrect zone 错误

@Flowsnow

This comment has been minimized.

Flowsnow commented Oct 6, 2018

后续我是借用了一个备案的域名然后qdownload备份下来的。
@lidawn 的方案可以一试

@Flowsnow Flowsnow closed this Oct 6, 2018

@Galvin-wjw

This comment has been minimized.

Galvin-wjw commented Oct 8, 2018

batchcopy是同一个区域的复制

@BIGBALLON

This comment has been minimized.

BIGBALLON commented Oct 8, 2018

@Flowsnow 卧槽,亮哥居然和我遇到同一个问题,已经放弃qiniu了,居然还有这样丧心病狂的操作。

@Flowsnow

This comment has been minimized.

Flowsnow commented Oct 8, 2018

@BIGBALLON 反正就是你很蛋疼,搞定了就彻底弃坑了,转向阿里oss了

@saitjr

This comment has been minimized.

saitjr commented Oct 12, 2018

可以说是相当辣鸡了,弃用弃用,七牛一生黑

@BIGBALLON

This comment has been minimized.

BIGBALLON commented Oct 15, 2018

@lidawn 的方法可行.
注意bucket在同一个分区。然后导出list,再用batchcopy,最后qdownload。

另外如果新建了一个bucket,仍然会再分配一个测试域名。
如果是写博客的朋友可以直接将原来的域名全部替换为新的测试域名。

PS: 已经弃用qiniu了

@aimer1124

This comment has been minimized.

aimer1124 commented Oct 18, 2018

问题已解决,说下自己的解决过程。

从一个bucketA平移至另外一个bucketB

  • 先下载qshell包到本机,解压,查看是否可以正常运行
➜  qshell-v2.2.0 ./qshell-darwin-x64 -v
QShell/v2.2.0 (darwin; amd64; go1.9)
➜  qshell-v2.2.0 ./qshell-darwin-x64 account
AccessKey: Your AK
SecretKey: Your SK
  • 使用导出文件列表命令,导出需要迁移的bucketA文件列表
➜  qshell-v2.2.0 ./qshell-darwin-x64 listbucket bucketA tocopy.txt
  • 需要手动把tocopy.txt中的的每行内容修改为仅有文件名
  • 执行平移(batchcopy)命令
➜  qshell-v2.2.0 ./qshell-darwin-x64 batchcopy --force --overwrite bucketA bucketB tocopy.txt

操作已完成

@generalthink

This comment has been minimized.

generalthink commented Oct 24, 2018

qshell batchcopy确实可行。

但是现在如果你没有实名认证就建不了另外的bucketB,然后就会要求你去实名认证

破七牛,弃坑

@vimiix

This comment has been minimized.

vimiix commented Oct 24, 2018

是不是最近才上线的一个月到期的说法,一直用了一年多了,最近才提示剩余5天收回。
要整体换图床了~

@BIGBALLON

This comment has been minimized.

BIGBALLON commented Oct 24, 2018

@vimiix 之前我用了2年没什么问题,后来好像是被人利用传播非法色情的东西,就被告了。就要求实名认证了。

@vimiix

This comment has been minimized.

vimiix commented Oct 24, 2018

@BIGBALLON 哦哦,这样哦,好可耻。


我的数据都迁移到 Ali OSS 了,写了一个自动化迁移工具,分享给大家。

https://github.com/vimiix/move_qiniuyun_to_alioss

@veslam

This comment has been minimized.

veslam commented Nov 6, 2018

转帖七牛云工程师在工单中回复的方法,我按照方法2.1成功。

您好,
1.您绑定自定义域名后可以继续使用

2.如果您没有域名,可以用下面方法下载
有两种方式来获取文件:
1.
您需要先新建一个同区域存储空间,会分配一个新的测试域名到新空间。
通过qshell batchcopy 到有域名的同区域空间然后再进行qdownload下载操作
1)qshell listbucket 原bucket名 list.txt (list出全部文件,https://github.com/qiniu/qshell/blob/master/docs/listbucket.md)
2)cat list.txt | awk '{print $1}' >list_final.txt ( 用awk获取list结果的第一列)
3)qshell batchcopy 原bucket名 新bucket名 list_final.txt (复制到新bucket的文件和原bucket文件名一致,https://github.com/qiniu/qshell/blob/master/docs/batchcopy.md)
4)qshell qdownload newfilelist.txt (newfilelist.txt为下载的配置文档,https://github.com/qiniu/qshell/blob/master/docs/qdownload.md)

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

使用工具qrsctl
https://developer.qiniu.com/kodo/tools/1300/qrsctl
qrsctl get

@jing2si

This comment has been minimized.

jing2si commented Nov 14, 2018

参考 @veslam 的解答,我在 windows 10 中这样操作:

  1. 下载 qshell,使用命令行工具进入 qshell.exe 同一目录

  2. 密钥设置

    qshell account -- ak sk name

    个人中心 > 密钥管理 获取 ak sk,帐号名称 name 随便写

  3. 获取原空间文件名

    • 列出原空间文件列表并保存到 list.txt 文件中

      qshell listbucket 原空间名 -o list.txt
    • list.txt 文件有6列,不处理复制不了,只保留文件名这列,也就是第1列

      cat list.txt | awk '{print $1}' > list-filename.txt

      cmd.exe 没有 awk 命令,可以用 cmder,或者手动删除其它列

  4. 网页中新建存储空间,存储区域一定要和原空间一样

  5. 复制

    qshell batchcopy --force 原空间名 新空间名 -i list-filename.txt
  6. 下载

    • qshell.exe 同一目录中新建一个下载配置文件 download.txt,配置如下:

      {
        "dest_dir": "本地目录",
        "bucket": "新空间名",
        "cdn_domain": "外链默认域名"
      }
    • 执行下载命令

      qshell qdownload download.txt
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment