IT/Linux
리눅스 scp를 활용한 원격 파일 전송
twofootdog
2020. 10. 25. 22:03
리눅스를 사용하다보면 원격으로 파일을 전송해야 하는 경우가 있다.
이번 글에서는 리눅스 환경에서 scp를 사용하여 원격으로 파일을 전송하는 방법에 대해 알아볼 것이다.
scp는 secure copy (remote file copy program)의 줄임말로 ssh를 이용해 네트워크로 연결된 호스트간에 파일을 주고 받는 명령어이다.
우선 scp를 사용하기 위해서는 다음과 같은 조건이 선행되어야 한다.
1. 리눅스 및 bash shell
2. 목적지 서버의 22번 포트(SSH포트) 개방
그럼 파일을 전송하는 방법에 대해 알아보자
1. 로컬서버(접속한 서버) -> 리모트서버로 파일 전송
scp [목적파일명(경로)] [유저명]@[IP주소]:[목적디렉토리]
2. 리모트서버 -> 로컬서버(접속한 서버)로 파일 전송
scp [유저명]@[IP주소]:[파일디렉토리] [목적파일명(경로)]
3. 리모트서버(source) -> 리모트서버(target)로 파일 전송
scp [유저명]@[IP주소]:[파일디렉토리] [유저명]@[IP주소]:[파일디렉토리]
4. 자주 사용하는 옵션
1) -r : 폴더 복사
scp -r [목적폴더명(경로)] [유저명]@[IP주소]:[목적디렉토리]
예) scp -r test ec2-user@3.34.91.229:/home/ec2-user
2) -i : 인증키 사용(예 : .pem파일)
scp -i [인증키] [목적파일명(경로)] [유저명]@[IP주소]:[목적디렉토리]
예) scp -i key-pair1.pem test3.txt ec2-user@3.34.91.229:/home/ec2-user
3) -p : 포트 지정
scp -P [포드번호] [목적파일명(경로)] [유저명]@[IP주소]:[목적디렉토리]
예) scp -P 22 test3.txt ec2-user@3.34.91.229:/home/ec2-user
참고
zetawiki.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_scp_%EC%82%AC%EC%9A%A9%EB%B2%95