김 컴퓨터


scp (Secure Copy)

scp는 원격 호스트 간에 파일을 안전하게 복사하기 위한 명령어입니다. ssh 프로토콜을 기반으로 하므로 전송되는 모든 데이터는 암호화되며, 사용법이 일반 cp 명령어와 매우 유사하여 배우기 쉽습니다.

[Image of Linux scp command process showing file transfer between local and remote machines over SSH]


1. 기본 사용법

scp [옵션] [원본] [대상]

2. 주요 옵션

옵션 이름 설명
-P [포트] port 대문자 P입니다. SSH 포트가 22번이 아닐 때 사용합니다.
-r recursive 디렉터리 복사. 폴더 전체를 복사할 때 사용합니다.
-p preserve 파일의 수정 시간, 권한 등 속성을 그대로 유지하며 복사합니다.
-i [키파일] identity SSH 키(pem 파일 등)를 사용하여 인증할 때 경로를 지정합니다.

3. 실무 활용 예시

① 내 컴퓨터의 파일을 서버로 보내기 (Upload)

scp my_photo.jpg root@1.2.3.4:/var/www/html/

② 서버에 있는 파일을 내 컴퓨터로 가져오기 (Download)

scp user@remote-server.com:/home/user/backup.tar.gz ./

③ 서버의 폴더 전체를 내 컴퓨터로 가져오기

scp -r user@remote-host:/home/user/my_project ./local_project

④ 커스텀 포트와 키 파일을 동시에 사용하기

scp -P 2222 -i ~/my_key.pem backup.zip ubuntu@52.1.2.3:/tmp/

4. [팁] scp vs rsync