Nextcloud'u Storage Server'a bağlama: alan, kota ve paylaşımlar

Yayınlanma tarihi 5 dk okuma

Nextcloud kullanıcıları, kotaları ve paylaşımları getirir, Storage Server ise alanı. İkisi birlikte kendi bulutunuzu oluşturur: küçük bir sunucu yeter, terabaytlar başka yerde durur.

Nextcloud, bir Storage Server'ın yapamadığı her şeyi yapar: kullanıcıları yönetir, her birine ayrı bir kota verir, klasörleri paylaşır, parolalı ve son kullanma tarihli bağlantılar oluşturur ve dosyaları HTTPS üzerinden tarayıcılara sunar. Nextcloud'u pahalı hâle getiren şey ise alandır, çünkü bu alan sunucunun NVMe SSD'si üzerindedir.

İkisi birlikte, pratikte kendini kabul ettirmiş olan kurulumu verir: Nextcloud için küçük bir sunucu, dosyalar bir Storage Server üzerinde. Bu yazı iki kurulum yolunu da gösteriyor, hangisinin ne zaman daha iyi olduğunu açıklıyor ve bu sırada her defasında karşınıza çıkan tuzakları sayıyor.

Bu birleşim neden bu kadar iyi oturuyor

Nextcloud'un getirdikleriStorage Server'ın getirdikleri
Parolalı ve iki aşamalı doğrulamalı kullanıcı hesaplarıAlan, 1 ile 20 TB arası
Kullanıcı başına kotaİkinci yedekleme katmanı olarak anlık görüntüler
Parolalı ve süreli paylaşım bağlantılarıSunucudan ayrı bir lokasyon
Oturum açmayla HTTPS üzerinden sunumTerabayt başına maliyetin çok küçük bir kısmı
Sürüm geçmişi ve çöp kutusuAyrı amaçlar için 100 alt hesap

Pek çok proje için belirleyici nokta şu: Storage Server alt hesap başına kota tanımaz. Bir alt hesap kendi dizininde kalır, ama orada tarifenin bütün alanını doldurabilir. Nextcloud tam bunu çözer, çünkü orada her kullanıcı sert bir kota alır.

İki yol ve hangisinin daha iyi olduğu

A yolu: Nextcloud depolamayı kendi yerleşik SMB veya SFTP sürücüsüyle doğrudan konuşur. İşletim sisteminde hiçbir müdahale gerekmez.

B yolu: Depolamayı işletim sisteminde bir dizin olarak bağlarsınız ve Nextcloud'da bu dizine “Yerel” türünde bir harici depolama tanımlarsınız.

Root yetkiniz varsa B yolunu seçin. Dosya sistemi üzerinden geçen yol, özellikle çok sayıda küçük dosyada Nextcloud'un SFTP sürücüsünden hissedilir biçimde daha hızlıdır ve ağ kesintilerini daha iyi atlatır. A yolu ise işletim sisteminde hiçbir şeyi değiştiremediğinizde ya da değiştirmek istemediğinizde devreye girer.

Hazırlık: ayrı bir alt hesap

Müşteri panelinde yalnızca Nextcloud için, kendi başlangıç dizini olan bir alt hesap oluşturun, örneğin /nextcloud. Ona yalnızca gerçekten kullandığınız protokolü açın. Ayrıca “Erişim Ayarları” bölümünde Dış Erişilebilirlik seçeneğinin açık olduğunu kontrol edin, yoksa sunucu depolamaya ulaşamaz.

Örnekler şu değerleri kullanıyor, siz kendi değerlerinizi yazın:

BilgiÖrnek değer
Ana bilgisayar adıu123456.storage.kernelhost.net
Alt hesapu123456-sub1
Paylaşım (SMB)backup
SMB portu445
SFTP portu23

B yolu: bağlama ve yerel depolama olarak kullanma

Önce bağlama. Debian ve Ubuntu'da:

apt install -y cifs-utils
mkdir -p /mnt/storage
printf 'username=u123456-sub1\npassword=PAROLANIZ\n' > /etc/samba/storage.cred
chmod 600 /etc/samba/storage.cred

Sonra, bir yeniden başlatmayı atlatması için /etc/fstab kaydı:

//u123456.storage.kernelhost.net/backup /mnt/storage cifs credentials=/etc/samba/storage.cred,uid=www-data,gid=www-data,file_mode=0660,dir_mode=0770,seal,_netdev,nofail 0 0

Önemli üç seçenek: uid=www-data web sunucusunun yazabilmesini sağlar, seal aktarımı SMB 3 ile şifreler, _netdev ve nofail ise depolama o anda yanıt vermiyorsa sunucunun açılışta takılıp kalmasını önler.

mount -a
sudo -u www-data touch /mnt/storage/test && echo "Yazma erişimi tamam"

Ardından Nextcloud'da “External storage support” uygulamasını etkinleştirin ve depolamayı tanımlayın, ya arayüzde Yönetim, Harici depolama altında ya da komut satırında:

sudo -u www-data php occ app:enable files_external
sudo -u www-data php occ files_external:create Veriler local null::null -c datadir=/mnt/storage
sudo -u www-data php occ files_external:list

“Veriler” klasörü artık, eriştirdiğiniz kullanıcılarda görünür. Paylaşımı kullanıcı ya da grup bazında yönetirsiniz, böylece herkes her şeyi görmez.

A yolu: doğrudan Nextcloud içinde harici depolama

Root yetkisi olmadan, bağlama yapmadan da olur. SMB için uygun PHP eklentisine ihtiyacınız var:

apt install -y smbclient php-smbclient
systemctl restart php8.3-fpm

Sonra Yönetim, Harici depolama altında bir kayıt oluşturun:

AlanDeğer
Klasör adıVeriler
Harici depolamaSMB / CIFS
Ana bilgisayaru123456.storage.kernelhost.net
Paylaşımbackup
Uzak alt klasörnextcloud
Kullanıcı adıu123456-sub1
Parolaalt hesabın parolası

SFTP için bunun yerine “SFTP” türünü seçer, ana bilgisayar olarak u123456.storage.kernelhost.net ve port olarak 23 yazarsınız. Bu yolda en sık görülen hata kaynağı da burasıdır: Nextcloud 22'yi önerir, bizim depolamamız 23'ü dinler.

Kullanıcı başına kota verme

Şimdi bütün bu kurulumu haklı çıkaran kısım geliyor. Yönetim, Kullanıcılar altında her hesaba bir kota yazarsınız, örneğin 50 GB. Ya da komut satırında:

sudo -u www-data php occ user:setting fotografci1 files quota "50 GB"

Nextcloud bu hesaba sürümleri ve çöp kutusunu da katar. Bu doğrudur, ama şaşırtmayı sever: 50 GB alıp 50 GB yükleyen biri, eski sürümler yüzünden hızla düşündüğünden fazlasını doldurmuş olur. Eklemek yerine çok şey değiştiren hesaplarda sürümlerin saklanmasını sınırlamak işe yarar.

Kendi web siteniz için paylaşım bağlantıları

Nextcloud için harici depolama da diğerleri gibi bir klasördür, yani paylaşımlar hiç değişmeden çalışır. Parolalı ve son kullanma tarihli bir bağlantı üç tıkla oluşur, dosya bu sırada depolamadan doğrudan değil, Nextcloud üzerinden sunulur. Yani depolama erişim bilgileriniz sunucudan hiç çıkmaz.

Tek başına bir Storage Server'da eksik olan yapı taşı tam olarak budur. İndirme bölümü olan bir web sitesi işleten, burada kullanıcı yönetimini, yetkileri ve sunumu bir arada, kendisi hiçbir şey programlamadan elde eder. Nextcloud olmadan alternatifin nasıl göründüğü Storage Server'ı kendi web siteniz için kullanma yazısında anlatılıyor.

Her defasında karşınıza çıkan dört tuzak

  • Veri dizini depolamaya ait değildir. Teknik olarak olur, pratikte risklidir: Nextcloud oraya kilit dosyaları ve ara durumlar da yazar, kısa bir ağ kesintisi bütün kurulumu felç eder. Harici depolama olarak bağlandığında bir kesinti yalnızca o tek klasörü etkiler.
  • Veritabanı yerelde kalır. Her zaman. Depolamaya dosyalar aittir, başka hiçbir şey.
  • Redis kurun. Dosya kilitleri için bir ön bellek olmadan, harici depolamalı Nextcloud hissedilir biçimde yavaşlar, çünkü her kilit veritabanı üzerinden geçer.
  • 22 değil, 23 numaralı port. SFTP'de Nextcloud 22'yi önerir. Bizim depolamamız 23'ü dinler ve buna ait hata mesajı pek yardımcı olmaz.

Hangi sunucu ve hangi tarife

Nextcloud'un kendisi için küçük bir makine yeter. Dosyalar zaten başka yerde durur, sunucu yalnızca yönetir: bir elin parmakları kadar kullanıcıdan birkaç düzine etkin kullanıcıya kadar, Redis çalışıyor ve arka plan görevi kuruluysa 4 ile 8 GB RAM yeter. Bunun anlatıldığı bir rehber Nextcloud'u kendi sunucunuza kurma yazısında var.

Depolamada seçim alana göre yapılır:

TarifeAlanAnlık görüntülerFiyat
Storage-11 TB10 artı 10 otomatik9,99 EUR
Storage-25 TB20 artı 20 otomatik29,99 EUR
Storage-310 TB30 artı 30 otomatik39,99 EUR
Storage-420 TB40 artı 40 otomatik69,99 EUR

Bütün Storage Server sunucuları Almanya'da durur, SMB, SFTP, WebDAV ve dahasını konuşur, 100'e kadar alt hesaba izin verir ve anlık görüntüleri yanında getirir. Kurulum ücreti yok, ön ödemeli, asgari sözleşme süresi yok. Alan ihtiyacınız büyürse, verilere hiç dokunmadan daha büyük tarifeye geçersiniz.

Sıkça sorulan sorular

Neden doğrudan çok diskli büyük bir sunucu almıyoruz?
Çünkü NVMe SSD'li bir sunucuda disk alanı kat kat pahalıdır. Nextcloud'un kendisi az yer ve az güç ister, yük dosyalarda birikir. Bu yüzden küçük bir sunucu artı depolama, kural olarak çok diskli büyük bir sunucudan belirgin biçimde daha ucuza gelir.
SMB mi SFTP mi kullanmalıyım?
Nextcloud sunucusunda root yetkiniz varsa depolamayı SMB ile dosya sistemine bağlayın ve Nextcloud'da bu dizine yerel bir harici depolama tanımlayın. Bu yol, çok sayıda küçük dosyada hissedilir biçimde yavaşlayan Nextcloud SFTP sürücüsünden daha hızlı ve daha kararlıdır.
Her kullanıcıya ayrı bir boyut verebilir miyim?
Evet, bu kurulumun asıl nedeni de bu. Storage Server'ın kendisi alt hesap başına kota tanımaz, Nextcloud ise tanır. Kullanıcı yönetiminde her hesaba bir kota verirsiniz ve Nextcloud bunu uygular.
Verileri harici depolama yerine doğrudan depolamanın üzerine koyabilir miyim?
Teknik olarak evet, Nextcloud'un veri dizinini bağlanmış depolamaya koyarak. Ama önerilmez: Nextcloud oraya kilit dosyaları, önizlemeler ve ara durumlar da yazar, kısa bir ağ kesintisinde bütün kurulum durur. Harici depolama olarak bağlandığında bir kesinti yalnızca ilgili klasörü etkiler.
Paylaşım bağlantıları depolamadaki dosyalar için de çalışır mı?
Evet, Nextcloud için harici depolama da diğerleri gibi bir klasördür. Parolalı ve son kullanma tarihli paylaşımlar aynı şekilde çalışır, dosya bu sırada depolamadan doğrudan değil, Nextcloud üzerinden sunulur.
Bu ne kadar hızlı?
Büyük dosyalarda sınırı depolama değil, sunucunuzun bağlantısı belirler. Çok sayıda küçük dosyada her erişime ağ gecikmesi eklenir, bu yüzden önizleme görselleri harici depolamaya değil, Nextcloud'un yerel ön belleğine aittir.
Depolama kısa süre erişilemez olursa ne olur?
Harici depolama olarak bağlandığında Nextcloud klasörü kullanılamıyor diye bildirir, geri kalan her şey çalışmaya devam eder. Bütün veri dizini orada duruyorsa kurulum durur. Harici depolamalı çözümün en önemli gerekçesi budur.
Depolamada bir veritabanına ihtiyacım var mı?
Hayır, kesinlikle olmaz. Veritabanı sunucuda, hızlı yerel diskte kalır. Depolamaya yalnızca dosyalar aittir.
Küçük bir sunucu kaç kullanıcıyı kaldırır?
Bir elin parmakları kadar kullanıcıdan birkaç düzine etkin kullanıcıya kadar, 4 ile 8 GB RAM'li bir sunucu sorunsuz yeter; yeter ki Redis ve düzenli bir arka plan görevi kurulu olsun. Dosyalar zaten başka yerde durur, sunucu yalnızca yönetir.
Bu birleşim ne kadara gelir?
Nextcloud için küçük bir sunucu, artı 1 TB için ayda 9,99 euro'dan başlayan bir Storage Server. 5 TB'lık Storage-2 29,99, 10 TB'lık Storage-3 39,99 ve 20 TB'lık Storage-4 69,99 euro tutar. Hepsi kurulum ücreti olmadan, ön ödemeli esasla ve asgari sözleşme süresi olmadan.

Nextcloud Storage Server Externer Speicher SMB SFTP Quota Freigaben