원격 파일 전송 scp 명령어
SCP
Secure Copy의 약자로, 네트워크가 연결되어 있는 원격지에 파일을 간편하고 안전하게 전송할 수 있는 명령어
SSH와 동일한 22번 포트를 사용하여 전송하기 때문에 보안도 뛰어나며 디렉토리 전송도 간편한 것이 장점.
1. 명령어
scp [옵션] [원본 대상] [복사할 지점]
설명부터 하자면 기본적인 틀은 cp와 같다. 다른 블로그나 어떤 분들을 보면
scp [옵션] [원본 대상] [원격지계정@IP:/파일생성지점]
이런식으로만 설명해주시는 분들이 간혹 계신데 반대로도 가능하다.
scp [옵션] [원격지계정@IP:/복사해올파일] [/붙여넣을경로]
그러니까 scp를 통해 자신의 파일을 원격지에 복사하거나 원격지에 있는 파일을 자신의 서버로 끌어오는 것이 가능하다.
심지어 제 3의 서버에서 1번 서버에 있는 파일을 2번 서버에 붙여넣기도 가능하다.
그러니까 좀 더 정확한 옵션은
scp [옵션] [원본서버계정@IP:/원본 대상] [목적지계정@IP:/복사할 지점]
단, 로컬일 경우 계정과 IP정보는 기입하지 않아도 된다.
2. 옵션
r : 디렉토리 내 모든 파일, 디렉토리 복사
p : 원본 파일의 권한이나 속성을 유지하며 복사 (소문자 구분)
P : 포트 번호 지정 (대문자 구분)
c : 압축
v : 과정 출력
a : 아카이브 모드로 전송
3. 사용
예) scp root@192.168.0.100:/data/test.txt root@192.168.0.101:/data/
- 100번 서버에 있는 data 디렉토리 내에 test.txt 파일을 101번 서버 data 디렉토리 안에 복사한다.
예) scp -rP 200 /data root@192.168.0.100:/
- 로컬 서버의 data 디렉토리 전체를4 200번 포트를 사용하여 100번 서버 / 밑에 복사한다.