İçeriğe atla
HexaTransfer
Bloga dön
Dosya transferi

Linux dosya aktarım araçları: CLI ve tarayıcı seçenekleri

En iyi Linux dosya aktarım araçlarını keşfedin. Komut satırı araçlarından tarayıcı hizmetlerine kadar dosya gönderme çözümleri.

Linux'ta en iyi dosya aktarım aracı, kendi makineleriniz arasında dosya taşıyıp taşımadığınıza (rsync, scp, sftp) ya da dışarıdaki birine gönderip göndermediğinize (HexaTransfer gibi tarayıcı tabanlı servisler) bağlıdır. Sunucudan sunucuya toplu kopyalamada rsync -avP --partial temel araçtır. Teknik bilgisi olmayan bir alıcıya geçici teslim için URL, onlardan SSH istemcisi kurmasını beklemeye kesinlikle üstün gelir. GNOME ve KDE gibi Linux masaüstü ortamları, dosya yöneticisi üzerinden SMB, WebDAV ve SFTP göz atmayı doğal olarak destekler.

CLI klasikleri

scp — SSH üzerinden güvenli kopyalama. Son derece basittir:

scp buyukdosya.tar.gz kullanici@sunucu:/home/kullanici/
scp -r klasor/ kullanici@sunucu:/yol/

Başarısızlıkta devam desteği yoktur. Güvenilir ağlar için uygundur, kararsız bağlantılarda sinir bozucudur. OpenSSH 9.0 (2022) varsayılan protokolü SCP-over-SSH'dan SFTP'ye geçirdi — davranış benzer, ancak uç durumlar farklılık gösterir.

rsync — devam destekli artımlı eşitleme:

rsync -avP --partial kaynak/ kullanici@sunucu:/hedef/

Bayraklar: -a arşiv modu (izinleri, zamanları, sembolik linkleri korur), -v ayrıntılı çıktı, -P ilerleme + --partial (hata durumunda kısmi dosyayı tutar). --bwlimit=50000 bant genişliğini paylaşımlı bir hatta 50 MB/s ile sınırlar.

Kaynak ve hedef aynı köke sahipken rsync, sonraki çalıştırmalarda yalnızca değişen baytları aktarır — tekrarlanan transferlerde büyük zaman tasarrufu sağlar.

sftp — etkileşimli SSH tabanlı dosya aktarımı. Eski bir FTP istemcisi gibi kullanılır:

sftp kullanici@sunucu
> put buyukdosya.tar.gz
> get dosya.txt

rclone — bulut sağlayıcıları için rsync gibi çalışır. S3, Google Drive, Dropbox, OneDrive, Backblaze B2 ve düzinelerce başkasını destekler. Nesne deposuna betiklenmiş yüklemeler için mükemmeldir:

rclone copy yerel/klasor uzak:kova/yol -P

Teknik olmayan alıcılar için tarayıcı tabanlı seçenekler

Her dosya alıcısının SSH anahtarı yoktur. Gazetecilere, müşterilere veya aile üyelerine gönderirken bir aktarım servisi URL'si en güvenilir yöntemdir:

| Servis | Ücretsiz maksimum | Şifreleme | Linux uyumluluğu | |---|---|---|---| | HexaTransfer | 10 GB | Uçtan uca AES-256-GCM | Evet (herhangi bir tarayıcı) | | WeTransfer | 2 GB | TLS | Evet | | SwissTransfer | 50 GB | TLS | Evet | | Proton Drive Share | 1 GB | Uçtan uca | Evet | | Tresorit Send | 5 GB | Uçtan uca | Evet |

Linux'ta Firefox ve Chromium büyük yüklemeleri yetkin şekilde yönetir. Yükleme performansı genellikle tarayıcıyı değil, donanımı ve bağlantı hızını yansıtır.

Masaüstünden aynı ağ araçları

GNOME Files (Nautilus): Sunucuya Bağlan > smb://, sftp://, ftp://, dav://. Uzak konumu yerel gibi bağlar. Ara sıra göz atma için kullanışlıdır.

KDE Dolphin: aynı yetenekler, biraz farklı arayüz. Aynı protokolleri destekler.

smbclient — betikler için komut satırı SMB:

smbclient //sunucu/paylasim -U kullanici

sshfs — SSH üzerinden uzak dosya sistemini bağlama:

sshfs kullanici@sunucu:/uzak/yol ~/bgl/uzak

Bir uygulamanın yerel yol beklediği durumlarda işe yarar.

Linux'ta aktarım hızı ayarı

Linux'un varsayılan TCP pencere ölçeklendirmesi yüksek bant genişlikli aktarımları iyi yönetir; ancak bazı dağıtımlar temkinli ayarlarla gelir. Yüksek gecikmeli, yüksek bant genişlikli uzak mesafeli bağlantılar için:

sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sysctl -w net.ipv4.tcp_wmem="4096 65536 16777216"

Kayıplı bağlantılarda daha iyi verim için BBR tıkanıklık kontrolünü etkinleştirin:

sysctl -w net.ipv4.tcp_congestion_control=bbr

Bunlar sıradan ev ağlarında gerekli değildir — ancak veri merkezleri arasında veya kıtalar genelinde veri taşıyorsanız varsayılan CUBIC ile BBR arasındaki fark 2-3 kat olabilir.

Arşivleme: tar varyantları

tar -czf arsiv.tar.gz klasor/          # gzip, hızlı, orta sıkıştırma
tar -cjf arsiv.tar.bz2 klasor/         # bzip2, daha yavaş, daha iyi sıkıştırma
tar -cJf arsiv.tar.xz klasor/          # xz, en yavaş, en iyi sıkıştırma
tar --use-compress-program=zstd -cf arsiv.tar.zst klasor/   # zstd, hızlı ve iyi oran

Modern Linux için zstd, hem hız hem de sıkıştırma oranı bakımından gzip'i geçer. Linux dışı alıcılara dağıtım yaparken .zip kullanın — zip -r arsiv.zip klasor/.

Büyük bir arşivi parçalara bölmek için:

tar -czf - klasor/ | split -b 2G - arsiv.tar.gz.parca_

cat arsiv.tar.gz.parca_* | tar -xzf - komutuyla yeniden birleştirin.

Aktarım katmanı olarak nesne deposu

Çok sayıda veya çok büyük dosya üreten iş yüklerinde bulut kovanını aktarım katmanı olarak kullanmak tek seferlik bir servisten daha düzenli bir çözümdür:

AWS S3: aws s3 cp dosya s3://kova/yol ardından aws s3 presign s3://kova/yol --expires-in 3600 ile önceden imzalanmış URL oluşturun. Alıcı zaman sınırlı doğrudan indirme alır.

Cloudflare R2: S3 uyumlu API, çıkış ücreti yok. Özel uç nokta ile aynı aws CLI kullanılır.

Backblaze B2: b2 upload-file kova dosya anahtar ardından b2 get-download-url-with-auth kova anahtar 3600.

MinIO: Kendi S3 uyumlu sunucunuzu barındırın, kendi alan adınızdan önceden imzalanmış URL'ler oluşturun.

Derleme çıktısı, günlük veya döküm gönderen geliştiriciler için bunlar genel amaçlı aktarım servisinden daha uygundur.

Geçici HTTP sunucuları

Aynı LAN'da hızlı aktarım için:

python3 -m http.server 8000

Geçerli dizini http://ip-adresiniz:8000/ üzerinden sunar. Alıcı URL'ye giderek dosyayı indirir. Aynı Wi-Fi'daki dizüstü ile sanal makine veya telefon arasında kullanışlıdır. Şifresizdir — dahili kullanım için sorunsuz, harici için uygun değil.

Self-imzalı sertifikasıyla HTTPS için:

python3 -c "import http.server, ssl; httpd = http.server.HTTPServer(('0.0.0.0', 8443), http.server.SimpleHTTPRequestHandler); httpd.socket = ssl.wrap_socket(httpd.socket, certfile='sert.pem', server_side=True); httpd.serve_forever()"

Gerçek alan adınız varsa caddy file-server otomatik HTTPS ile bunu temiz şekilde yapar.

P2P araçları

Magic Wormhole (wormhole):

wormhole send buyukdosya.tar.gz
# 7-gecit-saat gibi bir kod yazdırır
# alıcı şunu çalıştırır: wormhole receive 7-gecit-saat

Uçtan uca şifreli, NAT'ları bir buluşma sunucusu üzerinden aşar. Tek seferlik doğrudan aktarımlar için mükemmeldir.

croc (schollz tarafından): wormhole'a benzer, tek ikili dosya, platformlar arası. Homelab topluluğunda popülerdir.

Bunlar eşler arası olmakla birlikte NAT geçişi için buluşma sunucularına yönlendirilir — şifreleme uçtan ucadır, ancak yol doğrudan değildir.

Yüklemeden önce beklemede şifreleme

Ekstra dikkatli iş akışları için arşivi herhangi bir servis üzerinden göndermeden önce şifreleyin:

gpg --symmetric --cipher-algo AES256 buyukdosya.tar.gz

buyukdosya.tar.gz.gpg üretir. Alıcı gpg --decrypt ile şifresini çözer. Parolayı farklı bir kanaldan iletin.

Ya da modern bir alternatif olan age kullanın:

age -p -o sifreli.age acik_metin.tar.gz

HexaTransfer gibi uçtan uca şifreli aktarım servislerinde bu çift katman genellikle gereksizdir — ancak ulus devlet tehdit modeli söz konusuysa çift güvence mantıklıdır.

hexatransfer.com'da deneyin — ücretsiz, hesap gerekmez, 10 GB'a kadar.

Uçtan uca şifreleme ile büyük dosyaları güvenle gönderin

Uçtan uca şifreleme ile 10 GB'a kadar dosya ücretsiz aktarın. Hesap gerekmez. Dosyalarınız yüklenmeden önce tarayıcınızda şifrelenir — başka kimse okuyamaz.

Dosya gönder