# aws-cli ve rclone ile Gyro Nesne Depolama'ya (S3) bağlanma

https://www.gyrohosting.com/bilgi-bankasi/makale/s3-aws-cli-rclone

- **Bu rehberde ne öğreneceksiniz**: aws-cli ve rclone'u bir kez yapılandırıp kovalarınızı listelemeyi, dosya yüklemeyi, klasör eşitlemeyi ve en sık görülen bağlantı hatalarını çözmeyi.
- **Süre**: 10 dakika
- **Kimin için**: Komut satırından ya da betiklerle (cron, yedek işi) Nesne Depolama kullanacaklar.
- **Gerekenler**: Aktif bir Nesne Depolama hizmeti, bir erişim anahtarı (Access Key ID + Secret Access Key) ve bilgisayarınızda ya da sunucunuzda aws-cli veya rclone.

## 1. Bağlantı bilgileri

Tüm S3 uyumlu araçlar için gereken bilgiler aynıdır:

| Ayar | Değer |
| --- | --- |
| Uç nokta (endpoint) | `https://s3.gyrohosting.com` |
| Bölge (region) | `tr-ist-1` |
| Adresleme | Yol stili (`s3.gyrohosting.com/kova`) ve sanal sunucu stili (`kova.s3.gyrohosting.com`) ikisi de çalışır |
| Kimlik | Panelden aldığınız **Erişim anahtarı (Access Key ID)** ve **Gizli anahtar (Secret Access Key)** |

Bu bilgiler ve kendi anahtar kimliğinizle doldurulmuş hazır örnekler hizmetinizin **Yönetim** sekmesinde, **Bağlantı bilgileri** sayfasındadır. Gizli anahtarın yerinde `<GIZLI_ANAHTAR>` yazar; gizli anahtarı yalnız oluşturduğunuzda görürsünüz.

![Bağlantı bilgileri: uç nokta ve bölge ile kendi anahtarınızla doldurulmuş aws-cli ve rclone örnekleri (gizli anahtarın yerinde <GIZLI_ANAHTAR> yazar).](https://www.gyrohosting.com/resources/uploads/bilgi-merkezi/H01-05-tr.webp)

Anahtarınız yoksa ya da her sunucu için ayrı, kısıtlı bir anahtar istiyorsanız: [Erişim anahtarları ve kova bazında izinler](https://www.gyrohosting.com/bilgi-bankasi/makale/s3-erisim-anahtarlari-ve-izinler).

## 2. Başlamadan önce

- **Anahtarı dosyada güvenle tutun.** Gizli anahtarı betiğin içine yazmak yerine aşağıdaki yapılandırma dosyalarına koyun ve dosyayı yalnız sizin okuyabileceğiniz yapın (`chmod 600`).
- **Her sunucuya ayrı anahtar.** Yedek alan sunucuya yalnız yedek kovasına erişen bir anahtar verin.
- **Kova adını paneldeki gibi yazın.** Kovanın adını panelden değiştirirseniz bu ayarları da güncelleyin.

## 3. aws-cli

### 3.1 Bir kez yapılandırın

`~/.aws/credentials` dosyasına anahtarınızı ekleyin:

```
[gyro]
aws_access_key_id = <ERISIM_ANAHTARI>
aws_secret_access_key = <GIZLI_ANAHTAR>
```

`~/.aws/config` dosyasına bölge ve uç noktayı ekleyin:

```
[profile gyro]
region = tr-ist-1
endpoint_url = https://s3.gyrohosting.com
```

`endpoint_url` satırı sayesinde her komutta adresi yazmanız gerekmez. Eski bir aws-cli sürümü bu satırı tanımıyorsa satırı silin ve her komuta `--endpoint-url https://s3.gyrohosting.com` ekleyin.

### 3.2 Sık kullanılan komutlar

```
# kovaları listele
aws --profile gyro s3 ls

# bir klasörün içini listele
aws --profile gyro s3 ls s3://firma-yedek/yedek/2026/

# dosya yükle
aws --profile gyro s3 cp yedek.tar.gz s3://firma-yedek/2026/

# dosya indir
aws --profile gyro s3 cp s3://firma-yedek/2026/yedek.tar.gz ./

# klasörü eşitle (yalnız değişenler gider; önce --dryrun ile deneyin)
aws --profile gyro s3 sync ./yedekler s3://firma-yedek/yedekler/ --dryrun
aws --profile gyro s3 sync ./yedekler s3://firma-yedek/yedekler/

# dosya sil
aws --profile gyro s3 rm s3://firma-yedek/2026/eski.tar.gz
```

Büyük dosyaları aws-cli kendiliğinden parçalara bölerek yükler. Panelden dosya başına 5 GB sınırı vardır; komut satırında bu sınır yoktur.

> **Bilgi**
> 
> aws-cli 2.x ek ayar gerektirmez. Bir istemci sağlama toplamı (checksum) hatası verirse şu iki ortam değişkenini ayarlayın: `AWS_REQUEST_CHECKSUM_CALCULATION=when_required` ve `AWS_RESPONSE_CHECKSUM_VALIDATION=when_required`.

## 4. rclone

### 4.1 Bir kez yapılandırın

`~/.config/rclone/rclone.conf` dosyasına ekleyin (rclone 1.60 ve üstü):

```
[gyro]
type = s3
provider = Other
access_key_id = <ERISIM_ANAHTARI>
secret_access_key = <GIZLI_ANAHTAR>
endpoint = https://s3.gyrohosting.com
region = tr-ist-1
force_path_style = true
```

Sanal sunucu stilini tercih ederseniz `force_path_style = false` yapabilirsiniz; ikisi de çalışır.

### 4.2 Sık kullanılan komutlar

```
rclone lsd gyro:                                   # kovaları listele
rclone ls gyro:firma-yedek/veritabani              # dosyaları listele
rclone copy ./fotograflar gyro:firma-medya/fotograflar --progress
rclone sync /var/backups gyro:firma-yedek/sunucu1 --progress --dry-run
rclone check /var/backups gyro:firma-yedek/sunucu1  # yerel ile kovayı karşılaştır
```

> **Dikkat**
> 
> `rclone sync` hedefte kaynakta olmayan dosyaları **siler**. Bu hizmette sürümleme yoktur; silinen dosya geri gelmez. Yeni bir eşitleme kurarken önce `--dry-run` ile deneyin, eski yedekleri korumak istiyorsanız `copy` kullanın.

### 4.3 Gece yedeği örneği (cron)

Her gece 03:00'te `/var/backups` klasörünü kovaya kopyalayan bir satır:

```
0 3 * * * rclone copy /var/backups gyro:firma-yedek/sunucu1 --log-file /var/log/rclone-yedek.log
```

Eski yedekleri belirli gün sonra otomatik silmek için panelde **Yaşam döngüsü** kuralı kullanın (ör. önek `sunucu1/`, 30 gün).

## 5. Kova listesinde fazladan adlar görüyorum

`aws s3 ls` ya da `rclone lsd` ile kovaları listelediğinizde her kova, sistem adlarıyla (`s3-…` ile başlayan ad ve web adresindeki `<kova>-<kod>` ad) birlikte görünebilir. **Hepsi aynı kovadır.** Uygulamalarınızda ve komutlarda paneldeki adı kullanın.

## 6. Sorun giderme

| Hata | Olası neden | Çözüm |
| --- | --- | --- |
| `AccessDenied: Forbidden: No such key` | Erişim anahtarı yanlış, silinmiş ya da yenilenmiş | Anahtar kimliğini panelle karşılaştırın; gerekirse yeni anahtar oluşturun. |
| `AccessDenied: Forbidden: Invalid signature` | Gizli anahtar yanlış kopyalanmış (başta/sonda boşluk) | Gizli anahtarı yeniden yapıştırın; kaybettiyseniz anahtarı **Yenile**'yle değiştirin. |
| `AuthorizationHeaderMalformed … expected: …/tr-ist-1/…` | Bölge `us-east-1` ya da başka bir değer kalmış | Bölgeyi `tr-ist-1` yapın. |
| `NoSuchBucket` | Kova adı yanlış ya da kovanın adı değiştirildi | Paneldeki **Kovalar** sayfasındaki adı kullanın. |
| Yükleme `403` ile reddediliyor | Anahtarın o kovada yazma izni yok ya da paket kotası dolu | **Erişim anahtarları** sayfasındaki izin tablosuna ve **Kovalar** sayfasındaki toplam kullanıma bakın. |
| Bağlantı zaman aşımı | Uç nokta yanlış ya da sunucunuzun dışarı bağlantısı kapalı | Uç noktanın `https://s3.gyrohosting.com` olduğunu, sunucunuzdan 443 numaralı porta çıkış olduğunu kontrol edin. |
| İndirme çok yavaş, arada `503` | Bu ayın trafik hakkı dolmuş, hız sınırlandı | aws-cli ve rclone yeniden deneyerek tamamlar. Ek trafik paketi için: [Trafik hakkı, hız sınırı ve ek trafik paketi](https://www.gyrohosting.com/bilgi-bankasi/makale/s3-trafik-ve-ek-paket). |
| Sağlama toplamı (checksum) hatası | Yeni istemci sürümlerinin varsayılan ayarı | Bölüm 3.2'deki iki ortam değişkenini ayarlayın. |

> **Biliyor muydunuz?**
> 
> Kovalarınızı, dosyalarınızı ve kova adlarınızı `gyro` CLI ile de yönetebilirsiniz (ör. `gyro storage bucket list`, `gyro storage object list`). Bu araç S3 anahtarı yerine Gyro API anahtarıyla çalışır ve paneldeki işlerin tamamını betiklere taşır.

## 7. Sık sorulan sorular

**Başka hangi araçlar çalışır?**

S3 uyumlu her araç: restic, Veeam Backup & Replication (12 ve üstü), cPanel/WHM yedek hedefi ve S3 destekli yedek ya da medya eklentileri. Uç nokta, bölge ve anahtarı bu rehberdeki gibi girin. **Bağlantı bilgileri** sayfasında restic, Veeam ve cPanel için hazır ayarlar vardır.

**Yükleme ve API istekleri ücretli mi?**

Hayır. Yalnız kovadan dışarı indirilen veri aylık trafik hakkınızdan düşer.

**Komut satırından yüklenebilecek en büyük dosya ne kadar?**

Panelden dosya başına 5 GB yüklenebilir. aws-cli ve rclone büyük dosyaları parçalara bölerek yükler; tek dosya için pratikte paket kotanız sınırdır.

**Nesne kilidi (Object Lock) ya da sürümleme ayarı açmalı mıyım?**

Bu hizmette nesne kilidi ve sürümleme yoktur. Veeam gibi araçlarda değişmezlik (immutability) seçeneğini **kapalı** bırakın.

**Dosyaları herkese açık yapmak için --acl public-read kullanabilir miyim?**

Hayır, ACL ayarları yok sayılır. Herkese açık okuma için [statik web sitesi](https://www.gyrohosting.com/bilgi-bankasi/makale/s3-statik-web-sitesi) ya da süreli paylaşım bağlantısı kullanın.

**Alternatif bir uç nokta var mı?**

**Bağlantı bilgileri** sayfasında yalnız yol stilini destekleyen ikinci bir adres de yazar. Ana adres `https://s3.gyrohosting.com`'dur.

## Sıradaki adım

- **Kovayı web sitesi olarak yayınlayın:** [Kovadan statik web sitesi ve kendi alan adı](https://www.gyrohosting.com/bilgi-bankasi/makale/s3-statik-web-sitesi).
- Henüz Nesne Depolama hizmetiniz yok mu? **S3 Mini 250 GB** ayda 3,49 €'dan başlar: [Nesne Depolama paketleri](https://www.gyrohosting.com/nesne-depolama)
