# 如何从我不拥有的存储桶中提取图像

**URL:** <https://meta.discourse.org/t/how-to-pull-images-from-bucket-i-dont-own/218691>\
**Category:** Product Support\
**Created:** [2022 年2 月 18 日 14:51 UTC](https://meta.discourse.org/t/how-to-pull-images-from-bucket-i-dont-own/218691 "2022-02-18T14:51:37Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

作者： ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)\
发布日期： [2022 年2 月 18 日 14:51 UTC](https://meta.discourse.org/t/how-to-pull-images-from-bucket-i-dont-own/218691/1 "2022-02-18T14:51:37Z")

</div>

我有一个网站，上面有很多图片存储在 CDCK 存储桶中。我还有一点时间将它们从该存储桶中取出并移动到本地服务器（然后再移动到另一个存储桶）。

`uploads:analyze_missing_s3` 和 `uploads:fix_missing_s3` rake 任务找不到任何问题，尽管大约有 25,000 张图片存储在远程存储桶中。

**功能建议：** 似乎 `EnsureS3UploadsExistence` 应该将上传标记为 `invalid_etag`，以表示那些不在正确存储桶中的上传（也就是说，没有该存储桶的权限？），但它并没有这样做。我认为，这个任务或其他任务能够注意到上传是否在当前站点没有控制权的存储桶中，或者可能只是站点不期望的存储桶，这才是有意义的。

我不太清楚 `verification_status` 是什么，因为它似乎并没有验证它是否是好的。

### 我尝试过的方法

```plaintext
ups=Upload.where("url like '//discourse-cloud-file-uploads.s3.dualstack.us-west-2.amazonaws.com/business6%'")                         
ups.update_all(verification_status: 3)

```

然后

```plaintext
 rake uploads:fix_missing_s3 

```

那个 rake 任务打印了关于下载图片的提示信息，但一天后当帖子被重新烘焙时，这些图片在 `raw` 中看起来像 `![zawfI7C|346x500](upload://9L0PqY4QpqLOfexXHMMbv00EgaB.jpeg)`，但链接指向：`https://test.literatecomputing.com/images/transparent.png`

---

_[View the full topic](https://meta.discourse.org/t/how-to-pull-images-from-bucket-i-dont-own/218691)._
