0.scp란?
scp
는 파일을 한 컴퓨터에서 다른 컴퓨터로 안전하게 복사하기 위한 명령어 및 프로토콜
SSH(Secure Shell)
프로토콜을 사용하여 데이터 전송 중에 암호화를 제공
1.로컬로 특정 파일 복사해오기 (download)
scp [-q] [-i ssh_keyfile] [user@]host:remote_source_file local_target_file
ssh_keyfile
: ssh접속에 사용하는 비밀키파일.user
: 계정 idhost
: ip 등.remote_source_file
: 복사할 대상 파일 경로 (절대경로, 혹은~/
로 시작)local_target_file
: 로컬 장비에 복사될 결과파일명 (디렉토리만 지정시 같은 이름)
2.로컬의 특정 파일 호스트로 복사하기 (upload)
scp [-q] [-i ssh_keyfile] local_source_file [user@]host:remote_target_file
ssh_keyfile
: ssh접속에 사용하는 비밀키파일.user
: 계정 idhost
: ip 등.local_source_file
: 복사할 대상 파일 경로remote_target_file
: 호스트에 복사될 결과파일명 (절대경로, 혹은~/
로 시작, 디렉토리만 지정시 같은 이름)
3. 그 외
3-0. Directory 복사
scp -r /local/directory/ user@remote_host:/remote/directory/
3-1. port 지정
scp -P 2222 file.txt user@remote_host:/remote/directory/
3-2. 주요 options
-r
: 디렉토리와 하위 파일/폴더를 재귀적으로 복사-P <포트 번호>
: SSH 포트 지정-i <키 파일>
: SSH 개인 키 파일 사용-C
: 압축 활성화-v
: 상세 출력 (디버깅용)
Note:
If you’re using a private key file from the AWS console, you may have to connect via ssh2
before scp
will work (You may see following message).
curl: (51) SSL peer certificate or SSH remote key was not OK
This is because `scp` is implemented on top of `curl` and the key won’t automatically work. Fix it by connecting with ssh2.
blink> ssh2 aws
aws$ logout
blink> #Retry scp and it will succeds
References
https://www.brantonboehm.com/code/blink-upload-to-ec2/
'Linux' 카테고리의 다른 글
[Linux] cron and crontab (0) | 2024.06.27 |
---|---|
[linux] find 사용법. (0) | 2024.05.11 |
[linux] example: sed: -r or -E (0) | 2024.05.11 |
[linux] example: sed: -f option (0) | 2024.05.11 |
[linux] example: sed: -e option (0) | 2024.05.11 |