SSD Nodes Learn 🎉 VPS $4.99/aydan başlayan
Rehberler Matt ConnorYazan Matt Connor · Güncellendi 2026-08-05

Self-hosted Dropbox alternatifleri: Hangisi seçilmeli?

Nextcloud, Seafile, Syncthing ve object storage karşılaştırılıyor: senkronizasyon topolojisi, küçük bir VPS'teki gerçek maliyet ve senkronizasyonun neden yedek olmadığı açıklanıyor.

Hangi self-hosted Dropbox alternatifi kullanılmalı?

Dikkate alınmaya değer dört self-hosted Dropbox alternatifi vardır: Nextcloud, Seafile, Syncthing ve üzerinde bir istemci çalıştırılan object storage. Bunlar birbirinin yerine kullanılamaz. Nextcloud, başkalarının dosya alması gereken bir ev veya küçük ekip için uygundur. Seafile, diskteki verilerin nasıl göründüğünden çok senkronizasyon hızının önemli olduğu, çok sayıda küçük dosyayı senkronize eden kişi veya ekipler için uygundur. Syncthing, dışarıdan hiç kimsenin bağlantıya ihtiyaç duymadığı ve bir kişinin kendi cihazlarını senkronize ettiği durumlar için uygundur. Object storage ise nadiren açılan, düşük maliyetli bir arşiv için uygundur.

Özellikleri karşılaştırmadan önce senkronizasyonun nasıl çalıştığına göre seçim yapılmalıdır. Özellik listeleri birbirine benzer. Her makinenin üzerinde bulunan kopyanın hangi makinedeki kopyayla eşleştiğini ifade eden topoloji, altı ay sonra hâlâ memnun olup olmayacağınızı belirler.

Senkronizasyon topolojisi: kayıt sunucusu veya sunucusuz eşler

İki tasarım söz konusudur ve aşağıdaki açıklamaların büyük bölümü hangisini seçtiğinize bağlıdır.

Kayıt sunucusu. Nextcloud, Seafile ve object storage bu şekilde çalışır. Genellikle VPS (virtual private server) olan bir makine, yetkili kopyayı tutar. Her cihaz bu makineyle iletişim kurar. Dizüstü bilgisayarınız bir ay boyunca kapalı kalıp yeniden açıldığında kendi kendine güncel duruma gelebilir. 6 GB boş alanı olan bir telefon, verilerin bir alt kümesini tutabilirken sunucu her şeyi saklayabilir. Bir tarayıcı dosyalara erişebilir; paylaşım bağlantılarının kullanılabilmesinin nedeni budur.

Sunucusuz eşler. Syncthing bu şekilde çalışır. Cihazlar birbirini bulur ve dosya listelerini şifreli bağlantı üzerinden doğrudan değiş tokuş eder. Hiçbir kopya yetkili değildir: Bir dosya, onu tutan cihazlarda vardır ve başka hiçbir yerde bulunmaz. Bir değişikliğin cihazlar arasında aktarılabilmesi için iki cihazın aynı anda çevrimiçi olması gerekir. Herhangi birine verebileceğiniz bir URL yoktur, çünkü hiçbir makine sayfa sunmaz.

Bunun dört sonucu vardır ve kullanıcıların genellikle geç fark ettiği noktalar bunlardır.

  • Yazılım kurmayacak bir kişiye dosya göndermek için kayıt sunucusu gerekir. Bağlantı bir URL'dir ve URL için bir portu dinleyen bir süreç gerekir.
  • Dosyalarınıza kontrolünüz dışındaki bir makineden, örneğin iş dizüstü bilgisayarından erişmek için kayıt sunucusu gerekir.
  • Haftalarca kapalı kalan bir cihaz, açıldığında bir sunucudan güncel duruma gelir. Eş yapısında ise yalnızca bu verileri tutan başka bir cihaz da çevrimiçiyken güncel duruma gelebilir. Bu nedenle birçok Syncthing kullanıcısı, bir VPS üzerinde her zaman çevrimiçi olan bir eş olarak bir instance çalıştırır.
  • Depolama kullanımı farklı şekilde hesaplanır. Bir kayıt sunucusu, her cihazın yerel olarak tuttuğu kopyalara ek olarak tek bir tam kopya barındırır. Aynı klasörü paylaşan dört eş, dört tam kopya barındırır; çünkü her eş klasörün tamamını tutar.

Nextcloud: kullanıcılar, gruplar ve herkese açık bağlantılar

Nextcloud, PHP tabanlı bir web uygulamasıdır. Dosyaları bir veri dizininde normal dosyalar olarak depolar ve bunları bir veritabanında izler. Bir klasör, bir kullanıcıyla, bir grupla veya parola ve son kullanma tarihi içeren herkese açık bir bağlantı olarak paylaşılabilir. Sürüm geçmişi varsayılan olarak etkindir ve silinen dosyalar önce çöp kutusuna taşınır. Masaüstü istemcileri Linux, macOS ve Windows'u destekler; iOS ve Android uygulamaları da resmidir. Dropbox'ı bırakma nedeninizin başkalarının dosyalarınızı alabilmesi olması durumunda, gerçekçi seçenek budur.

Bunun karşılığında birden fazla bileşenin yönetilmesi gerekir. Standart bir kurulumda bir web sunucusu, PHP-FPM (PHP process manager), MariaDB veya PostgreSQL gibi bir veritabanı ve dosya kilitleme için Redis çalışır. Bir background job, cron veya systemd timer üzerinden her beş dakikada bir çalışır. 1 GB VPS üzerinde sistem başlatılır; ancak büyük bir yükleme veya uzun süren bir occ maintenance komutu çalıştığında out-of-memory killer süreci sonlandırabilir. Az sayıda kullanıcı için 2 GB'ı alt sınır kabul edin. Daha fazla uygulama etkinleştirildiğinde 4 GB'a ihtiyaç duyulması beklenmelidir. Diğer maliyet yükseltmelerdir: app-store uygulamaları belirli bir core release ile uyumlu olacak şekilde oluşturulur. Bu nedenle yükseltme yapmadan önce kullandığınız uygulamaların bir sonraki major version'ı desteklediğini kontrol edin.

Bir hesap yüz binlerce küçük dosya barındırdığında Nextcloud yavaşlar. Bunun nedeni her dosyanın file cache tablosunda bir satır ve diskte gerçek bir dosya olmasıdır. Ayrıca desktop client bu dosyaları tek tek tarar. Ev kullanıcıları ölçeğinde bu durum genellikle ortaya çıkmaz. Boyutlandırma, TLS (transport layer security) ve yedeklemeler TLS ve yedeklemelerle Docker tabanlı Nextcloud kurulumu bölümünde ele alınır. Karar verdikten sonra başvurulması gereken bölüm budur.

Kapsamla ilgili bir uyarı gerekir. Nextcloud takvim, kişiler, notlar ve fotoğraf kitaplığınızı da çalıştırabilir. Etkinleştirilen her uygulama background work yükünü artırır ve yükseltmeyi engelleyebilecek bir bileşen daha ekler. Asıl sorun fotoğraflarsa, bunlar için özel bir araç daha iyi sonuç verir: self-hosted Google Photos alternatifi olarak Immich bölümüne bakılmalıdır. Asıl sorun belgeler ve wikilerse, dosya sunucusuna ek uygulamalar yığmak yerine self-hosted Notion alternatifleri incelenmelidir.

Seafile: çok sayıda küçük dosya için tasarlanmıştır

Seafile, her dosyayı bloklara böler ve bu blokları, git nesnelerinde kullanılan yönteme benzer şekilde içerik karmasıyla adreslenen dahili bir nesne deposunda saklar. Eşitleme ve paylaşım birimi klasör ağacı değil, kitaplıktır. İstemci her dosya için ayrı bir istek göndermek yerine blokları ve tek bir commit'i yüklediği için 100,000 küçük dosya içeren bir dizinin eşitlenmesi, dosya başına çalışan bir protokolün sağlayabileceğinden çok daha hızlı tamamlanır. Özdeş bloklar yalnızca bir kez saklanır. Bu nedenle büyük bir dosyanın ikinci kopyası neredeyse hiç ek alan kullanmaz.

Bunun karşılığında sunucudaki dosyalar artık dosya olarak görünmez. Depolama dizini açıldığında hexadecimal adlara sahip nesne dosyaları görülür. Verileri dışarı aktarmak için Seafile istemcisi veya Seafile'ın kendi export ve fsck araçları gerekir. Bu nesneler normal dosyalar olduğundan yedekleme yine çalışır, ancak cp ile tek bir elektronik tabloyu geri yükleyemezsiniz. Bunun kabul edilebilir olup olmadığına şimdi karar verilmelidir. Çünkü kullanıcıların daha sonra pişman olduğu özellik budur.

Seafile bir community edition ve ücretli bir professional edition sunar. Bu sürümler arasındaki ayrım release'ler arasında değişebilir. Bu nedenle belirli bir özelliği temel alarak ekip planlamadan önce sitelerindeki güncel koşullar okunmalıdır. Resmi masaüstü ve mobil istemciler bulunur. Şifrelenmiş kitaplıklarda şifreleme istemci üzerinde yapılır. Bu nedenle sunucu, okuyamadığı ciphertext'i saklar. Passphrase kaybedilirse kitaplık sizin tarafınızdan bile okunamaz. Tarayıcıda şifrelenmiş bir kitaplık açmak, bu passphrase'in web oturumuna verilmesi anlamına gelir. Bu nedenle bu güvencenin güçlü biçimi masaüstü ve mobil istemciler için geçerlidir.

Kaynak kullanımı Nextcloud'a yakındır. Bir veritabanı, bir memory cache ve iki uygulama süreci çalıştırılır. Bu nedenle 2 GB yine makul alt sınırdır.

Syncthing: giriş yapılacak hesap yok

Syncthing tek bir Go binary'sidir. Klasörleri izler, eşlerini bir discovery server veya relay üzerinden bulur ve cihazlar arasında doğrudan senkronizasyon yapar. Senkronizasyon yapılan kişiler için hesap veya login sayfası yoktur. İki cihaz, ID üzerinden eşleştirilir ve klasör her iki tarafta da kabul edilir. Buradaki seçenekler arasında çalıştırılması en az emek isteyen çözüm budur; çünkü yönetilecek çok az bileşen vardır.

Bunun karşılığında paylaşım özelliklerinin tamamından vazgeçilir. İlgili alanın değeri Device pairing only, no links şeklindedir. Bir müşteriye, muhasebeciye veya yakına bağlantı verilemez. Mobil destek de diğer eksiktir: Android app, no official iOS. Projenin kendi FAQ bölümü bu konuda nettir: "There are no plans by the current Syncthing team to officially support iOS in the foreseeable future", çünkü iOS arka plan işlemlerini yeterince kısıtlar ve güvenilir senkronizasyonu zorlaştırır. iOS kullanıcılarının üçüncü taraf uygulamaları kullanması gerekir.

Kaynak kullanımı düşüktür. Ancak bilinmesi gereken bir nokta vardır. Syncthing, senkronize ettiği her dosya için bir index kaydı tutar. Bu nedenle bellek kullanımı ve ilk tarama, toplam boyuttan çok dosya sayısına göre artar. Büyük bir klasör ilk kez hash işleminden geçirilirken CPU bir süre yoğun kullanılır ve ardından kullanım normale döner. En küçük VPS planında bile rahatça çalışır.

Çakışmalar her iki tarafın da korunmasıyla ele alınır. İki cihaz birbirini göremedikleri sırada aynı dosyayı değiştirirse Syncthing kopyalardan birinin adını değiştirir ve onu diğer kopyanın yanında tutar. Böylece notes.sync-conflict-20260802-141530-K7MB3QT.md gibi dosyalar görülür. Veri kaybolmaz. Ancak dosyalar birleştirilmez; çözümleme işleminin elle yapılması gerekir.

Bir istemciyle object storage: ucuz baytlar, sync klasörü değil

Object storage, self-hosted olarak MinIO ile çalıştırılan veya bir sağlayıcıdan kiralanan, S3 (simple storage service) uyumlu bir bucket anlamına gelir. Bu bucket'a bir araçla erişilir: komut satırından rclone veya bucket'ı sürücü olarak gösteren bir masaüstü istemcisi kullanılabilir. Paylaşım, kendi sona erme süresini taşıyan ve oluşturulan bir bağlantı olan presigned URL ile yapılır. Versioning, bucket düzeyinde bir ayardır: Bucket versioning, off by default. Bu nedenle bucket oluşturulurken etkinleştirilmelidir; daha önce yüklenen object'ler için geçerli olmaz.

Sorun, bucket'ın sync klasörü olarak kullanılmaya başlanmasıyla ortaya çıkar. Varsayılan olarak Documents dizinini izleyen bir mekanizma yoktur. rclone bisync iki yönlü sync yapar ve rclone belgelerinde de gereken dikkat açıkça belirtilir. Object storage'ın en iyi yaptığı iş, altyapıda yer almaktır: bir backup hedefi veya bir uygulamanın arkasındaki storage katmanı olarak kullanılabilir. MinIO ile self-hosted S3 uyumlu object storage sunucu tarafını açıklar.

Buradaki kaynak maliyeti farklıdır. MinIO tek bir binary'den oluşur ve boşta düşük kaynak kullanır. Gerçekte ödenen maliyet disk ve VPS üzerinde gigabayt başına kiralanan block volume ile object'leri içeri ve dışarı taşımak için kullanılan bandwidth'dir. Bu maliyetlerin hiçbiri free -h içinde görünmez. Bu nedenle bir arşivin boyutunu belirlemeden önce VPS'nin aylık gerçek maliyeti incelenmelidir.

Paylaşım, mobil istemciler ve sürümleme karşılaştırması

ChartSharing, mobile clients and versioning, by tool
The data behind this chart
[
  {
    "tool": "Nextcloud",
    "sharing": "Public links, users and groups",
    "mobile": "Official iOS and Android apps",
    "versioning": "On by default, plus trash"
  },
  {
    "tool": "Seafile",
    "sharing": "Public links with password and expiry",
    "mobile": "Official iOS and Android apps",
    "versioning": "Library history and snapshots"
  },
  {
    "tool": "Syncthing",
    "sharing": "Device pairing only, no links",
    "mobile": "Android app, no official iOS",
    "versioning": "Optional per folder, off by default"
  },
  {
    "tool": "Object storage",
    "sharing": "Presigned URLs you generate",
    "mobile": "Third party clients only",
    "versioning": "Bucket versioning, off by default"
  }
]

Toplam 4 seçenek tek bir satırda karşılaştırılmıştır. Bunlardan üçü, yalnızca tarayıcı kullanan bir kişinin dosya indirmesine olanak tanır. Biri ise yalnızca zaten sahip olunan cihazlarla iletişim kurar. Seafile'daki sürümleme seçeneği olan Library history and snapshots için bir noktaya dikkat edilmelidir: geçmiş her kitaplık için ayrı tutulur. Bu nedenle bir kitaplık silindiğinde geçmişi de silinir.

Verilerin yeniden dışarı aktarılması

Çıkış maliyetini şimdi kontrol etmek ucuz, daha sonra öğrenmek ise pahalıdır. Bu nedenle bir çözümü kullanmaya başlamadan önce kontrol edilmelidir.

Nextcloud, gerçek dosyaları gerçek dizinlerde saklar. Bu nedenle veri dizininin tar alınması, uygulama bir daha hiç başlatılamasa bile belgeleri geri verir. Syncthing de bunu her eş üzerinde yapar. Bu, buradaki en güçlü çıkış seçeneğidir: dosyalar her cihazda doğrudan bulunur. Seafile'ın nesne deposu, blokları yeniden dosyalara birleştirmek için Seafile'ı veya dışa aktarma araçlarını gerektirir. Nesne depoları için rclone ya da eşdeğer bir araç gerekir; bu işlem tek bir komutla yapılabilir.

Senkronizasyon yedekleme değildir; veri kaybı bu fark nedeniyle yaşanır

Buradaki her araç, makineler arasındaki değişiklikleri kopyalar. Silme işlemi de bir değişikliktir. Dizüstü bilgisayarınızdan bir klasörü kaldırdığınızda istemci bunu sunucuya bildirir, sunucu işlemi uygular ve diğer tüm cihazlar da klasörü kaldırır. Fidye yazılımı aynı yolu kullanır: Dosyaları yerel olarak şifreler, istemci değiştirilen dosyaları algılar ve şifrelenmiş sürümleri yükler. Senkronizasyon doğru çalışmıştır. Verileriniz yine de kaybolmuştur.

Çöp kutuları ve sürüm geçmişi bu durumu kısmen telafi eder. Ancak bunların saklama süresi dolabilir, hatayı yapan aynı hesap tarafından boşaltılabilir ve canlı kopyayla aynı diskte bulunurlar. Bir volume arızalandığında dosyalar ve geçmişleri birlikte kaybedilir.

Yedekleme, ayrı donanım üzerinde bulunan, bir zamanlamaya göre alınan ve en az bir kez geri yüklenmiş ayrı bir kopyadır. Veritabanını dosyalarla aynı çalıştırmada yedekleyin. Nextcloud data directory, veritabanı olmadan geri yüklendiğinde bu dosyaların varlığından haberdar olmayan bir instance elde edilir. Daha sonra gerçekleştirilen bir occ files:scan dosyaları kurtarırken, bu tablolarda tutulan paylaşımları ve sürüm geçmişini kaybeder. VPS üzerinden zamanlanmış restic yedeklemeleri, bunun şifrelenmiş ve tekilleştirilmiş sürümünü açıklar; bir geri yükleme işleminin varsayılmak yerine nasıl test edileceğini de gösterir.

Seçeceğim seçenek

Bu metni okuyan çoğu kişi için Nextcloud. Dropbox kullanmayı bıraktıktan sonra eksikliği en çok hissedilen şeyler, hiçbir şey kurmayacak birine bağlantı gönderebilmek ve telefonda bir dosyayı açabilmektir. Nextcloud, resmi istemcileri ve ücretli katmanı olmadan bu iki ihtiyacı da karşılar. Bunun karşılığında 2 GB RAM makul bir maliyettir.

İki istisna geçerlidir. Klasör yalnızca size ait olacak ve yalnızca sahip olduğunuz donanımda bulunacaksa Syncthing çalıştırın. Böylece yamalanacak bir sunucu ve korunacak bir web oturumu olmaz. Yüz binlerce dosyadan oluşan bir çalışma dizinini senkronize ediyorsanız Seafile çalıştırın. Hız karşılığında opak depolamayı kabul edin. Object storage, seçtiğiniz çözümün önünde sync aracı olarak değil, arkasında backup hedefi olarak kullanılmalıdır.

FAQ

Syncthing dizüstü bilgisayarım için yedekleme çözümü müdür?

Hayır. Syncthing, cihazlar arasındaki değişiklikleri kopyalar. Silme işlemi de diğer değişiklikler gibi bir değişiklik olduğundan, yanlışlıkla sildiğiniz bir dosya birkaç saniye içinde eşleştirilmiş tüm cihazlardan silinir. Klasör başına dosya sürümleme özelliği yardımcı olur, ancak her klasörde etkinleştirilene kadar kapalıdır. Ayrı donanım üzerinde, belirli bir takvime göre alınan gerçek bir yedek bulundurun. Geri yükleme işleminin çalıştığını doğrulamak için bu yedekten bir kez geri yükleme yapın.

Nextcloud ve Syncthing aynı VPS üzerinde çalıştırılabilir mi?

Evet. Farklı portları dinledikleri için birbiriyle çakışmazlar. Syncthing klasörünü Nextcloud'un veri dizinine yönlendirmeyin. Nextcloud her dosyayı bir veritabanında izler. Bu nedenle disk üzerinde Nextcloud'un veri dizini altında görünen dosyalar, occ files:scan komutunu çalıştırana kadar görünmez kalır. Bu dizin altında silinen dosyalar ise veritabanında artık herhangi bir dosyaya karşılık gelmeyen kayıtlar bırakır. Syncthing için ayrı bir dizin kullanın veya Nextcloud'un bu dizini tarayabilmesi için dizini external storage olarak ekleyin.

Hesabı olmayan biriyle bağlantı paylaşmamı hangisi sağlar?

Nextcloud ve Seafile, isteğe bağlı parola ve son kullanma tarihiyle public link oluşturabilir. Object storage, belirlediğiniz sürenin sonunda kendiliğinden çalışmayı bırakan presigned URL sağlar. Syncthing bu ihtiyaca yanıt vermez. Paylaşım modeli cihaz eşleştirmesine dayanır. Bu nedenle diğer kişinin Syncthing kurması, size bir device ID vermesi ve klasörü kabul etmesi gerekir.

Sunucunun ne kadar disk alanına ihtiyacı var?

Asıl veri kaynağı olarak kullanılan bir sunucu için paylaşılan verilerin toplam boyutunu, sürüm geçmişi ve çöp kutusu için gereken alanı ve devam eden yüklemeler için çalışma alanını planlayın. Sürüm geçmişi, çoğu kişinin kapasitesini olduğundan düşük tahmin ettiği bölümdür. Her gün değişen 2 GB boyutundaki bir dosyanın tüm sürümlerini saklamak disk kullanımını hızla artırır. Bu nedenle erken aşamada bir saklama politikası belirleyin. Verileri ayrı bir volume üzerine yerleştirmek, bu büyümenin root filesystem'ı doldurmasını önler. Disk tamamen dolduğunda yalnızca tek bir yükleme değil, sunucunun tamamı çalışamaz hale gelir.

#self-hosting#file-sync#nextcloud#syncthing#storage