> 네트워크 관리 > scp

scp 명령어 완전 정복

Linux에서 Secure Copy Protocol (SCP)을 사용하여 로컬과 원격 호스트 간에 파일을 안전하게 복사하는 `scp` 명령어에 대한 가이드입니다. 이 도구를 통해 네트워크를 통한 파일 전송을 쉽고 안전하게 수행할 수 있습니다.

주요 옵션

`scp` 명령어의 다양한 옵션들을 조합하여 파일 전송 작업을 설정해 보세요.

1. 기본 전송

2. 전송 옵션

생성된 명령어:

명령어를 조합해 보세요.

설명:

`scp` 명령어를 실행합니다.

위 옵션들을 조합하여 AI와 함께 가상으로 명령어를 실행해 보세요.

구문 및 경로 이해하기

`scp` 명령어는 '소스'와 '대상'이라는 두 가지 핵심 인자를 사용하며, 이들은 로컬 경로 또는 원격 경로가 될 수 있습니다. 원격 경로는 `[user@]host:path` 형식으로 표현됩니다.

SCP 구문

`scp [옵션] [소스] [대상]` - **소스 (Source)**: 복사할 원본 파일 또는 디렉토리입니다. - **대상 (Destination)**: 파일을 복사할 목적지 파일 또는 디렉토리입니다.

경로 지정 방식

로컬 경로와 원격 경로를 구분하여 지정하는 방법입니다.

  • 로컬 경로: 일반적인 파일 시스템 경로 (예: `/home/user/document.txt` 또는 `.`)
  • 원격 경로: `[사용자명@]호스트이름_또는_IP주소:/원격/경로` 형식 (예: `user@example.com:/var/www/html/`)

인증 및 보안

`scp`는 SSH 프로토콜을 기반으로 하므로, 파일 전송 시 암호화되어 안전합니다. 원격 호스트에 접근하려면 SSH와 동일하게 사용자 이름/비밀번호 또는 SSH 키를 통한 인증이 필요합니다.

사용 예시

`scp` 명령어의 실용적인 사용 예시들을 통해 파일 전송 작업을 연습해 보세요.

로컬 파일을 원격 서버로 복사

scp report.txt user@myserver.com:/home/user/

현재 디렉토리의 `report.txt` 파일을 원격 서버 `myserver.com`의 `/home/user/` 디렉토리로 복사합니다.

원격 서버의 파일을 로컬로 복사

scp user@myserver.com:/var/log/syslog .

원격 서버 `myserver.com`의 `/var/log/syslog` 파일을 현재 로컬 디렉토리(`.`)로 복사합니다.

로컬 디렉토리를 원격 서버로 재귀 복사

scp -r my_project user@myserver.com:/var/www/

현재 디렉토리의 `my_project` 디렉토리 전체를 원격 서버 `myserver.com`의 `/var/www/` 디렉토리로 복사합니다.

특정 포트를 사용하여 파일 복사

scp -P 2222 backup.tar.gz user@myserver.com:/backups/

SSH 포트가 2222인 원격 서버로 `backup.tar.gz` 파일을 복사합니다.

인증 키 파일을 사용하여 파일 복사

scp -i ~/.ssh/my_key data.sql user@myserver.com:/db_dumps/

지정된 SSH 프라이빗 키(`~/.ssh/my_key`)를 사용하여 `data.sql` 파일을 원격 서버로 복사합니다.


동일 카테고리 명령어