---
title: "MinIO Alternatives 2026: Garage, SeaweedFS, RustFS, Ceph"
description: "MinIO’s open-source repo was archived on 25 April 2026. Silo, Garage, SeaweedFS, RustFS and Ceph compared, with usable TB on 88, 264 and 528 TB servers."
url: "https://powerdedi.com/blog/minio-alternatives-self-hosted-s3"
last_updated: "2026-10-15"
publisher: "PowerDedi (https://powerdedi.com)"
---

# MinIO alternatives in 2026: self-hosted S3 after the archive

The minio/minio repository has been read-only since 25 April 2026. We compare the Silo fork, Garage, SeaweedFS, RustFS and Ceph RGW on license, redundancy and S3 coverage, size them on one storage server, price the cloud alternatives and migrate with rclone.

By PowerDedi Engineering · October 15, 2026 · 12 min read

**Share this article**

MinIO’s open-source server is no longer maintained: the minio/minio repository on GitHub was archived on 25 April 2026 and is now read-only. The realistic replacements are Silo, a community fork of the same code (AGPL-3.0); SeaweedFS and RustFS (Apache-2.0, with erasure coding); Garage (AGPL-3.0, copies spread across sites); and Ceph RGW for multi-server clusters.

## The short version

| Option | License | How it protects data | Smallest sensible setup | Status in October 2026 |
| --- | --- | --- | --- | --- |
| Silo (MinIO fork) | AGPL-3.0 | Erasure coding, MinIO’s on-disk format | One server with several drives | Forked in October 2025; latest release 16 September 2026 |
| AIStor Free (MinIO) | Free of charge; the license limits redistribution and resale | Erasure coding | Single node only | MinIO’s current product line |
| Garage | AGPL-3.0 | Full copies on different nodes; no erasure coding | Three nodes, ideally in three zones | v2.4.1, 8 September 2026 |
| SeaweedFS | Apache-2.0 | Replicated volumes; 10+4 erasure coding for warm data | One server; four to survive a server failure | 4.48, 28 September 2026 |
| RustFS | Apache-2.0 | Erasure coding in MinIO-style erasure sets | One server with several drives; four nodes or more for production | 1.0.0 on 16 September 2026, 1.0.1 on 3 October |
| Ceph RGW | LGPL-2.1 or LGPL-3 | Replicated or erasure-coded pools across hosts | k+m hosts for erasure coding: four for the default 2+2 | Tentacle (20.2), first released 18 November 2025 |

In short: Silo for the smallest change from MinIO; SeaweedFS or RustFS for erasure coding on one server under a permissive license; Garage for small servers in several cities, without versioning; Ceph for many servers and a team to run them.

## Is MinIO still maintained?

Not as open source. MinIO, Inc. now sells AIStor, and the repository’s README history and release notes show the AGPL server being wound down in steps:

- **24 May 2025.** A “Breaking Release” deprecated the embedded web console and removed LDAP and OIDC logins, which MinIO said were “now available as part of the AiStor Product.” Blocks & Files reported in June that the community console had lost its administration features, leaving a basic object browser.
- **15 October 2025.** Source-only distribution: “We will no longer provide pre-compiled binary releases for the community version.” The last community release, published on 16 October, fixed a privilege-escalation vulnerability.
- **3 December 2025.** “Maintenance Mode”: no new features or pull requests, with critical security fixes “evaluated on a case-by-case basis.”
- **23 December 2025.** MinIO announced three AIStor tiers: Free (single node), Enterprise Lite (multi-node, below 400 TiB) and Enterprise.
- **12 February 2026.** The notice became “THIS REPOSITORY IS NO LONGER MAINTAINED,” pointing to AIStor Free and AIStor Enterprise.
- **25 April 2026.** GitHub shows the repository as “archived by the owner on Apr 25, 2026. It is now read-only.”

Existing installations keep running and the code stays available under the AGPL, but no community release has shipped since October 2025, and an archived repository gets no fixes. Anything reachable from the internet should move to a maintained build or to another server.

For a single machine, MinIO’s own answer is AIStor Free: a “full-featured, single-node deployment architecture” with erasure coding, no artificial capacity limit and community support only. It costs nothing, but it is not the AGPL code: its license “limits any redistribution or resale of the AIStor software,” and running several nodes requires a paid tier.

## Silo: the community fork of MinIO

Pigsty, which uses MinIO as its PostgreSQL backup repository, forked the server as `pgsty/minio` on 25 October 2025 and renamed it `pgsty/silo` on 6 August 2026. It calls Silo “an independent, community-maintained fork,” not affiliated with MinIO, Inc. It ships what upstream stopped shipping: binaries for Linux, macOS and Windows, multi-arch containers, RPM, DEB and APK packages, security fixes with published advisories, and the full web console. It keeps the S3 API and the storage format, including `MINIO_*` variables and `.minio.sys` data, and its migration guide covers taking over an existing `minio.service`.

Its compatibility audit lists the differences. The executable is now `silo`; twelve bucket-level actions, policy, versioning, Object Lock and lifecycle writes among them, no longer match an object-only resource such as `bucket/*`; OIDC tokens signed with shared secrets are rejected; and in-place self-updates are disabled. Silo is less than a year old and run by one organization: pin versions and keep a rollback path.

## Garage vs SeaweedFS vs RustFS vs Ceph RGW

### Garage

Garage is “a lightweight geo-distributed data store that implements the Amazon S3 object storage protocol.” It keeps whole copies; erasure coding is one of its stated non-goals. The `replication_factor` can’t exceed the number of nodes: with 1, “there is no redundancy,” and the documentation reserves it for tests; with 3, each object sits on three nodes, in different zones where possible, and survives the loss of two of them.

The price of that simplicity is S3 coverage: no versioning, no Object Lock, and no bucket policies or ACLs, which Garage replaces with per-key, per-bucket permissions. Lifecycle rules handle only expiration and incomplete multipart uploads. If your backup tool depends on versioning or immutability, look elsewhere.

### SeaweedFS

SeaweedFS runs a master, volume servers, a filer and an S3 gateway. Replication is set per volume with a three-digit code for extra copies in other data centers, racks and servers; `000` keeps a single copy. Erasure coding uses 10 data and 4 parity shards: 1.4 times the data size, surviving the loss of any 4 shards, with custom ratios reserved for the Enterprise version. It applies to warm data: writes land in normal volumes, and a background worker, on by default, encodes a volume once it is 80% full and has been quiet for five minutes. With fewer than four servers, erasure coding protects against drive failures; with four or more, against server failures.

The S3 gateway supports versioning, Object Lock, bucket policies, lifecycle expiration without storage-class transitions, SSE-S3, SSE-KMS, SSE-C, IAM and STS, but not bucket replication, website or notification configuration. SeaweedFS has been developed in the open since 2014.

### RustFS

RustFS is the closest to MinIO in design: a Rust server that groups drives into erasure sets and pools following MinIO’s topology rules, with a web console, under Apache-2.0 instead of the AGPL. Its feature table lists versioning, Object Lock, server-side encryption, lifecycle management, bucket and site replication, IAM and OIDC as available. Its documentation describes three modes: one node with one disk (“rely on backups”), one node with several disks (survives up to M failed parity disks), and four or more nodes for production workloads.

Maturity is the real question in any RustFS vs MinIO comparison. RustFS reached 1.0.0 on 16 September 2026, after beta and release-candidate builds, and 1.0.1 on 3 October. Reading MinIO’s on-disk format is still a preview behind a build feature that is off by default, and objects MinIO encrypted can’t be read, so leaving MinIO means copying through the S3 API. Test a release this young with your own workload before it holds the only copy of anything.

### Ceph RGW

Ceph’s Object Gateway (RGW) adds an S3 API to a Ceph cluster, which can also serve block and file storage; the code is licensed under LGPL-2.1 or LGPL-3. Objects live in replicated or erasure-coded pools with the host as the default failure domain. The default erasure-code profile is 2+2, and most erasure-coded pools need at least k+m hosts or racks. cephadm’s `--single-host-defaults` builds a one-machine cluster with two replicas on separate disks, but the documentation calls such clusters “generally not suitable for production.” RGW’s S3 support is extensive, Object Lock included, though bucket replication works only across zones.

### S3 features side by side

| Feature | Silo | Garage | SeaweedFS | RustFS | Ceph RGW |
| --- | --- | --- | --- | --- | --- |
| Versioning | Yes | No | Yes | Yes | Yes |
| Object Lock | Yes | No | Yes | Yes | Yes |
| Bucket policies | Yes, with stricter matching | No: per-key permissions | Yes | Yes | Yes |
| Lifecycle rules | Yes | Expiration only | Yes, without transitions | Yes, including tiering to remote S3 | Yes |
| Bucket replication | Yes | No | Not through the S3 API | Yes, plus site replication | Across zones only |

## Replication, erasure coding or RAID on one server

All three spend raw capacity on redundancy, in different proportions:

- **Replication** keeps whole copies: 2 TB of raw disk per usable terabyte with two copies, 3 TB with three.
- **Erasure coding** splits each object into k data and m parity shards and survives the loss of any m: (k+m)/k of raw disk per usable terabyte, so 1.5 for 8+4 and 1.4 for 10+4.
- **RAID 6 or ZFS RAIDZ2** keeps two parity blocks per group of disks and survives two failed disks per group: n/(n−2) for a group of n disks, so 1.5 for six disks and 1.2 for twelve.

On one machine, copies and shards must land on different drives. Silo, AIStor Free and RustFS stripe every object across an erasure set of drives from the first write: a 12-drive set with 4 parity shards loses nothing with any 4 drives gone. SeaweedFS erasure-codes full volumes, but recent writes wait in ordinary volumes, protected only by their replication setting. Garage counts copies per node, so a one-node Garage keeps a single copy: put its data on RAIDZ2 or RAID 6, or add nodes. Ceph needs the single-host defaults described above. None of them survives the loss of the server itself.

## Usable capacity on 88, 264 and 528 TB servers

Our three storage servers use 22 TB hard drives, four, twelve or twenty-four of them, plus two NVMe drives each for the system and metadata:

| Layout | Raw TB per usable TB | 88 TB (4 drives) | 264 TB (12 drives) | 528 TB (24 drives) | Drive failures survived |
| --- | --- | --- | --- | --- | --- |
| Three copies | 3.0 | 29.3 TB | 88 TB | 176 TB | Any 2 |
| Two copies (mirrors) | 2.0 | 44 TB | 132 TB | 264 TB | 1 per pair |
| Erasure coding: 2+2 on 4 drives, 8+4 sets on 12 or 24 | 2.0 or 1.5 | 44 TB | 176 TB | 352 TB | 2, or 4 per set |
| Erasure coding 10+4 (SeaweedFS) | 1.4 | 62.9 TB (see note) | 188.6 TB | 377.1 TB | Any 4 of 14 shards |
| RAIDZ2 or RAID 6 in groups of 4, 6 and 8 disks | 2.0, 1.5 or 1.33 | 44 TB | 176 TB | 396 TB | 2 per group |
| RAIDZ2 or RAID 6 in groups of 12 disks | 1.2 | — | 220 TB | 440 TB | 2 per group |

Decimal terabytes, before filesystem overhead; Linux reports a 22 TB drive as about 20 TiB. Note: on four drives, SeaweedFS’s 14 shards put three or four on each drive, so a second failed drive loses data.

Cost per usable terabyte is the monthly price divided by the usable figure. On the 264 TB server at $469 a month, a usable terabyte costs 2.5 times more with three copies (88 TB) than with 12-disk RAIDZ2 (220 TB), and 8+4 erasure coding makes it 25% cheaper than two copies. Drive count matters as much as raw size: at two-drive fault tolerance, four drives leave half their capacity usable, twelve or more leave two-thirds or more. Rebuilds matter too: refilling a 22 TB drive at an assumed 200 MB/s takes about 30 hours, so we would not run drives this size with less than two-drive fault tolerance.

## Self-hosted versus S3, R2 and B2

Public list prices as of October 2026, excluding taxes:

| Service | Storage | Data out to the internet | Requests |
| --- | --- | --- | --- |
| AWS S3 Standard, US East (N. Virginia) | $0.023 per GB-month for the first 50 TB, $0.022 for the next 450 TB, $0.021 beyond | $0.09 per GB for the first 10 TB beyond the free tier, then $0.085, $0.07 and $0.05 by tier | $0.005 per 1,000 PUT, COPY, POST or LIST; $0.004 per 10,000 GET |
| Cloudflare R2 Standard | $0.015 per GB-month | Free | $4.50 per million Class A, $0.36 per million Class B |
| Backblaze B2 | $6.95 per TB-month | Free up to three times the average data stored, then $0.01 per GB | Classes A, B and C free; Class D $0.004 per 10,000 |
| PowerDedi 264 TB server | $469 a month for 176–220 TB usable | Included, on a 10 Gbps unmetered port | None |

Take 176 TB stored and 50 TB served each month, the usable space of the 264 TB server with 8+4 erasure coding, counting 1 TB as 1,000 GB:

- **AWS S3:** about $3,920 for storage and $4,300 for data transfer, so about $8,200 a month before requests.
- **Cloudflare R2:** about $2,640 a month plus operations, with no egress fees.
- **Backblaze B2:** about $1,220 a month; 50 TB of egress is inside the free allowance.
- **One 264 TB server:** $469 a month, whatever the traffic.

This is not like for like: AWS says S3 “stores data redundantly across a minimum of 3 Availability Zones by default,” while one server is one machine in one building. For data you can’t lose, compare against two servers in two cities, which on these numbers still costs less than B2. With only a few terabytes and little traffic, B2 or R2 costs less than any dedicated storage server. Our [guide to bandwidth billing](https://powerdedi.com/blog/unmetered-vs-95th-percentile-bandwidth-billing) shows how egress charges grow with volume.

## Migrating from MinIO with rclone

If you stay on MinIO’s format, Silo can take over the existing data in place, following its migration guide. For any other server, copy the objects through the S3 API with rclone.

**1. Note what won’t be copied.** Users, access keys, bucket policies, lifecycle rules and replication settings must be recreated on the new server. In versioned buckets, rclone copies the current version of each object; older versions only appear, as renamed files, with `--s3-versions`. Object Lock retention can follow with `--metadata` and the value `copy`, if the destination supports it.

**2. Define both endpoints** in `~/.config/rclone/rclone.conf`. The source follows rclone’s MinIO example; the destination here is Garage, which takes `provider = Other`, path-style requests and its own region name. For SeaweedFS use `provider = SeaweedFS`, and for Ceph `provider = Ceph` with an empty region.

```ini
[old]
type = s3
provider = Minio
env_auth = false
access_key_id = OLD_ACCESS_KEY
secret_access_key = OLD_SECRET_KEY
region = us-east-1
endpoint = http://minio.example.net:9000

[new]
type = s3
provider = Other
env_auth = false
access_key_id = NEW_ACCESS_KEY
secret_access_key = NEW_SECRET_KEY
region = garage
endpoint = http://storage.example.net:3900
force_path_style = true
```

**3. Preview, copy and verify** one bucket at a time. With S3 on both sides, rclone’s documentation recommends `--checksum`.

```bash
# buckets on each side
rclone lsd old:
rclone lsd new:

# preview, then copy one bucket
rclone sync old:backups new:backups --checksum --fast-list --transfers 32 --checkers 64 -P --dry-run
rclone sync old:backups new:backups --checksum --fast-list --transfers 32 --checkers 64 -P

# compare sizes and hashes on both sides
rclone check old:backups new:backups
```

**4. Tune and cut over.** rclone’s defaults are conservative, so raise `--transfers` and `--checkers` and experiment; `--fast-list` costs about 1 GiB of RAM per million objects. Repeat the sync until little is left, stop writes, run it once more and switch the endpoint. `sync` deletes destination objects that are missing from the source, so check bucket names twice.

**5. Budget the time.** Between two different servers, every object is downloaded and re-uploaded by the machine running rclone. At an effective 1 Gbps, 100 TB takes about nine days; at 5 Gbps, under two. The old server’s disks or uplink usually set the pace, not a 10 Gbps destination port.

## What one storage server can’t do

- **One server is one failure domain.** Erasure coding and RAID survive failed drives, not a failed motherboard, power supply or building, or an administrator’s mistake. RustFS’s documentation is blunt about single-node setups: “if the entire server fails or more than M disks are damaged, data will be lost.”
- **Redundancy is not a backup.** A deleted bucket disappears from every drive at once. Versioning and Object Lock help; an independent copy elsewhere is what makes mistakes recoverable.
- **Critical data needs a second site.** That can be a second storage server in another city, Amsterdam and Frankfurt for example, filled by a scheduled `rclone copy`, which never deletes, or by bucket replication. Or a Garage cluster of three 88 TB servers in Amsterdam, Frankfurt and Zürich with `replication_factor = 3`: one copy per city and about 88 TB usable.

## Which server for self-hosted S3 storage

The [88 TB storage server](https://powerdedi.com/dedicated-servers/storage/88tb) costs $149 a month and is delivered in about 15 minutes in Amsterdam, Frankfurt, Zürich and New York. It suits a Garage node or a backup target, with 44 TB usable at two-drive fault tolerance. The [264 TB server](https://powerdedi.com/dedicated-servers/storage/264tb), $469 a month and built within 24 hours in Amsterdam, Frankfurt and New York, has enough drives for 8+4 erasure coding or 12-disk RAIDZ2 on one machine. The [528 TB server](https://powerdedi.com/dedicated-servers/storage/528tb), $999 a month and built within 72 hours in Amsterdam and Frankfurt, adds a 24-core EPYC and 256 GB of ECC memory for larger erasure sets.

All three have ECC memory, two NVMe drives, IPMI access and a [10 Gbps unmetered port](https://powerdedi.com/network/10gbps-unmetered), so a 100 TB restore costs the same as an idle month. For ZFS or mdadm layouts, see our [software RAID guide](https://powerdedi.com/docs/software-raid); for backup designs, [storage and backup servers](https://powerdedi.com/solutions/storage-backup). We are not the right fit for a few terabytes, where B2 or R2 costs less, or for durability across several facilities without operating anything yourself: that is a managed object store’s job.

## Sources

- [minio/minio](https://github.com/minio/minio), its [README history](https://github.com/minio/minio/commits/master/README.md) and [Releases · minio/minio](https://github.com/minio/minio/releases) — MinIO on GitHub
- [Introducing New Subscription Tiers for MinIO AIStor: Free, Enterprise Lite, and Enterprise](https://min.io/blog/introducing-new-subscription-tiers-for-minio-aistor-free-enterprise-lite-and-enterprise) — MinIO, 23 December 2025
- [MinIO users complain after admin UI removed from Community Edition](https://blocksandfiles.com/2025/06/19/minio-removes-management-features-from-basic-community-edition-object-storage-code/) — Blocks & Files, 19 June 2025
- [pgsty/silo](https://github.com/pgsty/silo) and [Silo vs. MinIO Server Compatibility](https://silo.pgsty.com/compatibility/server/) — PGSTY
- [Configuration file format](https://garagehq.deuxfleurs.fr/documentation/reference-manual/configuration/), [S3 Compatibility status](https://garagehq.deuxfleurs.fr/documentation/reference-manual/s3-compatibility/) and [Goals and use cases](https://garagehq.deuxfleurs.fr/documentation/design/goals/) — Garage documentation; [Deuxfleurs/garage](https://git.deuxfleurs.fr/Deuxfleurs/garage) — Forge Deuxfleurs
- [Erasure Coding for warm storage](https://github.com/seaweedfs/seaweedfs/wiki/Erasure-coding-for-warm-storage), [Replication](https://github.com/seaweedfs/seaweedfs/wiki/Replication) and [Amazon S3 API](https://github.com/seaweedfs/seaweedfs/wiki/Amazon-S3-API) — SeaweedFS wiki; [seaweedfs/seaweedfs](https://github.com/seaweedfs/seaweedfs) — GitHub
- [rustfs/rustfs](https://github.com/rustfs/rustfs) — GitHub; [Installation](https://docs.rustfs.com/en/installation) — RustFS documentation
- [Erasure code](https://docs.ceph.com/en/latest/rados/operations/erasure-code/), [Using Cephadm to Deploy a New Ceph Cluster](https://docs.ceph.com/en/latest/cephadm/install/), [Ceph Object Gateway S3 API](https://docs.ceph.com/en/latest/radosgw/s3/), [Bucket Operations](https://docs.ceph.com/en/latest/radosgw/s3/bucketops/) and [Ceph Releases (index)](https://docs.ceph.com/en/latest/releases/) — Ceph documentation; [COPYING](https://github.com/ceph/ceph/blob/main/COPYING) — ceph/ceph on GitHub
- [Amazon S3](https://rclone.org/s3/) and [rclone sync](https://rclone.org/commands/rclone_sync/) — rclone documentation
- [AWS Price List: Amazon S3, US East (N. Virginia)](https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AmazonS3/current/us-east-1/index.json), published 14 October 2026; [AWS Price List: data transfer, US East (N. Virginia)](https://pricing.us-east-1.amazonaws.com/offers/v1.0/aws/AWSDataTransfer/current/us-east-1/index.json), published 16 September 2026; [Object Storage Classes](https://aws.amazon.com/s3/storage-classes/) — Amazon Web Services
- [Pricing](https://developers.cloudflare.com/r2/pricing/) — Cloudflare R2 docs, last updated 1 October 2026
- [B2 Cloud Storage Pricing](https://www.backblaze.com/cloud-storage/pricing) — Backblaze, checked October 2026

**Share this article**

PowerDedi Engineering

The team that builds, racks and runs every PowerDedi server. We write about the hardware, networks and costs we deal with every day, and we cite our sources.

**Dedicated servers**

$55/mo and up

About 40% below the market, with a 10 Gbps unmetered port on every server. Paid in crypto.

[Browse servers](https://powerdedi.com/dedicated-servers)

**More from the blog**

- [Guides](https://powerdedi.com/blog/ton-node-requirements)
  October 21, 2026
  **TON node requirements in 2026: full node, liteserver, validator**
- [Comparisons](https://powerdedi.com/blog/crypto-dedicated-server-providers-compared)
  October 15, 2026
  **Dedicated servers paid in crypto: 14 providers compared (October 2026)**
- [Comparisons](https://powerdedi.com/blog/hetzner-alternatives-2026)
  October 15, 2026
  **Hetzner alternatives in 2026: crypto payment, 10 Gbps, no setup fees**
- [Comparisons](https://powerdedi.com/blog/ovhcloud-alternatives-2026)
  October 15, 2026
  **Does OVHcloud accept crypto? OVHcloud alternatives in 2026**

## Related articles

[All articles](https://powerdedi.com/blog)

[Guides](https://powerdedi.com/blog/category/guides)

October 15, 2026

### [Unmetered, 95th percentile or per-TB: how server bandwidth is billed](https://powerdedi.com/blog/unmetered-vs-95th-percentile-bandwidth-billing)

Unmetered ports, 95th percentile billing, per-terabyte allowances and cloud egress fees: how each model measures your traffic, what it costs at 50 TB, 200 TB and 1 PB a month, and the questions to ask before you sign.

6 min read

[Market](https://powerdedi.com/blog/category/market)

September 22, 2026

### [What a 10 Gbps unmetered port really costs in 2026](https://powerdedi.com/blog/unmetered-bandwidth-survey-2026)

Across 19 providers that sell it, a 10 Gbps unmetered port adds a median of about $630 a month. What that buys, how the alternatives are billed, what cloud egress costs and how to test a port.

6 min read

[Guides](https://powerdedi.com/blog/category/guides)

October 15, 2026

### [How many viewers can a 10 Gbps streaming server handle?](https://powerdedi.com/blog/streaming-server-viewers-per-10gbps)

Viewers = usable capacity ÷ bitrate. Viewer counts from 4K to audio-only on a 10 Gbps port, monthly traffic and CDN prices, x264 presets versus NVENC, Owncast, MediaMTX, SRS and nginx-rtmp, HLS and LL-HLS, and an origin-and-edges design.

10 min read

## Your next server is 15 minutes away.

From $55/month with 10 Gbps unmetered, no setup fee and no contract.

[Browse servers](https://powerdedi.com/dedicated-servers) [All articles](https://powerdedi.com/blog)

Live in ~15 min · Cancel anytime · BTC, ETH, XMR, USDT or SOL

---

PowerDedi — Dedicated servers with 10 Gbps unmetered, paid in crypto. Page: https://powerdedi.com/blog/minio-alternatives-self-hosted-s3. Index of the site for AI assistants: https://powerdedi.com/llms.txt
