Bir klasör scp
kullanılarak uzak ana bilgisayardan yerel ana bilgisayara nasıl kopyalanır?
Sunucumda oturum açmak için ssh
kullanıyorum.
Ardından, uzaktaki foo
klasörünü yerel /home/user/Desktop
klasörüne kopyalamak istiyorum.
Bu nasıl başarılır?
scp -r [email protected]:/path/to/foo /home/user/Desktop/
Man scp`den (Bkz. çevrimiçi kılavuz)
-r Tüm dizinleri özyinelemeli olarak kopyalama
Scp**'nin tüm gücünü kullanmak için sonraki adımları uygulamanız gerekir:
Sonra, örneğin bu ~/.ssh/config varsa:
Host test
User testuser
HostName test-site.com
Port 22022
Host prod
User produser
HostName production-site.com
Port 22022
kendinizi şifre girmekten kurtaracak ve scp sözdizimini bu şekilde basitleştireceksiniz:
scp -r prod:/path/foo /home/user/Desktop # copy to local
scp -r prod:/path/foo test:/tmp # copy from remote prod to remote test
Dahası, uzaktan yol tamamlamayı kullanabileceksiniz:
scp test:/var/log/ # press tab twice
Display all 151 possibilities? (y or n)
Güncelleme:
Uzaktan bash-tamamlamayı etkinleştirmek için hem <source>
hem de <target>
ana bilgisayarlarında bash-shell'e ve düzgün çalışan bash-tamamlamaya sahip olmanız gerekir. Daha fazla bilgi için ilgili sorulara bakınız:
Scp kullanırken uzak yollar için otomatik tamamlama nasıl etkinleştirilir?
SCP dosya adı sekmesi tamamlama
Önce uzak sunucudaki kataloğu sıkıştırmak daha iyidir:
tar czfP backup.tar.gz /path/to/catalog
İkinci olarak, uzaktan indirin:
scp [email protected]:/path/to/backup.tar.gz .
Sonunda dosyaları ayıklayın:
tar -xzvf backup.tar.gz