Dosya Transferi#

TRUBA sistemine uzaktan erişim sağlamak ve veri aktarımı gerçekleştirmek için öncelikle VPN bağlantısının aktif hale getirilmiş olması gerekmektedir. VPN bağlantısı olmadan aşağıdaki işlemlerin gerçekleştirilmesi mümkün değildir. Eğer VPN bağlantınız yoksa, OpenVPN Bağlantısı bölümünden gerekli yönergeleri takip edebilirsiniz.

Uyarı

VPN bağlantısı kurulduktan sonra, daha hızlı veri aktarımı için aşağıdaki kullanıcı arayüzlerinin tercih edilmesi önerilir:

  • arf-ui4 (172.16.6.14)

  • arf-ui5 (172.16.6.15)

Dosya Aktarımı Yöntemleri#

TRUBA sistemine dosya aktarımı için farklı işletim sistemlerine uygun çeşitli yöntemler mevcuttur. Aşağıda en yaygın kullanılan yöntemler detaylı olarak açıklanmıştır.

Not

Aşağıdaki örneklerde IP adresi yerine yukarıda belirtilen kullanıcı arayüzü IP adreslerini kullanmanız gerekmektedir.

Linux ve macOS Kullanıcıları#

1. rsync Kullanımı#

rsync, dosya aktarımında en verimli yöntemlerden biridir. Yalnızca değişen dosyaları aktararak ağ trafiğini minimize eder ve hızlı senkronizasyon sağlar.

Temel Kullanım:

# Tek dosya aktarımı
rsync -av dosya_adi kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

# Dizin aktarımı (recursive)
rsync -av yerel_dizin/ kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

# Uzaktan yerel bilgisayara aktarım
rsync -av kullanici_adi@<arayuz-ip-adresi>:/uzak/dizin/ yerel_dizin/

Yaygın Kullanılan Parametreler:

  • -a: Archive modu (dosya özelliklerini korur, recursive dahil)

  • -v: Verbose (detaylı çıktı)

  • -z: Sıkıştırma (yavaş ağlarda faydalı)

  • -P: İlerleme çubuğu ve kısmi aktarım desteği

  • --delete: Hedefte olmayan dosyaları siler

  • -r: Recursive (dizinler için, -a ile birlikte gereksiz)

  • -n: Dry run (test modu, gerçek aktarım yapmaz)

  • --exclude: Belirli dosya/dizinleri hariç tutar

Gelişmiş Kullanım - Paralel Aktarım:

Çok sayıda dosya veya büyük veri setleri aktarırken, paralel aktarım yöntemleri kullanarak transfer süresini önemli ölçüde kısaltabilirsiniz. Aşağıda farklı senaryolar için paralel aktarım yöntemleri açıklanmıştır.

Uyarı

SSH sunucuları eşzamanlı bağlantı sayısını sınırlandırır. Çok fazla paralel işlem (-j değeri) açmak “Connection refused” veya “Too many connections” hatalarına neden olabilir.

  • Önerilen maksimum paralel işlem sayısı: 4-8 arası

  • Daha yüksek değerler kullanmadan önce küçük bir test yapın

Senaryo 1: Dizindeki Tüm Dosyaları Paralel Aktarma

Bir dizindeki tüm dosyaları paralel olarak aktarmak için find ve parallel kombinasyonunu kullanabilirsiniz:

# Mevcut dizindeki tüm dosyaları 4 paralel işlemle aktarma
find . -type f | parallel -j 4 rsync -av {} kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

# Belirli uzantıdaki dosyaları aktarma (örn: .dat dosyaları)
find . -name "*.dat" -type f | parallel -j 4 rsync -av {} kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

Senaryo 2: Dosya Listesinden Aktarım

Aktarılacak dosyaların listesi bir dosyada tutuluyorsa:

# dosya_listesi.txt içindeki her satır bir dosya yolunu içerir
parallel -j 4 -a dosya_listesi.txt rsync -av {} kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

Senaryo 3: Alt Dizinleri Paralel Aktarma

Büyük bir dizin yapısını alt dizinler bazında paralel aktarmak için:

# Her alt dizini ayrı bir rsync işlemiyle aktarma
ls -d */ | parallel -j 4 rsync -av {} kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

fpsync ile Büyük Ölçekli Paralel Aktarım

fpsync, petabayt ölçeğindeki veri aktarımları için optimize edilmiş bir araçtır. GNU Parallel’den farklı olarak, kendi zamanlayıcısına sahiptir ve aktarımı otomatik olarak parçalara böler.

Not

fpsync kullanmak için önce fpart paketinin kurulu olması gerekmektedir:

# macOS
brew install fpart

# Ubuntu/Debian
sudo apt-get install fpart

# CentOS/RHEL (EPEL gerektirir)
sudo yum install fpart

fpsync Temel Kullanımı:

# 4 paralel worker ile aktarım
# Her worker maksimum 1000 dosya ve 100 MB aktarır
fpsync -n 4 -f 1000 -s $((100 * 1024 * 1024)) \
    /yerel/dizin/ kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

fpsync Parametreleri:

  • -n: Paralel worker (işlem) sayısı

  • -f: Worker başına maksimum dosya sayısı

  • -s: Worker başına maksimum aktarım boyutu (byte)

  • -r: Önceki aktarımı devam ettir (resume)

  • -v: Detaylı çıktı

fpsync Avantajları:

  • Dosya sistemi taraması sırasında aktarım başlar (bekleme yok)

  • Kesintiye uğrayan aktarımlar devam ettirilebilir (-r parametresi)

  • Düşük bellek kullanımı (milyonlarca dosya için bile)

  • İlerleme durumu takibi

  • Çoklu node desteği (-w parametresi ile uzak worker’lar)

Not

Ne Zaman Hangisini Kullanmalı?

  • GNU Parallel: Basit senaryolar, az sayıda dosya (yüzler, binler)

  • fpsync: Büyük veri setleri (on binlerce+ dosya), petabayt ölçeğinde veriler, devam ettirilebilir aktarımlar

2. scp Kullanımı#

scp (Secure Copy), SSH protokolü üzerinden güvenli dosya aktarımı sağlar.

Temel Kullanım:

# Dosya aktarımı
scp dosya_adi kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

# Dizin aktarımı (recursive)
scp -r yerel_dizin/ kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

# Uzaktan yerel bilgisayara aktarım
scp -r kullanici_adi@<arayuz-ip-adresi>:/uzak/dizin/ yerel_dizin/

Faydalı Parametreler:

  • -r: Recursive (dizinler için)

  • -C: Sıkıştırma

  • -P port: Özel port kullanımı

  • -v: Verbose (detaylı çıktı)

  • -p: Dosya izinlerini korur

  • -i: Özel SSH anahtarı kullanır

3. sftp Kullanımı#

Etkileşimli dosya aktarımı için sftp kullanabilirsiniz:

# SFTP oturumu başlatma
sftp kullanici_adi@<arayuz-ip-adresi>

# SFTP komutları
put yerel_dosya uzak_dosya    # Yükleme
get uzak_dosya yerel_dosya    # İndirme
mput *.txt                    # Çoklu yükleme
mget *.txt                    # Çoklu indirme
lcd yerel_dizin               # Yerel dizin değiştirme
cd uzak_dizin                 # Uzak dizin değiştirme
ls                           # Uzak dizin listesi
lls                          # Yerel dizin listesi
quit                          # Çıkış

Windows Kullanıcıları#

Windows işletim sisteminde dosya aktarımı için hem komut satırı hem de grafiksel arayüz seçenekleri mevcuttur.

Komut Satırı Yöntemleri:

Windows 10 ve sonrasında OpenSSH istemcisi varsayılan olarak gelir:

# PowerShell veya CMD'de
scp dosya_adi kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/
rsync -av yerel_dizin/ kullanici_adi@<arayuz-ip-adresi>:/hedef/dizin/

Grafiksel Arayüz Uygulamaları:

Aşağıdaki popüler uygulamalar sürükle-bırak yöntemiyle kolay dosya aktarımı sağlar:

  • MobaXTerm: Kapsamlı SSH istemcisi ve dosya yöneticisi

  • FileZilla: Açık kaynak, çoklu protokol desteği

  • WinSCP: Özellikle SFTP/SCP için optimize edilmiş

Detaylı kurulum ve kullanım kılavuzları için:

Bu uygulamalar sayesinde dosyalar sürükle-bırak yöntemiyle kolaylıkla indirilebilir veya yüklenebilir.

Performans İpuçları:

  • Büyük dosyalar için rsync tercih edin

  • Ağ bağlantınız yavaşsa sıkıştırma parametrelerini kullanın

  • Çok sayıda küçük dosya için paralel aktarım yöntemlerini değerlendirin

  • VPN bağlantınızın stabil olduğundan emin olun

  • Aktarım öncesi rsync -n ile test yapın

  • Gereksiz dosyaları –exclude ile hariç tutun