# Backblaze - b2 vs s3

**URL:** <https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343>\
**Category:** General Topics\
**Created:** [October 5, 2023, 4:32pm UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343 "2023-10-05T16:32:36Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![caseyr](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/caseyr/32/574_2.png) [@caseyr](https://kopia.discourse.group/u/caseyr)\
**Post date:** [October 5, 2023, 4:32pm UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/1 "2023-10-05T16:32:36Z")

</div>

I’ve been using Kopia for a number of months now, connected to a repo hosted in Backblaze. I set things up using the b2 provider but have seen some things in threads suggesting s3 might be a better option and also s3 as better for ransomware protections. Is it mostly a subjective choice or is s3 objectively “better” and if so, is changing my config to use s3 something simple/straightforward to do or would I need to kind of start from scratch using s3 from the start?

---

<div class="post-metadata">

**Author:** ![Mxx](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/mxx/32/776_2.png) [@Mxx](https://kopia.discourse.group/u/Mxx)\
**Post date:** [October 6, 2023, 10:49pm UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/2 "2023-10-06T22:49:14Z")

</div>

B2 also has some protections against ransomware.

> **[Complete Guide to Ransomware: How to Recover and Prevent an Attack](https://www.backblaze.com/blog/complete-guide-ransomware/)**
>
> Ransomware is growing every year. We take a look at what it is, how to recover from an attack, and how to prevent attacks from happening.

> **[How Object Lock Protects Your Data From Ransomware](https://www.backblaze.com/blog/object-lock-101-protecting-data-from-ransomware/)**
>
> Ransomware attacks can be devastating, but your story doesn’t have to end with you shelling out headline-grabbing sums.

It’s not that S3 has better protections, but that Kopia’s native B2 protocol doesn’t support it(for now?).  
However, if you create your B2 repo using S3 protocol, according to the documentation [Repositories | Kopia](https://kopia.io/docs/repositories/#backblaze-b2) you can use that feature as well.

---

<div class="post-metadata">

**Author:** ![caseyr](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/caseyr/32/574_2.png) [@caseyr](https://kopia.discourse.group/u/caseyr)\
**Post date:** [October 7, 2023, 12:00am UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/3 "2023-10-07T00:00:15Z")

</div>

Thanks, useful info. I’m guessing from how you phrased it that I can’t simply change the config to use s3 but would have to rebuild the repo as s3, is that accurate?

---

<div class="post-metadata">

**Author:** ![Mxx](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/mxx/32/776_2.png) [@Mxx](https://kopia.discourse.group/u/Mxx)\
**Post date:** [October 7, 2023, 12:19am UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/4 "2023-10-07T00:19:12Z")

</div>

I’m not sure. I’ve never done that since I started using Kopia only recently too.  
But that documentation states:

For B2

> NOTE: Currently, object locking is supported for Backblaze B2 but only through Kopia’s [S3-compatible storage `repository`](https://kopia.io/docs/repositories/#amazon-s3-and-s3-compatible-cloud-storage) and not through the Backblaze B2 `repository` option. However, Backblaze B2 is fully S3 compatible, so you can setup your Backblaze B2 account via Kopia’s [S3 `repository` option](https://kopia.io/docs/repositories/#amazon-s3-and-s3-compatible-cloud-storage).

* * *

For S3

> NOTE: Some settings, such as object locking and [actions](https://kopia.io/docs/advanced/actions/), can only be enabled when you create a new `repository` using command-line (see next section). However, once you create the `repository` via command-line, you can use the `repository` as normal in Kopia GUI: just connect to the `repository` as described above after you have created it in command-line.

I searched documentation and CLI’s help how to enable object locking but either I missed it or it’s not documented.  
There’s also [snapshot migrate | Kopia](https://kopia.io/docs/reference/command-line/common/snapshot-migrate/) command, but the documentation is pretty sparse and I don’t know if it’ll let you migrate into object-locked repo or any other caveats and nuances to be aware of.

---

<div class="post-metadata">

**Author:** ![Mxx](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/mxx/32/776_2.png) [@Mxx](https://kopia.discourse.group/u/Mxx)\
**Post date:** [October 7, 2023, 12:25am UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/5 "2023-10-07T00:25:46Z")

</div>

Actually I just found this article

> **[Ransomware Protection](https://kopia.io/docs/advanced/ransomware-protection/)**
>
> Fast and Secure Open-Source Backup Software for Windows, Mac, and Linux

---

<div class="post-metadata">

**Author:** ![caseyr](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/caseyr/32/574_2.png) [@caseyr](https://kopia.discourse.group/u/caseyr)\
**Post date:** [October 7, 2023, 1:47am UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/6 "2023-10-07T01:47:18Z")

</div>

Looks like it’s this part:

- Enable Object Lock extension
  - Run: `kopia maintenance set --extend-object-locks true`
    - Note that the `full-interval` must be at least 1 day shorter than the `retention-period` or Kopia will not allow you to enable Object Lock extension

---

<div class="post-metadata">

**Author:** ![Mxx](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/mxx/32/776_2.png) [@Mxx](https://kopia.discourse.group/u/Mxx)\
**Post date:** [October 8, 2023, 6:10am UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/7 "2023-10-08T06:10:33Z")

</div>

So then it looks like another documentation inconsistency. One place says it can be enabled only when you create a repository and what you pasted says it can be done with `maintenance` command.  
Unless they do different things. 🤷

---

<div class="post-metadata">

**Author:** ![dimejo](https://yyz2.discourse-cdn.com/free1/user_avatar/kopia.discourse.group/dimejo/32/287_2.png) [@dimejo](https://kopia.discourse.group/u/dimejo)\
**Post date:** [October 9, 2023, 7:18am UTC](https://kopia.discourse.group/t/backblaze-b2-vs-s3/2343/8 "2023-10-09T07:18:10Z")

</div>

> Object Locks must be enabled when a bucket is created. If you already have backups in the cloud, you will need to create a new bucket with Object Locks turned on (NOTE: On Backblaze S3, object-lock can be enabled on existing buckets via `b2 update bucket`). Once a bucket has Object Lock enabled, it cannot be disabled.

I think this paragraph refers to the storage provider, not your Kopia repository. [AWS S3 documentation](https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-overview.html#object-lock-bucket-config) states:

> If you create a bucket with Object Lock enabled, you can’t disable Object Lock or suspend versioning for the bucket.
