# ذخیره‌سازی سازگار با S3

> Zaryn را با aws-cli، rclone، restic و هر SDK سازگار با S3 به‌عنوان فضای S3 به کار ببرید. یک کلید بسازید، ابزار را به نشانی Zaryn بدهید؛ هر شیء در هر بار خواندن بررسی می‌شود و در طرح ذخیره‌سازی شما یک بار حساب می‌شود.

Source: https://zaryn.xyz/docs/fa/s3-storage

Zaryn به زبان S3 حرف می‌زند، زبانی که تقریباً همهٔ ابزارهای پشتیبان‌گیری، همگام‌سازی و SDKهای ابری از پیش بلدند. یک کلید بسازید، ابزارتان را به نشانی Zaryn بدهید، و همان‌طور کار می‌کند که با Amazon S3: سطل‌ها (باکت‌ها)، اشیا، پوشه‌ها، فایل‌های بزرگ در چند تکه.

```diagram
type: flow
title: از صفر تا نخستین پشتیبان
---
یک کلید بسازید | ذخیره‌سازی ← دسترسی S3 ← ساخت کلید. رمز را کپی کنید: فقط یک بار نشان داده می‌شود | accent | 🔑
~ نشانی + کلید
ابزار را وصل کنید | aws-cli، rclone، restic، Kopia یا SDK شما: نشانی https://s3.zaryn.xyz | | 🔧
~ PUT
ذخیره | هر شیء هنگام رسیدن هش می‌شود و در Zaryn Vault نگه داشته می‌شود | | 📦
~ GET
خواندن | پیش از فرستادن حتی یک بایت، با هش خودش بررسی می‌شود | | ✓
```

## یک کلید S3 بسازید

1. [ذخیره‌سازی](/storage#s3) را باز کنید و بخش **دسترسی S3** را پیدا کنید (در [تنظیمات](/settings) هم هست).
2. بنویسید کلید برای چیست (مثلاً *پشتیبان لپ‌تاپ*) و **ساخت کلید** را بزنید.
3. **کلید دسترسی** و **رمز** را کپی کنید. رمز فقط همین حالا نشان داده می‌شود؛ Zaryn آن را رمزگذاری‌شده نگه می‌دارد و نمی‌تواند دوباره نشانش دهد. گمش کردید؟ کلید را لغو کنید و کلید تازه‌ای بسازید.

هر حساب تا ۱۰ کلید دارد. به هر ابزار یا دستگاه کلید خودش را بدهید تا بتوانید یکی را بدون دست زدن به بقیه لغو کنید.

## aws-cli، rclone، restic یا یک SDK را وصل کنید

نشانی `https://s3.zaryn.xyz` و منطقه `zaryn` است. هر دو شیوهٔ مسیر (`s3.zaryn.xyz/bucket/key`) و زیردامنه (`bucket.s3.zaryn.xyz/key`) کار می‌کنند.

**aws-cli**

```bash
aws configure set aws_access_key_id ZK...
aws configure set aws_secret_access_key ...
aws configure set region zaryn
aws --endpoint-url https://s3.zaryn.xyz s3 mb s3://my-files
aws --endpoint-url https://s3.zaryn.xyz s3 sync ~/Pictures s3://my-files/pictures
```

**rclone** (در `~/.config/rclone/rclone.conf`)

```ini
[zaryn]
type = s3
provider = Other
endpoint = https://s3.zaryn.xyz
region = zaryn
access_key_id = ZK...
secret_access_key = ...
```

سپس `rclone sync ~/Documents zaryn:my-files/documents`.

**restic** (پشتیبان رمزگذاری‌شده و بدون تکرار)

```bash
export AWS_ACCESS_KEY_ID=ZK...
export AWS_SECRET_ACCESS_KEY=...
restic -r s3:https://s3.zaryn.xyz/my-backups init
restic -r s3:https://s3.zaryn.xyz/my-backups backup ~/Documents
```

Veeam، Synology، Kopia و بیشتر، گام‌به‌گام: [ابزارهایتان را در ۶۰ ثانیه وصل کنید](/docs/fa/connect-storage).

یا بگذارید zev همه را انجام دهد: [`zev backup`](/docs/fa/backups) کلید و سطل را می‌سازد، رمزگذاری می‌کند، تکرار را حذف می‌کند، زمان‌بندی می‌کند و هر روزی را با یک فرمان برمی‌گرداند.

**هر SDK** (اینجا boto3 پایتون؛ بقیه هم همین سه تنظیم را می‌گیرند)

```python
import boto3
s3 = boto3.client("s3", endpoint_url="https://s3.zaryn.xyz", region_name="zaryn",
                  aws_access_key_id="ZK...", aws_secret_access_key="...")
s3.upload_file("report.pdf", "my-files", "2026/report.pdf")
```

## چطور حساب می‌شود

S3 با فایل‌هایی که با پیوند هم‌رسانی می‌کنید در یک [طرح ذخیره‌سازی](/storage#plans) شریک است. شیئی که دو بار در یک سطل نگه داشته شود (یک کپی، یا همان عکس که از دو پوشه همگام شده) یک بار ذخیره و یک بار حساب می‌شود.

```diagram
type: stats
title: چه چیزی حساب می‌شود
---
یک بار | شیئی که دو بار در یک سطل باشد | همان بایت‌ها، یک نسخه | | accent
کامل | بارگذاری‌ای که هنوز چندتکه است | تا وقتی کامل یا لغو شود | |
۷ روز | تکه‌های بارگذاری‌ای که تمام نشد | سپس برایتان پاک می‌شود | |
```

وقتی طرح پر باشد، بارگذاری تازه پاسخ `QuotaExceeded` می‌گیرد. به چیزی که از پیش ذخیره شده دست زده نمی‌شود: خواندن، فهرست گرفتن و حذف کار می‌کنند.

## چه چیزی آن را متفاوت می‌کند

- **در هر خواندن بررسی می‌شود.** نام هر شیء هش BLAKE3 آن است. پیش از فرستادن حتی یک بایت، آنچه روی دیسک است با آن سنجیده می‌شود (برای اشیای بزرگ در پنجره‌های ۸ مبی‌بایتی). شیء آسیب‌دیده پس زده می‌شود و هرگز فرستاده نمی‌شود، و بررسی روزانه آن را از نسخهٔ دوم درست می‌کند.
- **در هر نوشتن بررسی می‌شود.** بارگذاری پذیرفته نمی‌شود مگر با آنچه ابزارتان می‌گوید فرستاده بخواند: SHA-256، Content-MD5 و `x-amz-checksum`.
- **امضا مثل AWS.** هر درخواست با SigV4 امضا می‌شود: با سرآیند، با نشانی از پیش امضاشده، یا بارگذاری `aws-chunked` با امضای جدا برای هر تکه.

## چه چیزهایی کار می‌کند

| | |
|---|---|
| سطل‌ها | ساخت، فهرست، حذف (وقتی خالی است)، head، منطقه |
| اشیا | put، get (با بازه)، head، حذف، حذف چندتایی، کپی |
| فهرست | نسخهٔ ۱ و ۲، با پیشوند، جداکننده (پوشه‌ها) و صفحه‌ها |
| فایل‌های بزرگ | multipart: شروع، بارگذاری تکه‌ها (تا ۱۰٬۰۰۰)، پایان، لغو، فهرست |
| قفل شیء | نگه‌داری (governance، compliance)، نگه‌داشت قانونی، پیش‌فرض سطل: ببینید [محافظت در برابر باج‌افزار](/docs/fa/ransomware-protection) |
| سقف‌ها | ۵ گیگابایت برای هر شیء، ۱۰۰ سطل و ۱۰ کلید برای هر حساب |

نسخه‌بندی خاموش است؛ به جایش یک سطل می‌تواند [سطل زباله](/docs/fa/ransomware-protection#سطل-زباله) داشته باشد که اشیای پاک‌شده و بازنویسی‌شده را نگه می‌دارد. سیاست‌های سطل، ACLها و قانون‌های چرخهٔ عمر هنوز نیامده‌اند: هر سطل مال حساب شماست و فقط کلیدهای شما می‌توانند به کارش ببرند.

مرتبط: [ذخیره و هم‌رسانی فایل‌ها](/docs/fa/storing-files)، [ذخیره‌سازی راستی‌آزمایی‌شده](/docs/fa/verified-storage).
