Seafile ve Nextcloud Karşılaştırması: Hangisi Seçilmeli?
Seafile blok tabanlı hızlı senkronizasyon sunarken Nextcloud geniş uygulama ekosistemiyle öne çıkar. RAM kullanımı, yedekleme ve şifreleme farklarını inceleyin.
Seafile ve Nextcloud: kısa cevap
Seafile ve Nextcloud arasındaki fark tek bir noktaya dayanır: dosya sunucuya ulaştığında neye dönüşmektedir. Seafile her dosyayı bloklara ayırır ve bunları yalnızca Seafile tarafından okunabilen bir nesne deposunda saklar; bu sayede senkronizasyon hızlıdır ancak yedekleme iki aşamalı bir iş haline gelir. Nextcloud ise dosyanızı diske olduğu gibi yazar ve senkronizasyonu; takvimler, kişiler, belgeler ve paylaşım bağlantılarını da çalıştıran bir platformun yalnızca bir özelliği olarak görür. Kararınızı bu farka göre verin, çünkü geri kalan her şey bu temelden türeyecektir.
Ağustos 2026 itibarıyla Seafile 13.0 serisinde, Nextcloud ise 34 serisindedir. Her iki yazılım da olgundur ve depolama modellerini değiştirmeleri söz konusu değildir.
Seafile dosyalarınızı nasıl saklar
Seafile, bir kütüphaneyi git'in bir depoyu modellediği şekilde modeller. Yönetici kılavuzu iç modeli Repo, Commit, FS ve Block olarak tanımlar ve bir deponun aynı zamanda kütüphane olarak da adlandırıldığını belirtir. Her dosya, içerik tanımlı parçalama (CDC, veri içinden blok sınırlarını belirleyen bir algoritma) yöntemiyle değişken uzunluklu bloklara bölünür; kılavuz, ortalama blok boyutunun yaklaşık 8 MB olduğunu belirtir. Bloklar içeriklerine göre adlandırılır; bu sayede büyük bir dosyanın iki sürümü, değişmeyen tüm blokları paylaşır ve iki kütüphane de aynı blokları ortak kullanabilir.
İlişkisel veritabanı, kütüphaneler hakkında yalnızca az miktarda meta veri tutar. Commit'ler, dizin nesneleri ve bloklar dahil olmak üzere diğer her şey veri dizininin altında yer alır. 12 ve 13 serisinde kullanılan Docker düzeninde bu dizin /opt/seafile-data/seafile/seafile-data yolundadır. Burada ls komutunu çalıştırmak size yararlı bir bilgi sağlamaz, çünkü Invoices/2026/march.pdf yerine hash isimleriyle dolu dizinler görürsünüz.
Senkronizasyon aynı modeli izler. İstemci sunucuya nelerin değiştiğini sorar, blok hash'lerinden oluşan bir liste alır ve yalnızca elinde bulunmayan blokları çeker. Seafile'ın büyük bir kütüphanede performansını korumasının nedeni budur: aktarılan bayt miktarı, dosyanın toplam boyutuna değil, yalnızca değişen blokların boyutuna bağlıdır.
Nextcloud dosyalarınızı nasıl saklar
Nextcloud, dosyayı disk üzerinde beklediğiniz konuma yerleştirir. data/<username>/files/ yolu, kullanıcının web arayüzünde gördüğü yapıyı yansıtır. oc_filecache adlı bir veritabanı tablosu, aynı ağaç yapısını boyutlar, değişiklik zamanları ve etag değerleri ile aynalar; Nextcloud diskten ziyade bu tabloya güvenir.
Masaüstü istemcisi, HTTPS üzerinden WebDAV (web distributed authoring and versioning) protokolünü kullanır. Her dosya en az bir istek maliyeti oluşturur; bu nedenle Nextcloud bir toplu yükleme (bulk upload) API'si eklemiştir: geliştirici kılavuzunda açıklandığı üzere, çok sayıda küçük dosyanın yüklenmesi ağ bant genişliği tam olarak kullanılmadığı için olması gerekenden daha yavaştır, bu yüzden küçük dosyalar bir araya paketlenir. Büyük dosyalar ise bunun yerine parçalama (chunking) API'si üzerinden iletilir ve masaüstü istemcisinin varsayılan parça boyutu 5 MiB'dir (OWNCLOUD_CHUNK_SIZE varsayılan olarak 5242880 bayttır).
Dosyaların diskte tutulmasının avantajı, halihazırda sahip olduğunuz her aracın verilerinizi okuyabilmesidir. Dezavantajı ise Nextcloud'un kendi bilgisi dışında yapılan değişiklikleri fark etmemesidir. Dosyaları doğrudan veri dizinine kopyalarsanız, siz tarama yapana kadar bu dosyalar web arayüzünde görünmez kalır:
sudo -E -u www-data php occ files:scan --all -vvYönetici kılavuzu, yeniden tarama (rescan) gerektiren durumları tam olarak şu şekilde belirtir: dosyaları doğrudan veri dizinine kopyaladıktan sonra, bir taşıma işleminden sonra ve dosya önbelleği tutarsızlıklarını araştırırken.
Hangisi büyük bir kütüphaneyi daha hızlı eşitler?
Seafile, performansı olumsuz etkileyen iki durumda daha hızlıdır: on binlerce küçük dosya ve büyük dosyalarda yapılan tekrarlı düzenlemeler. Mekanizma blok seviyesinde tekilleştirme (deduplication) üzerine kuruludur; bu sayede orta kısmı değişen 4 GB boyutundaki bir disk imajı, yalnızca birkaç blok olarak yüklenir. Nextcloud, toplu yükleme (bulk upload) özelliğiyle küçük dosya farkını kapatsa da, transfer birimi tüm dosya olduğu için büyük dosya farkını kapatamaz.
Farkın boyutu konusunda benim sözüme veya bir satıcı kıyaslamasına güvenmeyin. Kendi kütüphanenize benzeyen bir yapı oluşturun ve süreyi ölçün:
mkdir -p ~/synctest && cd ~/synctest
for i in $(seq 1 20000); do head -c 4096 /dev/urandom > "file_$i.bin"; done
du -sh ~/synctestBu dizini her iki sunucudaki eşitleme klasörüne bırakın ve istemcinin işlemi tamamlamasını izleyin. Güvenilirlik, hız kadar önemlidir. Seafile istemcisi önce blokları yükler ve bu bloklara referans veren commit kaydını en son yazar; bu nedenle kesintiye uğrayan bir yükleme, kütüphaneyi yarım yazılmış bir ağaç yapısı yerine önceki commit durumunda bırakır.
Küçük bir VPS üzerinde her birinin gereksinimleri
Seafile belgeleri "en az 2G RAM ve 2 çekirdekli CPU (> 2GHz)" talep etmektedir. Nextcloud belgeleri ise bunun yerine PHP süreci başına bellek miktarı belirtir: süreç başına minimum 128 MB ve önerilen 512 MB; bu değeri veritabanı, önbellek ve önizleme oluşturma süreçlerini eklemeden önce çalışan işçi (worker) sayınızla çarpmanız gerekir. Aşağıda küçük bir ekip için kullanacağım başlangıç noktaları yer almaktadır. Bunlar ölçüm değil, başlangıç referanslarıdır.
The data behind this chart
[
{
"label": "Seafile CE 13",
"start_ram_gb": 4,
"start_cpu_cores": 2,
"sql_databases": 3
},
{
"label": "Nextcloud 34",
"start_ram_gb": 4,
"start_cpu_cores": 2,
"sql_databases": 1
},
{
"label": "Syncthing 2",
"start_ram_gb": 1,
"start_cpu_cores": 1,
"sql_databases": 0
}
]Her ikisi de aynı sınıfa girer: 4 GB RAM ve 2 çekirdek; dolayısıyla kapladıkları alan seçimi belirleyen bir faktör değildir. Syncthing, 1 GB RAM ve 1 çekirdek üzerinde çalışır ki bu, onu değerlendirmek için dürüst bir nedendir. Hareketli parçalar bellek miktarından daha fazla farklılık gösterir. Seafile 3 adet SQL veritabanı tutarken, Nextcloud 1 adet tutar. Varsayılan Seafile Docker kurulumu; sunucuyu, MariaDB, Memcached, SeaDoc ve Caddy servislerini önceden indirdiğiniz dosyalardan ayağa kaldırır:
mkdir /opt/seafile
cd /opt/seafile
wget -O .env https://manual.seafile.com/13.0/repo/docker/ce/env
wget https://manual.seafile.com/13.0/repo/docker/ce/seafile-server.yml
wget https://manual.seafile.com/13.0/repo/docker/seadoc.yml
wget https://manual.seafile.com/13.0/repo/docker/caddy.yml
nano .env.env içerisinde SEAFILE_SERVER_HOSTNAME, MySQL root ve veritabanı şifrelerini, ilk yönetici hesabını ve JWT_PRIVATE_KEY değerini ayarlayın. Kılavuz, bu anahtar için en az 32 karakterlik rastgele bir dizi gerektirir ve bu değer ilk başlatmada okunur; bu nedenle yığını ayağa kaldırmadan önce anahtarı oluşturun:
openssl rand -base64 40
docker compose up -dİlk başlatma, üç veritabanını ve yönetici kullanıcısını oluşturur. TLS ve reverse proxy dahil olmak üzere Nextcloud'un eşdeğer kararları, Docker, TLS ve yedeklemeler ile VPS üzerinde Nextcloud rehberi içerisinde ele alınmıştır.
Yedeklemeler nasıl farklılık gösterir?
İnsanların hafife aldığı ve iki ürünün en çok ayrıştığı nokta budur.
Seafile için yedekleme sırası isteğe bağlı değildir. Kılavuzun kuralı, önce SQL veritabanını, ardından veri dizinini yedeklemektir; böylece veritabanındaki her kayıt referans alabileceği geçerli bir nesneye sahip olur ve kütüphaneler bozulmaz. Sırayı tersine çevirirseniz, bir veritabanı satırı, anlık görüntünüzün (snapshot) yakalamadığı bir bloğu işaret edebilir.
docker exec -i seafile-mysql mariadb-dump -uroot -p"$MYSQL_ROOT_PASSWORD" --opt ccnet_db > ccnet_db.sql
docker exec -i seafile-mysql mariadb-dump -uroot -p"$MYSQL_ROOT_PASSWORD" --opt seafile_db > seafile_db.sql
docker exec -i seafile-mysql mariadb-dump -uroot -p"$MYSQL_ROOT_PASSWORD" --opt seahub_db > seahub_db.sql
rsync -az /opt/seafile-data/seafile /backup/data/Bu satırlarda iki detay bulunmaktadır. mariadb-dump kullanın, çünkü mysql komut serisi Seafile'ın sunduğu MariaDB imajında kullanımdan kaldırılmıştır. Bir dosyaya yönlendirme yaparken docker exec komutundan -t bayrağını kaldırın; çünkü TTY satır sonlarını yeniden yazar ve döküm dosyasını bozar.
İki parça ayrı ayrı yakalandığı için aralarında tutarsızlık oluşabilir. Herhangi bir geri yükleme işleminden sonra, güvenmeden önce depolama alanını kontrol edin:
docker exec -it seafile bash
cd /opt/seafile/seafile-server-latest
./seaf-fsck.shBir şey eksik olduğunda, araç nesneyi şu şekilde belirtir:
Block 650fb22495b0b199cff0f1e1ebf036e548fcb95a is missing.
Repo ca1a860d HEAD commit is corrupted, need to restore to an old version.Çöp toplama (garbage collection) işlemini de planlayın. Tekilleştirme (deduplication), silinen dosyaların ve kütüphanelerin, siz aynı dizin üzerinden ./seaf-gc.sh komutunu çalıştırana kadar bloklarını tutmaya devam edeceği anlamına gelir. Çalıştırma işlemi, GC finished. 507 blocks total, about 507 reachable blocks, 0 blocks can be removed. gibi bulguları raporlar. Bu işlemi bir yıl boyunca atlarsanız, yedekleriniz kullanıcılarınızın sildiği veriler için ödeme yapmaya devam etmenize neden olur.
Nextcloud da benzer iki parçalı soruna farklı bir biçimde sahiptir, çünkü veri dizini ve veritabanı aynı ağaç yapısını tanımlamalıdır:
sudo -E -u www-data php occ maintenance:mode --on
rsync -Aavx /srv/nextcloud/ /backup/nextcloud-dirbkp/
mariadb-dump --single-transaction --default-character-set=utf8mb4 -u nextcloud -p"$DB_PASS" nextcloud > /backup/nextcloud-sqlbkp.bak
sudo -E -u www-data php occ maintenance:mode --offYapılandırma klasörünü, veri klasörünü, tüm özel uygulamaları, temanızı ve veritabanı dökümünü saklayın. Her iki parçayı da aynı ana ait olacak şekilde geri yükleyin. Veri dizini veritabanından daha yeniyse, kullanıcılar dosya önbelleğinin haberdar olmadığı dosyaları görür ve occ files:scan --all bu durumu onarır. Veritabanı daha yeniyse, önbellek satırları artık mevcut olmayan dosyaları işaret eder ve occ files:cleanup depolama tablosunda karşılığı olmayan önbellek girişlerini kaldırır.
Her iki durumda da, çok sayıda küçük dosyayla başa çıkabilen ve geçmiş tutabilen bir yedekleme programına ihtiyacınız vardır; restic ve BorgBackup'ın farklı yaptığı da tam olarak budur.
Masaüstü ve mobil istemciler
Seafile iki adet masaüstü programı sunar. Senkronizasyon istemcisi, seçtiğiniz kütüphanelerin yerel bir kopyasını tutar. Sürücü istemcisi (SeaDrive) ise kütüphanelerinizi sanal bir sürücü olarak bağlar ve dosyalara erişildiğinde indirir: Windows üzerinde Microsoft'un cloud files API'sini kullanır, macOS üzerinde 3.0 sürümü bir Finder uzantısıdır, Linux üzerinde ise 3.0.12 sürümünden itibaren AppImage olarak sunulur ve ~/SeaDrive dizinine bağlanır. Şifrelenmiş kütüphaneler her üç masaüstü platformunda da çalışır. Mobil uygulamalar dosyalara erişim sağlamak amacıyla tasarlanmıştır ve tek işlevleri budur.
Nextcloud masaüstü istemcisi de sanal dosyalar sunar; mobil uygulamaları ise platformun geri kalanını taşıdığından takvim, kişiler, Talk ve notlar dosya erişimiyle birlikte gelir. Kullanıcılarınız telefon odaklı çalışıyorsa ve dosyalardan fazlasına ihtiyaç duyuyorsa, bu günlük kullanımda ciddi bir fark yaratır.
Seafile ile ilgili bir detay planlama gerektirir: Kütüphane; paylaşım, senkronizasyon, izinler ve şifrelemenin temel birimidir. 500 GB veriyi tek bir kütüphaneye yüklemeden önce kütüphane yapınıza karar verin; çünkü kütüphaneler arası taşıma işlemi bir yeniden adlandırma değil, kopyalama ve silme işlemidir; bu nedenle dosyanın geçmişi yeni kütüphaneye aktarılmaz.
Şifreleme: her biri gerçekte neyi korur
Seafile'ın şifreli kütüphaneleri istemci tarafında çalışır. Parola sunucuda asla saklanmaz. Paroladan ve kütüphane kimliğinden türetilen bir sihirli anahtar (magic token) kütüphane ile birlikte saklanır; böylece bir istemci, eşitleme yapmadan önce parolayı doğrulayabilir. Dosya anahtarı, parolanızdan AES 256/CBC kullanılarak türetilen bir anahtar ve IV (başlatma vektörü) ile şifrelenir; dosya verileri ise bu dosya anahtarı ile şifrelenir.
Belgelenmiş sınırları okuyun, çünkü kullanıcılar bunları gözden kaçırmaktadır. Şifreli bir kütüphane yalnızca dosya içeriklerini şifreler. Klasör ve dosya adları, dosya boyutları veya düzenleme geçmişi şifrelenmez. Şifreli bir kütüphaneye web tarayıcısı üzerinden göz atmak uçtan uca değildir: parolayı girersiniz, sunucu bunu dosya anahtarını şifre çözmek için kullanır ve parolayı bir saat boyunca bellekte önbelleğe alır. Kılavuz ayrıca şifreli bir kütüphanenin veri bütünlüğünü garanti etmediğini açıkça belirtir; çünkü bir sunucu yöneticisi dosya içeriğinin bir kısmını değiştirebilir ve istemci bunu tespit edemez.
Nextcloud, kafa karıştırıcı derecede benzer isimlere sahip iki özelliğe sahiptir. Sunucu tarafı şifreleme (server side encryption), dosyaları depolandıkları yerde şifreler ancak anahtarları aynı sunucuda tutar; bu nedenle harici depolama alanındaki verileri, sunucuda root yetkisine sahip birinden koruduğundan çok daha iyi korur. Uçtan uca şifreleme uygulaması (end to end encryption app), seçilen klasörleri istemci tarafında şifreler ve tasarımı gereği sunucu bunları okuyamaz; bu nedenle web arayüzü, sunucu tarafı arama ve önizlemeler de bu klasörlerin içini göremez.
Her iki ürünün şifrelemesi de şifreli bir yedeğin yerini tutmaz. Yedeği kendi başına şifreleyin.
Takvimler, kişiler, ofis ve uygulama platformu
Bu eksen birbirine yakın değildir. Nextcloud, çekirdeğinde CalDAV (WebDAV üzerinden takvim) ve CardDAV (WebDAV üzerinden kişiler) ile gelir, belgeler için Collabora veya OnlyOffice entegrasyonu sağlar ve diğer her şey için bir uygulama mağazasına sahiptir. Seafile 13, işbirlikçi belgeler ve wiki sayfaları için SeaDoc ile gelir ve bunun ötesine geçmez. Takvim veya adres defteri bulunmamaktadır.
Platformun bir bedeli vardır ve bu bedel yükseltmelerdir. Yüklediğiniz her uygulama, bir Nextcloud yükseltmesini engelleyebilecek veya yükseltme sonrasında hatalı çalışabilecek bir başka unsurdur; bu nedenle kullanıcılarınız ne kadar çok özelliğe bağımlıysa, yükseltme süreciniz o kadar dikkat gerektirir. Seafile daha az işlev sunduğu için bozulma ihtimali daha düşüktür. Ayrıca, belgeler içinde tam metin arama ve klasör düzeyinde izinleri ücretli bir lisans altında ekleyen sürümün Community Edition değil, Seafile Professional olduğunu unutmayın; bu nedenle güvendiğiniz özelliğin kullanmayı planladığınız sürümde bulunduğunu doğrulayın.
Her birinin bilinen hata modu
Seafile, veritabanı ve nesne deposu (object store) arasındaki uyum bozulduğunda hata verir. Açılmayan bir kütüphane veya kaybolan dosyalarla karşılaşırsınız; seaf-fsck.sh eksik bloğu yazdırır. Elle onarılabilecek bir dosya ağacı yapısı bulunmadığından, kurtarma işlemi veritabanı yedeğinizin ve nesne deponuzun doğru sırada geri yüklenmesiyle yapılır. Bu geri yükleme işlemini bir kez yedek bir VPS üzerinde test edin; çünkü geri yüklemesi hiç denenmemiş bir yedek, sadece bir tahminden ibarettir.
Nextcloud, dosya önbelleği ile disk içeriği uyuşmadığında hata verir; bu durum genellikle Nextcloud'a bildirilmeden veri dizinine doğrudan yazma yapıldığında oluşur. Web arayüzünde listelenmeyen ancak diskte var olan dosyalar veya boyutu yanlış görünen klasörlerle karşılaşırsınız; occ files:scan bu sorunu çözer. Diğer iki zayıf noktası ise çok sayıda küçük dosyada protokol hızı (bunu hiçbir CPU gücü düzeltemez) ve PHP bellek kullanımıdır. Büyük resim ve video önbellekleri (preview) genellikle bellek kullanımını anlık olarak yükseltir; bu nedenle süreç başına 512 MB bellek ayırın ve önbellek oluşturma işlemlerini istek anında değil, zamanlanmış bir görev (cron job) olarak çalıştırın.
İkisi de değil: Yalnızca dosya eşitleme istiyorsanız Syncthing
Eğer asıl ihtiyacınız makineler arasında yansıtılan tek bir klasörse, her iki ürün de ihtiyacınızdan daha fazla yazılım yükü getirir. Syncthing'in sunucusu veya hesap sistemi yoktur. Her cihaz bir eş (peer) konumundadır; VPS ise dizüstü bilgisayarınız uyku modundayken açık kalan eş görevi görür. Syncthing 2 güncel sürümdür ve paketler projenin kendi deposundan temin edilir:
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 syncthingUygulamayı asla root olarak değil, normal bir kullanıcı olarak çalıştırın; böylece yazdığı dosyalar düzgün sahiplik izinlerine sahip olur:
sudo systemctl enable --now syncthing@youruser
systemctl status syncthing@youruserWeb arayüzü varsayılan olarak 127.0.0.1:8384 adresine bağlanır, bu nedenle internet üzerinden erişilemez; bu doğru bir varsayılan ayardır. Arayüze dizüstü bilgisayarınızdan bir SSH tüneli aracılığıyla erişin:
ssh -L 8384:127.0.0.1:8384 youruser@your-serverArdından dizüstü bilgisayarınızda http://127.0.0.1:8384 adresini açın. Syncthing'in kendisi TCP ve QUIC üzerinden 22000 numaralı portu kullanır, yerel keşif ise internet üzerinden çalışmayan UDP 21027 portunu kullanır. VPS üzerinde 22000 portunu açın ve arayüzü kapalı tutun:
sudo ufw allow 22000/tcp
sudo ufw allow 22000/udpBu yöntemde tüm sunucu özelliklerinden feragat edersiniz: Syncthing kullanmayan kişiler için paylaşım bağlantıları, web tabanlı dosya tarayıcısı, kullanıcı hesapları ve klasör bazlı dosya sürümleme (file versioning) özelliğini etkinleştirmediğiniz sürece sunucu tarafında çöp kutusu bulunmaz. Klasik sürpriz ise çakışma dosyalarıdır. Bir dosyayı birbirini göremedikleri sırada iki cihazda da düzenlerseniz, notes.sync-conflict-20260806-142233-ABCD1EF.md benzeri bir kardeş dosya oluşur. Sizi uyaran bir mekanizma yoktur, bu yüzden zaman zaman sync-conflict araması yapın.
Eğer istediğiniz eşitlenmiş bir klasör değil de uygulamaların veri yazdığı bir depolama alanıysa, bu farklı bir araç gerektirir: kendi kendine barındırılan S3 uyumlu nesne depolama bölümüne bakın. Daha geniş bir kapsam için, kendi kendine barındırılan Dropbox alternatifleri özeti bu karşılaştırmaya dahil edilmeyen seçenekleri ele almaktadır.
Karar kuralı
- Senkronizasyon odaklı bir işiniz varsa Seafile tercih edin: çok sayıda dosya, büyük boyutlu dosyalar, birden fazla cihaz ve yalnızca Seafile tarafından okunabilen bir veri deposunu kabul ediyorsanız bu doğru seçimdir.
- Bir platforma ihtiyacınız varsa Nextcloud tercih edin: takvimler, kişiler, belgeler ve paylaşım bağlantıları; ayrıca herhangi bir yedekleme aracının doğrudan okuyabileceği disk üzerindeki düz dosyalar için bu uygundur.
- İşiniz yalnızca bir klasörü yansıtmaktan ibaretse Syncthing tercih edin.
Seçiminizi dikkatli yapın; çünkü Seafile ile Nextcloud arasındaki geçiş süreci gerçek bir bağımlılıktır. Dönüştürücü bir araç bulunmamaktadır. Tüm verileri bir istemciye indirip diğer sunucuya yüklemeniz gerekir; bu süreçte bant genişliği ve zaman kaybederken sürüm geçmişi ve paylaşım bağlantıları geride kalır. Bugünkü seçiminizi önümüzdeki üç yılı kapsayacak şekilde yapmak, ikinci yılda sistem değiştirmekten daha maliyet etkin bir yöntemdir.
FAQ
Seafile, büyük kütüphaneleri senkronize ederken Nextcloud'dan daha mı hızlıdır?
Evet, genellikle sorun yaratan iki durumda ve doğrulayabileceğiniz bir nedenden dolayı daha hızlıdır. Seafile dosyaları ortalama 8 MB boyutunda bloklara böler ve yalnızca değişen blokları aktarır; bu nedenle büyük bir dosya içindeki bir düzenleme yalnızca birkaç bloğun taşınmasına neden olur. Nextcloud'un aktarım birimi dosyanın tamamıdır; bu yüzden aynı düzenleme dosyanın tamamının yeniden yüklenmesine yol açar. Ayrıca çok sayıda küçük dosyanın her biri en az bir WebDAV isteğine mal olur; toplu yükleme API'sinin küçük dosyaları paketlemesinin nedeni budur. Karar vermeden önce her ikisini de kendi VPS'nizde test edin; çünkü CPU, disk ve ağ bağlantınız protokol kadar önemlidir.
Seafile'ı veri dizini üzerinde rsync çalıştırarak yedekleyebilir miyim?
Yalnızca veritabanlarıyla birlikte ve belgelenen sırada yapabilirsiniz. Seafile kılavuzu, önce SQL'in, ardından veri dizininin yedeklenmesini önerir; çünkü bu sayede her veritabanı kaydı yedekte var olan bir nesneye işaret eder. rsync -az /opt/seafile-data/seafile /backup/data/ komutu conf, seafile-data ve seahub-data dizinlerini kopyalar ancak tek başına geri yüklenebilir değildir; çünkü nesne deposu okunabilir bir dosya ağacı tutmaz ve veritabanı bunun indeksidir. Her iki parçayı da geri yükledikten sonra seaf-fsck.sh komutunu çalıştırın ve sonuca güvenmeden önce çıktısını inceleyin.
Yalnızca dosya senkronizasyonu istiyorsam Nextcloud'a ihtiyacım var mı?
Hayır. Nextcloud bir platformdur; takvim, kişiler ve uygulama mağazası, kullansanız da kullanmasanız da bellek tüketir ve güncelleme bakımı gerektirir. Sadece dosya senkronizasyonu için Seafile daha hafif ve protokolü daha hızlı bir üründür. Syncthing ise çalıştırılacak bir sunucu tarafı olmadığı için daha da hafiftir. Nextcloud'u varsayılan olarak değil, ek uygulamalara ihtiyaç duyduğunuzda tercih edin.
Şifrelenmiş bir Seafile kütüphanesi dosya adlarımı gizler mi?
Hayır. Şifrelenmiş bir kütüphane, dosya içeriğini istemci tarafında şifreler ve parola asla sunucuya ulaşmaz; ancak klasör adları, dosya adları, dosya boyutları ve düzenleme geçmişi sunucuda görünür kalır. Şifrelenmiş bir kütüphaneyi web arayüzünde açmak, parolayı sunucuya gönderir; sunucu dosya anahtarını çözer ve parolayı bir saat boyunca bellekte tutar. Eğer dosya adlarının kendisi gizliyse, o kütüphaneyi web arayüzünden uzak tutun ve şifrelemeyi başka bir katmanda yapın.
Bir VPS üzerinde Seafile veya Nextcloud'a ne kadar RAM ayırmalıyım?
Az sayıda kullanıcı için her ikisine de 4 GB RAM ve 2 çekirdek ile başlayın, ardından önizleme oluşturma ve arama işlemleri sırasında bellek kullanımını izleyin. Seafile'ın kendi belgeleri alt sınırı 2 GB RAM ve 2 GHz üzerinde 2 çekirdekli bir CPU olarak belirler. Nextcloud, PHP süreci başına 512 MB önerir; bunu veritabanı ve önbellek eklemeden önce çalışan işçi (worker) sayısıyla çarpmanız gerekir. Syncthing ise 1 GB RAM ile rahatça çalışır.