티스토리 뷰
로컬 <-> 원격지 사이의 파일 전송
- scp는 SecureCopy의 약자로, 원격서버에 있는 파일과 폴더를 전송하거나 가져오기 위해 사용하는 명령어이다.
ssh 원격 접속 프로토콜을 기반으로 하며, ssh와 동일한 22번 포트를 이용하기 때문에 password/identity file을 이용해 안전하게 송수신 할 수 있다.
local→remote, remote→local, remote→remote 로의 송수신이 모두 가능하다.
사용법
> scp [options] [source] [target]
# source : 파일을 보낼 주소
# target : 파일을 받을 주소
보낼 파일의 주소로 파일명만 명시했더니 permission denied가 떴다. 이후 절대경로로 변경해주니 파일이 잘 전송된 것을 확인 할 수 있었다.
1. 로컬에서 원격으로 (Local→Remote)
> scp [전송할 파일 경로] [유저명]@[IP주소]:[받을 경로]
EX) 로컬의 /home/example.txt 파일을 원격지의 /home/test 디렉토리로 전송
> scp /home/example.txt dhj@141.211.xx.xxx:/home/test
2. 원격에서 로컬로 (Remote→Local)
> scp [유저명]@[IP주소]:[전송할 파일 경로] [받을 경로]
EX) 원격지의 /home/test.txt 파일을 로컬의 /home/example 디렉토리로 전송
> scp dhj@141.211.xx.xxx:/home/test.txt /home/example
3. 원격에서 원격으로 (Remote→Remote)
> scp [유저명]@[IP주소]:[전송할 파일 경로] [유저명]@[IP주소]:[받을 경로]
EX) A 원격지의 /home/test.txt 파일을 B 원격지의 /home/example 디렉토리로 전송
> scp dhj@141.211.xx.xxx:/home/test.txt gildong@141.223.xx.xxx:/home/example
옵션 (options)
- -r: 폴더를 복사할 때 사용(전송 대상을 폴더로 지정). 모든 폴더들을 재귀적으로 복사함.
- -P: ssh 포트 지정
- -i: identity file을 지정해서 사용(identity file 경로를 지정)
> ex) scp -i ~/.ssh/dhj-server-private ~/example.txt dhj@141.223.xx.xxx:/home/test
- -v: 상세내용을 보면서 디버깅 할 때 사용(verbose 모드)
- -p: 전송 시 파일 수정 시간과 권한을 유지
> ex) scp -P 22 dhj@141.223.xx.xxx:/home/dhj/example.txt /home/test
복수의 파일 전송
1. 로컬에서 원격으로 (Local→Remote)
> scp [옵션] [파일명1] [파일명2] [유저명]@[IP주소]:[받을 경로]
2. 원격에서 로컬로 (Remote→Local)
1번의 경우와 다르게 원격지에서 보낼 파일들의 경로를 “ “을 이용해 묶어준다.
> scp [옵션] [유저명]@[IP주소]:"[파일명1] [파일명2]" [받을 경로]
3. 원격에서 원격으로 (Remote→Remote)
마찬가지로 원격지에서 보낼 파일들의 경로를 “ “을 이용해 묶어준다.
> scp [옵션] [유저명]@[IP주소]:"[파일명1] [파일명2]" [유저명]@[IP주소]:[받을 경로]
Docker container 사이의 파일 전송
* Docker 접속 명령어
명령어 : "docker exec -it 도커명 /bin/bash"
ex : docker exec -it testdocker /bin/bash
* Docker에서 호스트로 파일 전송(복사)
명령어
1. 호스트 -> 컨테이너
명령어 : docker cp /path입력/text.txt 도커명:/path입력/text.txt
ex : docker cp /tmp/text.txt dockertest:/tmp/text.txt
2. 컨테이너 -> 호스트
명령어 : docker cp 도커명:/path입력/text.txt /path입력/text.txt
ex : docker cp dockertest:/tmp/text.txt /tmp/text.txt
참고
'컴퓨터 기본지식(CS) > Server' 카테고리의 다른 글
CORS 정책 (0) | 2022.05.27 |
---|---|
도커란? (0) | 2022.02.07 |
세션 기반 인증 VS 토큰 기반 인증 (0) | 2021.10.13 |