Kadir Hanoğlu

SCP Dosya Transferi

SCP yani "Secure Copy" diye adlandırılan güzel Türkçemizde ise güvenli kopya olarak bilinen bu komut, ssh ile kimlik doğrulaması sağlayarak sunucular arası dosya transferi işlemlerinde çokça kullandığımız güvenli bir komuttur. Scp ile dilerseniz kendi sunucunuza farklı bir sunucudan dosya çekebilir, dilerseniz kendi sunucunuzdan farklı bir sunucuya dosya transfer edebilirsiniz.

Çok detayı olmayan bu komut için bir kaç temel bilgi verdikten sonra başlıkları ile komutlarımızı yazıp kısa ve öz bir makale ortaya çıkarmış olacağım. Daha fazla komut ve parametre için ( Bkz. OpenBSD General Commands )

  • -P : Bağlantı kuracağınız sunucudaki port 22 dışında bir port ise bu portu belirtmek için kullanılır.
  • -C Transfer edilen dosyaları sıkıştırmak için kullanılır. Kopyalamanın hızında faydası olur.
  • -c blowfish Triple-DES ile şifrelenerek gönderilen verilerin hızını yükseltmek için kullanılır.
  • -r Ağaç yapısında olacak şekilde belirtilen klasör ve altındaki tüm klasörleri kopyalamak için kullanılır.


Örneklerin daha anlaşılabilir olması için sunuuclara isim ve ip vereceğim.

Örneklerde kullanılan sunuculardan, VENUS bizim sunucumuz ve EARTH karşıdaki sunucu olarak kullanılacak!
  • VENUS - 198.168.0.24 - 22
  • EARTH - 198.168.0.28 - 3265



SCP ile Sunucumuza Farklı Bir Sunucudan Nasıl Dosya Çekilir ?


scp -P 3265 root@198.168.0.28:/var/www/dosya.tar.gz /home

EARTH sunucusundaki /var/www dizininden VENUS sunucumuzdaki home dizinine dosya.tar.gz dosyasını çektik.


SCP ile Sunucudan Farklı Bir Sunucuya Nasıl Dosya Transfer Edilir ?


Yukarıdaki transfer ettiğimiz dosya.tar.gz dosyasını şimdi EARTH sunucusuna geri transfer edelim.

home dizinine geçiş yapıyorum
cd /home

Dosyamı EARTH sunucusuna gönderiyorum.
scp -P 3265 dosya.tar.gz root@198.168.0.28:/home

Bu sayede EARTH sunucusundan çektiğimiz dosyayı aynı şekilde EARTH sunucusundaki home dizinine gönderdim.


SCP ile Uzak Sunucudan Klasör Nasıl Çekilir ?


VENUS sunucusunda home dizini altında bulunan dokumanlar klasörünü altındaki tüm dosya ve klasörleri ile EARTH sunucumuza çekeceğiz.

dokumanlar klasörünü EARTH sunucumuza çekiyoruz...
scp -r root@198.168.0.24:/home/dokumanlar /home


SCP ile Uzak Sunucuya Klasör Transferi Nasıl Yapılır ?


EARTH sunucusuna çektiğimiz home dizini altında bulunan dokumanlar klasörünü altındaki tüm dosya ve klasörleri ile şimdi VENUS sunucusunda /var/www dizinine transfer edeceğiz.

Öncelikle EARTH sunucusunda home dizinine geçiyoruz
cd /home

dokumanlar klasörünü VENUS sunucusuna transfer ediyoruz...
scp -r dokumanlar root@198.168.0.24:/var/www


SCP ile Çoklu Dosya Transferi Nasıl Yapılır ?


Sunucu başında beklemek yerine, farklı uzantı ve isimlerdeki aktarımı uzun sürecek dosyalar için işinize yarayacak bir scp transfer komutu :)
EARTH sunucumuzdaki dosya1.zip, dosya2.tar.gz, dosya3.bz, dosya4.tar dosyalarını VENUS sunucumuza çekiyoruz.
scp -P 3265 root@198.168.0.28:/home/\{dosya1.zip,dosya2.tar.gz,dosya3.bz,dosya4.tar\}

    • bowtiesmilelaughingblushsmileyrelaxedsmirk
      heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
      winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
      worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
      expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
      disappointedconfoundedfearfulcold_sweatperseverecrysob
      joyastonishedscreamtired_faceangryragetriumph
      sleepyyummasksunglassesdizzy_faceimpsmiling_imp
      neutral_faceno_mouthinnocent