SCP(Secure Copy)
ssh 원격 접속 프로토콜을 기반으로 원격지에 파일과 디렉토리를 보내거나 가져올 때 사용하는 파일 전송 프로토콜이다.
네트워크가 연결된 환경에서 ssh와 동일한 22번 포트와 identity file을 사용해서 파일을 송수신하여 보안적으로도 안정적이다.
원격지에서 파일을 받아오거나 보내야 할 때가 종종 있는데, scp 명령어를 사용하여 쉽게 주고 받을 수 있다.
❗ 모든 명령어는 로컬 서버에서 입력한다.
❗ 파일은 파일이 위치하는 곳에서 입력시 경로가 필요없지만, 그렇지 않은 경우에는 파일의 경로를 명시해주어야 한다.
ex) /c/test/git 안에 있는 testfile.txt 파일을 전송하려고 할 때,
현재 위치가 /c/test/git 이라면 scp testfile.txt [원격지_id]@[원격지_ip]:[받는 위치] 로 작성하면 된다.
하지만 현재 위치가 다른 곳이라면 해당 위치로 cd 이동하여 작성하거나
scp /c/test/git/testfile.txt [원격지_id]@[원격지_ip]:[받는 위치] 와 같이 보낼 파일의 위치를 명시해주어야 한다.
<로컬 → 원격>
- 단일 파일을 '로컬 →원격지'로 보낼 때
scp [옵션] [파일명] [원격지_id]@[원격지_ip]:[받는 위치]
- 여러개를 보낼 때는 한 칸 띄우고 파일명을 넣어주면 된다.
scp [옵션] [파일명 1] [파일명 2] [원격지_id]@[원격지_ip]:[받는 위치] - 여러 파일을 포함하고 있는 디렉토리를 보낼 때는 -r 옵션을 사용한다.
-r 옵션을 사용하면 보내고자하는 디렉토리의 하위 폴더+파일까지 동시에 전송 가능하다.
scp -r[옵션] [디렉터리 이름] [원격지_id]@[원격지_ip]:[보낼 경로]
<원격 → 로컬>
- 단일 파일을 원격지→로컬 로 가져올 때
scp [옵션] [원격지_id]@[원격지_ip]:[파일명] [받을 경로]
- 여러개를 받을 때는 한 칸 띄우고 파일명을 넣어주면 된다.
scp [옵션] [원격지_id]@[원격지_ip]:”[파일명 1] [파일명 2]” [받을 경로]
✨주의 할 점은 다른 것과 다르게 파일 경로를 “”(큰 따옴표)로 묶어주어야 한다는 점이다. - 디렉토리를 받을 때는 -r 옵션을 사용한다.
scp -r[옵션] [원격지_id]@[원격지_ip]:[디렉토리명] [받을 경로]
scp와 쓰이는 옵션
여러 옵션이 있는데 가장 유용하다고 생각하는 옵션은 -v 옵션이다.
v는 verbose를 의미하며, 이 옵션을 사용하면 터미널 화면에서 scp 명령이 실행되는 것을 단계별로 확인 할 수 있다.
꼭 ! 한 번 확인해보기를 추천한다. 명령이 실행되고 ssh 기반의 인증이 진행되는 과정을 눈으로 볼 수 있는데 ssh 를 이해하는데에 도움이 된다.
참고
리눅스 scp 명령어 사용법 ( 파일 전송 프로토콜 / 파일 보내기 /파일 받기 )
안녕하세요 롯사입니다. 이번 시간 포스팅은 리눅스 기반 운영체제에서 사용하는 파일 전송 프로토콜 scp에 대해서 포스팅해보겠습니다. 리눅스 기반 시스템 기반을 운영하고 계신 현업 종사자
wlsvud84.tistory.com
'Linux' 카테고리의 다른 글
[Linux] vi/vim 에디터 (0) | 2023.01.27 |
---|---|
[Linux] 심볼릭 링크 (symbolic link) (0) | 2023.01.02 |
[Linux] 가상머신과 이미지파일 (0) | 2023.01.02 |
[Linux] CentOS - yum 명령어 (0) | 2023.01.02 |
[Linux] sudo apt-get 명령이 없습니다 (0) | 2022.12.30 |
댓글