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

 

리눅스 scp 사용법 - 제타위키

다음 문자열 포함...

zetawiki.com

linux.die.net/man/1/scp

 

scp(1): secure copy - Linux man page

scp(1) - Linux man page Name scp - secure copy (remote file copy program) Synopsis scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o ssh_option] [-P port] [-S program] [ [user@]host1:]file1 ... [ [user@]host2:]file2 Descriptio

linux.die.net