scp
사용하여 원격에서 로컬 호스트로 폴더를 복사하려면 어떻게 해야 합니까?
나는 ssh
를 사용하여 내 서버에 로그인합니다.
그런 다음 원격 폴더 foo
를 로컬 /home/user/Desktop
에 복사하고 싶습니다.
이를 어떻게 달성합니까?
질문자 :Slasengger
scp
사용하여 원격에서 로컬 호스트로 폴더를 복사하려면 어떻게 해야 합니까?
나는 ssh
를 사용하여 내 서버에 로그인합니다.
그런 다음 원격 폴더 foo
를 로컬 /home/user/Desktop
에 복사하고 싶습니다.
이를 어떻게 달성합니까?
scp -r user@your.server.example.com:/path/to/foo /home/user/Desktop/
foo 끝에 후행 '/'를 포함하지 않음으로써 디렉토리의 내용만이 아니라 디렉토리 자체(내용 포함)를 복사하게 됩니다.
man scp
( 온라인 설명서 참조)
-r 전체 디렉토리를 재귀적으로 복사
scp의 모든 기능을 사용하려면 다음 단계를 거쳐야 합니다.
그런 다음, 예를 들어 다음이 있는 경우 ~/.ssh/config :
Host test User testuser HostName test-site.com Port 22022 Host prod User produser HostName production-site.com Port 22022
암호 입력에서 자신을 저장하고 다음과 같이 scp 구문을 단순화합니다.
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
또한 원격 경로 완성을 사용할 수 있습니다.
scp test:/var/log/ # press tab twice Display all 151 possibilities? (y or n)
업데이트:
<source>
및 <target>
호스트 모두에 bash-shell이 있어야 하고 제대로 작동하는 bash-completion이 필요합니다. 자세한 내용은 관련 질문을 참조하십시오.
로컬 위치 에서 원격 위치로 모두 복사하려면(업로드)
scp -r /path/from/local username@hostname:/path/to/remote
원격 위치 에서 로컬 위치로 모두 복사하려면(다운로드)
scp -r username@hostname:/path/from/remote /path/to/local
xxxx
가 사용자 정의 포트 번호인 사용자 정의 포트
scp -r -P xxxx username@hostname:/path/from/remote /path/to/local
원격에서 로컬로 현재 디렉토리에 복사
scp -r username@hostname:/path/from/remote .
돕다:
-r
모든 디렉토리와 파일을 재귀적으로 복사/
에서 전체 위치 사용, pwd
scp
는 모든 기존 파일을 대체합니다.hostname
은 호스트 이름 또는 IP 주소입니다.-P portnumber
참고: 방화벽에서 포트가 허용되지 않아 사용자 지정 포트가 작동하지 않는 경우가 있으므로 방화벽에서 사용자 지정 포트가 들어오고 나가는 연결을 허용하는지 확인하십시오.
내가 항상 사용하는 것은 다음과 같습니다.
scp -r username@IP:/path/to/server/source/folder/ .
. (점) : current folder
의미합니다. 따라서 서버에서 복사하여 여기에만 붙여넣습니다.
IP 125.55.41.311
과 같은 IP 주소 ns1.mysite.com
과 같은 호스트일 수 있습니다.
원격 서버에서 카탈로그를 먼저 압축하는 것이 좋습니다.
tar czfP backup.tar.gz /path/to/catalog
둘째, 원격에서 다운로드:
scp user@your.server.example.com:/path/to/backup.tar.gz .
마지막으로 파일을 추출합니다.
tar -xzvf backup.tar.gz
그리고 원격 위치에서 다운로드할 파일이 하나 있고 보안에 크게 신경 쓰지 않는다면 scp 기본 암호화(Triple-DES)를 'blowfish'와 같은 것으로 변경해 보십시오.
이렇게 하면 파일 복사 시간이 크게 줄어듭니다.
scp -c blowfish -r user@your.server.example.com:/path/to/foo /home/user/Desktop/
전형적인 시나리오,
scp -r -P port username@ip:/path-to-folder .
샘플로 설명하자면,
scp -r -P 27000 abc@10.70.12.12:/tmp/hotel_dump .
어디,
port = 27000 username = "abc" , remote server username path-to-folder = tmp/hotel_dump . = current local directory
Unity 툴바에서 파일로 이동
Ctrl + l을 누르고 here_goes_your_user_name@192.168.10.123을 작성하십시오.
192.168.1.103은 연결하려는 호스트입니다.
여기 하나의 예
scp
명령을 사용하여 원격에서 로컬로 폴더를 복사하는 방법이었습니다.
$ scp -r userRemote@remoteIp:/path/remoteDir /path/localDir
sftp
를 사용하는 더 좋은 방법이 있습니다. SSH 파일 전송 프로토콜(SFTP라고도 함)은 신뢰할 수 있는 데이터 스트림을 통해 파일 액세스, 파일 전송 및 파일 관리를 제공하는 네트워크 프로토콜입니다.(wikipedia) .
$ sftp user_remote@remote_ip
sftp> cd /path/to/remoteDir
sftp> get -r remoteDir
Fetching /path/to/remoteDir to localDir 100% 398 0.4KB/s 00:00
sftp
명령에 대한 도움말을 보려면 help
또는 ?
.
"Too many authentication failures" 가 발생하는 경우 서버 ssh 서버에 추가한 정확한 SSH 키를 지정하십시오.
scp -r -i /path/to/local/key user@remote.tld:/path/to/folder /your/local/target/dir
이유는 모르겠지만 소스 서버 지시문 전에 로컬 폴더를 사용해야 했습니다. 작동하도록
scp -r . root@888.888.888.888:/usr/share/nginx/www/example.org/
Windows OS의 경우 이 명령을 사용했습니다.
pscp -r -P 22 hostname@IP:/path/to/Downloads ./
출처 : http:www.stackoverflow.com/questions/11304895/how-do-i-copy-a-folder-from-remote-to-local-using-scp
Git에서 현재 브랜치 이름을 얻는 방법은 무엇입니까? (0) | 2021.10.09 |
---|---|
"최소한의 놀라움"과 변경 가능한 기본 인수 (0) | 2021.10.09 |
웹 양식 필드/입력 태그에서 브라우저 자동 완성을 어떻게 비활성화합니까? (0) | 2021.10.09 |
JavaScript로 요소의 클래스를 변경하려면 어떻게 해야 합니까? (0) | 2021.10.09 |
jQuery를 사용하여 어떻게 파일을 비동기적으로 업로드할 수 있습니까? (0) | 2021.10.09 |