En iyi self-hosted Nextcloud alternatifleri
Nextcloud yerine kullanabileceğiniz hafif dosya eşitleme, nesne depolama ve SFTP tabanlı alternatifleri inceleyin. Sunucu maliyetleri ve veri taşıma süreçlerini öğrenin.
Hangi Nextcloud alternatifleri self-host etmeye değer?
Self-host etmeye değer Nextcloud alternatifleri, hiç kullanmadığınız özellikleri barındırmayanlardır. Nextcloud; tek bir PHP uygulaması içinde dosya sunucusu, takvim, kişi defteri, ofis paketi ve uygulama platformudur; her sayfa yüklemesinde bunların tamamının maliyetine katlanırsınız. Bu nedenle, bir alternatif seçerken hala ihtiyaç duyduğunuz tek bir işlevi belirleyin ve ardından mevcut dosyalarınızı taşımanın maliyetini kontrol edin.
Bu kılavuz, seçenekleri bu işlevlere göre sınıflandırır: yalnızca eşitleme, daha hızlı bir sunucu ile eşitleme, üzerinde istemci bulunan nesne depolama (object storage) veya doğrudan uzak dosya erişimi. Her bölüm, küçük bir VPS (sanal özel sunucu) üzerinde sunucunun neye ihtiyaç duyduğunu ve mevcut klasör yapınıza ne olacağını açıklar. Eğer halihazırda kullandığınız bir Nextcloud kutusundan değil de Dropbox veya Google Drive'dan geliyorsanız, self-hosted Dropbox alternatiflerinin daha geniş kapsamlı özeti bu taraftan başlar.
Nextcloud neden küçük bir VPS üzerinde yavaşlar
Yavaşlığın işaret edebileceğiniz nedenleri vardır; bunları bilmek, başka bir çözüme geçmenin gerçekten yardımcı olup olmayacağını anlamanızı sağlar.
Her sayfa yüklemesi bir PHP worker kullanır. Nextcloud'un kendi sistem gereksinimleri, Ağustos 2026 itibarıyla işlem başına minimum 128 MB, önerilen 512 MB bellek belirtmektedir. Bu, sunucunun toplam belleği değildir. 2 GB'lık bir planda on worker'lık bir havuz ciddi bir bellek bütçesi gerektirir; bu nedenle yöneticiler PHP-FPM havuz yapılandırmasında pm.max_children değerini düşürür ve istekler mevcut worker'ların arkasında kuyruğa girer. Disk boşta olsa bile arayüz yavaş hissettirir.
Veritabanı, bayt miktarıyla değil dosya sayısıyla büyür. Varsayılan tablo öneki altındaki oc_filecache dosya önbelleği tablosu, sunucunun bildiği her depolama alanındaki her dosya ve klasör için bir satır tutar. 300.000 küçük dosyadan oluşan bir fotoğraf kütüphanesi büyük bir tablodur; 400 dosyadan oluşan 300 GB'lık video dosyaları ise küçük bir tablodur. Paylaşım, arama ve dosya tarayıcı işlemlerinin tümü bu tabloyu okur.
sudo mysql nextcloud -e 'SELECT COUNT(*) FROM oc_filecache;'Milyonlarca satırlık bir kayıt, dosya listesinin neden yavaş olduğunu herhangi bir disk performans testinden daha iyi açıklar. Eğer örneğiniz farklı bir tablo öneki veya PostgreSQL kullanıyorsa sorguyu buna göre düzenleyin.
Arka plan işleri, web arayüzü ile kaynak rekabetine girer. Nextcloud kılavuzu, her beş dakikada bir cron.php çalıştıran bir system cron girdisi önerir. Önizleme oluşturma ve dosya tarama işlemleri, tarayıcınıza hizmet veren aynı CPU üzerinde çalışır.
Büyük yükseltmeler bir veritabanı geçişidir. Örnek, bakım moduna girer ve geçiş tamamlanana kadar her isteğe Nextcloud is in maintenance mode, please try again later ile yanıt verir. Büyük bir oc_filecache değerine sahip küçük bir VPS üzerinde bu süre fark edilecek kadar uzundur.
Önce neleri tutacağınıza karar verin
- Sahibi olduğunuz makineler arasında tek bir klasörü, web arayüzü olmadan senkronize etmek için: Syncthing.
- Birden fazla kişi için web arayüzü, mobil istemciler ve paylaşım bağlantılarıyla senkronizasyon için: Seafile.
- Çok miktarda veriyi düşük maliyetle depolamak ve bu verilere betikler veya yedekleme araçlarıyla erişmek için: nesne depolama (object storage) ve bir istemci.
- Yeni bir sunucu yazılımı kurmadan dosyalarınızı uzaktan okumak ve yazmak için: SFTP veya WebDAV.
- Tarayıcı üzerinden ortak doküman düzenlemek veya kişiler arasında takvim paylaşmak için: Nextcloud kullanmaya devam edin ya da iki farklı servis çalıştırmayı kabul edin.
Syncthing: sunucu uygulaması gerektirmeyen dosya eşitleme
Syncthing, dosyalarınızı standart dosyalar olarak tutar. Bir içerik veritabanı veya belgelerinizi sunan bir web arayüzü yoktur. Bir klasöre katılan her cihaz tam bir kopyayı barındırır ve Syncthing bu kopyaları eşdeğer tutar.
sudo mkdir -p /etc/apt/keyrings
sudo curl -L -o /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable-v2" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update
sudo apt-get install syncthingsudo systemctl enable --now syncthing@$USER
sudo ss -lntp | grep 8384127.0.0.1:8384 değerini gösteren bir satır, web arayüzünün çalıştığını ve yalnızca localhost üzerinde dinleme yaptığını belirtir; halka açık bir VPS üzerinde istenen durum budur. Arayüze erişmek için bir SSH tüneli kurun: ssh -L 8384:127.0.0.1:8384 you@your-vps, ardından dizüstü bilgisayarınızda http://127.0.0.1:8384 adresini açın. 8384 numaralı portta bir dinleyici yoksa servis başlatılamamıştır; journalctl -u syncthing@$USER -n 50 komutu bunun nedenini açıklar.
Kaynaklar. Syncthing, minimum bellek kullanımı için bir değer belirtmez. Yazılımın kullandığı kaynak, toplam boyuttan ziyade indekslenen dosya sayısına bağlıdır; çünkü paylaşılan her klasördeki her dosya için bir indeks kaydı tutar. Büyük bir klasörün ilk taraması yoğun CPU kullanımı gerektirir: Syncthing, karşılaştırma yapabilmek için her dosyanın hash değerini hesaplar. İlk taramanın paylaşımlı bir vCPU üzerinde bir süre devam edeceğini ve bellek kullanımının gigabayt bazında değil, dosya sayısı arttıkça yükseleceğini göz önünde bulundurun.
Disk kullanımı asıl maliyettir. Sunucu tarafında bir tasarruf söz konusu değildir çünkü Syncthing bir sunucu değildir. Bir VPS ile dizüstü bilgisayar arasında paylaşılan 200 GB boyutundaki bir klasör, her iki tarafta da 200 GB yer kaplar. Bu durum, sunucunun her şeyi tuttuğu ve istemcilerin neyi eşitleyeceğini seçtiği Nextcloud yapısının tam tersidir. Eğer VPS bir eş (peer) olmaktan ziyade bir yedekleme hedefi olarak kullanılacaksa, seçici klasörler ve receive only klasör yapısını kullanın.
Taşıma, bu aracı seçmek için temel nedendir. Syncthing'i mevcut dizin ağacınıza yönlendirin. Bir içe aktarma, yükleme veya dönüştürme işlemi yoktur. Klasörü VPS üzerinde ekleyin, dizüstü bilgisayarda aynı klasör kimliği (folder ID) ile tanımlayın ve iki tarafın eşleşmesini bekleyin. İlk bağlantı anında aynı dosya her iki tarafta farklı içerikteyse, Syncthing her iki dosyayı da tutar ve birini filename.sync-conflict-20260809-142530-ABCD123.txt olarak yeniden adlandırır. Bu dosyaları ilk eşitlemede görmek normaldir, bir hata değildir.
Vazgeçtikleriniz. Hesap yönetimi, başkalarına göndermek için paylaşım bağlantıları ve dosyalarınıza bir telefon tarayıcısı üzerinden göz atma imkanı yoktur. Orijinal Android uygulaması artık proje tarafından desteklenmemektedir; mobil erişim önemliyse topluluk tarafından sürdürülen bir fork kullanılmalıdır. Syncthing ve Nextcloud karşılaştırması dokümanı, özellik farklarını tek tek ele almaktadır.
Seafile: daha hafif bir sunucu ile hızlı eşitleme
Seafile iş yükünü ikiye böler. Seahub adlı bir Python web uygulaması arayüzü çizer, ayrı bir C süreci ise eşitleme trafiğini yönetir. Dosya transferleriniz web uygulamasından geçmez; bu sayede bir kullanıcı arayüzde gezinirken büyük bir yükleme işlemi hızından ödün vermez. 13.0 sürümü 5 Ocak 2026 tarihinde yayınlanmıştır.
sudo mkdir -p /opt/seafile
cd /opt/seafile
sudo wget -O .env https://manual.seafile.com/13.0/repo/docker/ce/env
sudo wget https://manual.seafile.com/13.0/repo/docker/ce/seafile-server.yml
sudo wget https://manual.seafile.com/13.0/repo/docker/seadoc.yml
sudo wget https://manual.seafile.com/13.0/repo/docker/caddy.ymlHerhangi bir işleme başlamadan önce .env dosyasını düzenleyin. Bu dosya SEAFILE_SERVER_HOSTNAME, INIT_SEAFILE_ADMIN_EMAIL, INIT_SEAFILE_ADMIN_PASSWORD, SEAFILE_MYSQL_DB_PASSWORD ve en az 32 karakterlik rastgele bir dizge olması gereken JWT_PRIVATE_KEY ayarlarını yapılandırır. Ayrıca bu dosya, indirilen YAML dosyalarından hangilerinin okunacağını belirterek dört ayrı indirmenin tek bir yığın (stack) olarak çalışmasını sağlar.
cd /opt/seafile
sudo docker compose up -d
sudo docker compose psHer container çalışır durumda olduğunu bildirmelidir. Bir container'ın sürekli yeniden başlatılması, neredeyse her zaman .env dosyasında eksik bir değerden kaynaklanır; sudo docker compose logs seafile ise hangi container'ın sorun yaşadığını belirtir.
Kaynaklar. Seafile dokümantasyonu, Ağustos 2026 itibarıyla en az 2 GB RAM ve 2 GHz üzeri 2 çekirdekli bir işlemci önermektedir. Docker kurulumu MariaDB, Caddy reverse proxy ve SeaDoc editörünü de başlattığı için bu gereksinimi tüm yığın için alt sınır olarak kabul edin. Birden fazla kişi kullanacaksa 4 GB RAM ayırın veya isteğe bağlı container'ları devre dışı bırakın.
Taşıma sürecindeki kritik nokta depolama biçimidir. Seafile dosyalarınızı dosya sistemi üzerinde olduğu gibi tutmaz. Her dosyayı /opt/seafile-data altında bloklara böler ve dosya ağacını veritabanına kaydeder. Seafile'ı mevcut bir dizine yönlendirip onu bir kütüphane olarak göstermeniz mümkün değildir; bu nedenle sisteme geçiş, sahip olduğunuz tüm verilerin tam bir yükleme sürecinden geçmesini gerektirir. Aynı tasarım nedeniyle verileri cp ile doğrudan dışarı alamazsınız: kurtarma işlemi sunucu üzerinden, tutarlılık kontrolleri için seaf-fsck kullanılarak veya salt okunur seaf-fuse mount noktası üzerinden yapılmalıdır.
rclone, yerel bir Seafile arka ucuna (backend) sahiptir; bu özellik, yükleme işlemini uzun süren bir sürükle-bırak oturumu yerine tek bir devam ettirilebilir komuta dönüştürür.
rclone config
rclone copy /srv/files seafile:MyLibrary --progressrclone dokümantasyonu Seafile 6.x ile 9.x sürümlerini test edilmiş olarak listeler; bu nedenle terabaytlarca veriyi aktarmadan önce küçük bir klasör üzerinde test edin ve sonucu doğrulayın.
Şifreli kütüphaneler, kullanıcıların bu sisteme geçiş yapma nedenidir. Parola istemci tarafında belirlenir ve sunucu okuyamadığı blokları depolar. Önemli bir uyarı: Şifreli bir kütüphanedeki dosyayı tarayıcı üzerinden önizlemek, o oturum için parolanın sunucuya gönderilmesine neden olur; bu nedenle tarayıcı önizlemesi ve sıfır bilgi (zero-knowledge) depolama aynı anda kullanılamaz. Seafile ve Nextcloud karşılaştırması diğer özellik farklarını ele almaktadır.
Üst katmanında eşitleme istemcisi bulunan nesne depolama
Amaç, düşük maliyetle çok sayıda bayt depolamak ve bu verilere betikler üzerinden erişmekse, S3 uyumlu bir nesne depolama servisi çalıştırın ve eşitlemeyi ayrı bir araç olarak ele alın. Bu sayede dayanıklılık, sürüm oluşturma ve tüm yedekleme araçlarının halihazırda desteklediği bir protokole sahip olursunuz. Dosya sunucusu anlamında kullanıcı hesaplarına veya kullanıcıların kullanmaktan keyif alacağı bir dosya yöneticisine sahip olmazsınız. MinIO ile self-hosted nesne depolama rehberi sunucu tarafını ele almaktadır.
rclone copy /srv/files s3remote:mybucket --progress
rclone check /srv/files s3remote:mybucketrclone check, her iki tarafı boyut ve hash değerlerine göre karşılaştırır ve kaç dosyanın farklı olduğunu raporlar. Sıfırdan farklı bir hata değeri, kopyalamanın tamamlanmadığı anlamına gelir; bu nedenle kaynağı silmeden önce copy komutunu tekrar çalıştırın. Beklenmesi gereken iki durum vardır: Nesne depolama sistemlerinde dizin yapısı yoktur, yalnızca anahtar önekleri (key prefixes) bulunur; bu yüzden boş klasörler kopyalama işleminden sonra korunmaz. Ayrıca --transfers değerini S3 parça boyutuyla birlikte artırmak, rclone'un bellek kullanımını yükselten temel etkendir; bu nedenle 1 GB RAM'e sahip bir VPS üzerinde her iki değeri de varsayılan ayarlarında bırakın.
Yalnızca uzak dosyalara ihtiyaç duyduğunuzda düz WebDAV veya SFTP
En ucuz çözüm genellikle yeni bir şey kurmamaktır. VPS üzerinde OpenSSH çalışıyorsa, halihazırda bir dosya sunucusuna sahipsiniz demektir. SFTP ek bir daemon, veritabanı, PHP veya pazar günü bozulabilecek bir güncelleme gerektirmez.
sftp you@your-vps
rclone mount sftpremote: ~/vps --vfs-cache-mode writesTelefon dosya yöneticilerinin çoğu dahil olmak üzere WebDAV destekleyen istemciler için rclone aynı dizin yapısını sunabilir.
sudo apt install apache2-utils
sudo htpasswd -c /etc/rclone/htpasswd you
rclone serve webdav --addr 127.0.0.1:8080 --htpasswd /etc/rclone/htpasswd /srv/filesBunu 127.0.0.1 adresine bağlayın ve önüne TLS (taşıma katmanı güvenliği) içeren bir reverse proxy yerleştirin. WebDAV temel kimlik doğrulaması, parolayı her istekte gönderir; bu nedenle düz HTTP kullanımı, parolanın dakikada birçok kez açığa çıkması anlamına gelir. Dosyalar hiçbir yere taşınmadığı için geçiş maliyeti sıfırdır. Dezavantajı ise senkronizasyon ve çevrimdışı kopyanın olmamasıdır: bağlantı koptuğunda, bağlantı geri gelene kadar dosyalar istemci tarafında görünmez olur.
Takvimlerin, kişilerin ve belge düzenlemenin yerini ne alır
Nextcloud'u bırakmanın bir bedeli vardır ve bu bedelin ne olduğunu netleştirmek gerekir. Takvimler ve kişiler CalDAV ve CardDAV (HTTP üzerinden takvim ve kişi eşitleme) protokollerini kullanır; Radicale, bu işlev için kullanılan küçük bir alternatiftir. Her koleksiyonu diskte dosya olarak saklar ve onlarca megabaytlık bellek kullanımıyla çalışır.
sudo apt install radicale
sudo systemctl enable --now radicale
sudo ss -lntp | grep 5232Paket, /usr/lib/systemd/system/radicale.service yazılımını ve varsayılan yapılandırmasını /etc/radicale/config dizininde sunar; servis localhost:5232 portunu dinler. Radicale'in etkinlik düzenlemek için bir arayüzü yoktur; bu nedenle bir telefon veya masaüstü istemcisini bu servise yönlendirip düzenlemeleri oradan yapmanız gerekir.
Tarayıcı tabanlı belge düzenleme özelliğinin yerini doldurmak daha zordur. OnlyOffice Docs ve Collabora Online, depolama alanı değil, düzenleme motorlarıdır: her biri, dosyaları barındıran ve belgeleri düzenleme motoruna ileten bir ana uygulama gerektirir. Nextcloud'u kaldırdığınızda, kendi SeaDoc düzenleyicisine sahip Seafile gibi başka bir ana uygulamaya ihtiyacınız olur. OnlyOffice ve Collabora karşılaştırması, hangi ana uygulamayı kullanacağınıza karar verdikten sonra hangi motoru çalıştırmanız gerektiğini açıklar.
Aşağıdaki durumlardan herhangi biri geçerliyse Nextcloud kullanmaya devam edin
- Birden fazla kişi, dosyalarla aynı hesaplar üzerinde tek bir takvimi ve tek bir adres defterini paylaşıyorsa.
- Tarayıcı üzerinden ofis belgelerini, başka biriyle aynı anda ve aynı dosya üzerinde düzenliyorsanız.
- Son kullanma tarihleri ve parolalar içeren dosya bazlı paylaşım bağlantılarına ve grup izinlerine ihtiyaç duyuyorsanız.
- Kullanıcılarınız teknik bilgiye sahip değilse ve asıl kullandıkları araçlar mobil uygulamalarsa.
Bu işlevler için tümünü karşılayan daha hafif bir alternatif bulunmamaktadır; bu durumda dürüst yaklaşım, sistemi terk etmek yerine kurulumu iyileştirmektir. Yavaş çalışan çoğu örnek, bellek önbelleği yapılandırılmamış varsayılan bir PHP-FPM havuzu kullanmaktadır ve Nextcloud yönetici genel bakış sayfası eksik önbellek konusunda uyarı verir. Takip edilen dosya sayısını azaltmak, diğer tüm değişikliklerden daha fazla katkı sağlar; çünkü asıl büyüyen kısım dosya önbellek tablosudur. Docker, TLS ve yedeklemeler ile VPS üzerinde Nextcloud kurulumu rehberi, bu sorunların çoğunu önleyecek şekilde yapılandırmayı anlatır.
Seçenek bazında gerçek taşıma maliyeti
- Syncthing: içe aktarma yoktur. Her iki taraftaki mevcut dizin ağacını gösterin ve senkronizasyonun tamamlanmasını bekleyin.
- Aynı dizin ağacı üzerinde SFTP veya WebDAV: hiçbir dosya taşınmadığı için içe aktarma gerekmez.
- Nesne depolama (Object storage): ağ üzerinden tam bir kopyalama gerektirir; devam ettirilebilir ve betiklenebilir bir işlemdir, ancak boş klasörler bu süreçte korunmaz.
- Seafile: kütüphanelere tam bir yükleme gerektirir, çünkü sunucu dosyaları değil blokları saklar.
Hangi yöntemi seçerseniz seçin, önce Nextcloud üzerinden temiz bir kopya alın. Kullanıcı dosyaları veri dizini altında, kullanıcı başına bir klasör olacak şekilde düz biçimde saklanır; bu nedenle o ağacın rsync kısmı kaynak verinizdir. Kopyalama işleminden önce örneği bakım moduna alın, aksi takdirde yazılma aşamasındaki dosyaları kopyalamış olursunuz.
sudo -u www-data php occ maintenance:mode --on
sudo rsync -a --info=progress2 /path/to/nextcloud/data/ /srv/files/
find /srv/files -type f | wc -lBu sayıyı kaynaktaki aynı find ile karşılaştırın. Bir eksiklik genellikle izinlerin bir dosyayı okumayı rsync engellediği anlamına gelir; işlem sırasında bu hatalar yazdırılır.
Bu kopyalama işleminde iki tuzak bulunur. Nextcloud'un harici depolama özelliğiyle erişilen dosyalar veri dizininde yer almaz, çünkü bu dosyalar Nextcloud'a tanıtılan uzak sistemde bulunur. Ayrıca, sunucu tarafı şifreleme etkinleştirilmişse diskteki dosyalar şifreli metin (ciphertext) halindedir; bu durumda kopyalamadan önce occ encryption:decrypt-all çalıştırılmalıdır, aksi takdirde okunamaz verilerden oluşan bir klasörü taşımış olursunuz. Herhangi bir işlemi iptal etmeden önce her iki durumu da kontrol edin.
FAQ
Mevcut klasör yapımı koruyan bir Nextcloud alternatifi var mı?
Syncthing ve herhangi bir standart SFTP veya WebDAV kurulumu bu işi görür. Syncthing, işaret ettiğiniz dizini indeksler ve tüm cihazlarda aynı isimleri ve düzeni korur; bu nedenle bir içe aktarma adımı veya yükleme süreci gerekmez. Seafile ve nesne depolama (object storage) çözümlerinin her ikisi de tam bir yükleme geçişi gerektirir, çünkü ikisi de verilerinizi normal bir dizin ağacında standart dosyalar olarak saklamaz. Seafile dosyaları kendi veri dizini altında bloklara böler, nesne depolama ise dizinler yerine anahtarlar (keys) kullanır.
Seafile 2 GB RAM'li bir VPS üzerinde çalışır mı?
Ağustos 2026 itibarıyla Seafile dokümantasyonu, en az 2 GB RAM ve 2 GHz üzeri 2 çekirdekli bir işlemci önermektedir. Bu değerleri, herhangi bir ek payı olmayan bir alt sınır olarak kabul edin; çünkü Docker dağıtımı aynı zamanda MariaDB, Caddy ve SeaDoc düzenleyicisini de kendi container'ları içinde çalıştırır. Tek bir kullanıcı için bu yapı uygulanabilir düzeydedir. Bir hane halkı veya küçük bir ekip için 4 GB RAM'e geçin ya da SeaDoc container'ını stack'ten çıkararak tarayıcı içi belge düzenleme özelliğinden vazgeçin.
İndirme hızları yüksek olmasına rağmen Nextcloud web arayüzüm neden yavaş?
Çünkü bu iki yol farklı işlemler gerçekleştirir. Dosya indirme işlemi diskten bayt akışı sağlarken, sayfa yükleme işlemi PHP çalıştırır, dosya önbellek tablosunu sorgular ve genellikle boş bir PHP-FPM işçisinin (worker) hazır olmasını bekler. Depolama birimini suçlamadan önce oc_filecache içindeki satır sayısını sayın ve PHP-FPM havuzunuzdaki pm.max_children değerini kontrol edin. Milyonlarca satırlık bir tablo ve beş işçiden oluşan bir havuz, tam olarak bu performans sorununu üretir.
Takvimler için Nextcloud'u tutup sadece dosyaları taşıyabilir miyim?
Evet, bu genellikle en ekonomik çözümdür. Büyük klasörlerinizi Syncthing veya Seafile ile eşitleyin; Nextcloud'u ise CalDAV, CardDAV ve tarayıcı içi belge düzenleme işlemleri için çalışır durumda bırakın. Nextcloud veritabanı, takip ettiği dosya sayısıyla doğru orantılı olarak büyüdüğü için, büyük dosya ağaçlarını sistemden kaldırmak arayüzü tekrar hızlandıracaktır. Dosyaları disk üzerindeki veri dizininden değil, web arayüzü veya occ üzerinden silin; aksi takdirde veritabanı artık var olmayan dosyalara işaret eden satırları tutmaya devam eder.