Linux

[리눅스] scp 명령어 완벽 가이드 사용법(파일 전송)

인생아 2024. 10. 12. 11:00
반응형

scp(secure copy)는 SSH를 기반으로 한 파일 전송 명령어로, 원격 서버 간 또는 로컬과 원격 서버 간에 파일을 안전하게 복사할 수 있습니다. ssh 프로토콜을 사용하기 때문에 파일 전송 시 암호화되어 보안이 보장됩니다. 이는 FTP나 다른 비암호화된 파일 전송 방식보다 안전하게 파일을 전송할 수 있는 방법입니다.

scp 명령어 기본 사용법

scp [옵션] 원본 경로 대상 경로
  • 원본 경로: 복사할 파일의 경로. 로컬 파일 또는 원격 서버의 파일 경로가 될 수 있습니다.
  • 대상 경로: 파일을 복사할 대상 위치. 로컬 경로나 원격 서버의 경로가 될 수 있습니다.

scp 사용 예시

1. 로컬에서 원격 서버로 파일 전송

user@local:~$ scp /home/user/test.txt user@remote:/home/user/
user@remote's password: 
test.txt                              100%   12KB   24.0KB/s   00:00

위 예제는 로컬 머신/home/user/test.txt 파일을 원격 서버 user@remote/home/user/ 디렉터리로 복사하는 과정입니다. user@remote 사용자의 비밀번호를 입력한 후 파일 전송이 완료됩니다.

2. 원격 서버에서 로컬로 파일 가져오기

user@local:~$ scp user@remote:/home/user/test.txt /home/localuser/
user@remote's password:
test.txt                              100%   12KB   24.0KB/s   00:00

이 예시는 원격 서버/home/user/test.txt 파일을 로컬 머신/home/localuser/ 디렉터리로 가져오는 과정입니다. user@remote 계정의 비밀번호를 입력한 후 파일이 복사됩니다.

3. 원격 서버 간 파일 전송

user@local:~$ scp user1@remote1:/home/user1/test.txt user2@remote2:/home/user2/
user1@remote1's password:
user2@remote2's password:
test.txt                              100%   12KB   24.0KB/s   00:00

이 명령은 원격 서버 A(remote1)의 test.txt 파일을 원격 서버 B(remote2)의 /home/user2/ 디렉터리로 복사하는 예시입니다. 두 원격 서버의 사용자 비밀번호를 입력한 후 전송이 완료됩니다.

옵션 설명

  • -r: 디렉터리 복사를 위해 사용됩니다. scp는 기본적으로 파일만 복사하므로 디렉터리를 복사할 때는 이 옵션을 추가해야 합니다.
  • -P [포트번호]: SSH가 기본적으로 사용하는 포트 외에 다른 포트에서 통신할 경우 포트 번호를 지정할 수 있습니다.
  • -i [키파일]: 비밀번호 대신 SSH 키 파일을 사용해 인증할 때 이 옵션을 사용합니다.
  • -v: 전송 과정을 자세하게 출력할 때 사용됩니다. 디버깅 목적에도 유용합니다.

디렉터리 복사 예시

user@local:~$ scp -r /home/user/documents user@remote:/home/user/
user@remote's password: 
documents/file1.txt                    100%  24KB   48.0KB/s   00:00
documents/file2.txt                    100%  16KB   32.0KB/s   00:00

위 명령어는 로컬의 documents 디렉터리를 원격 서버의 /home/user/ 디렉터리로 복사하는 과정입니다. -r 옵션을 사용하여 디렉터리 내의 모든 파일과 하위 디렉터리를 재귀적으로 복사할 수 있습니다.

보안과 편리함

scpSSH를 이용해 데이터를 암호화하여 전송하므로 네트워크 상에서의 보안 위협을 방지할 수 있습니다. 또한, scp는 비밀번호 또는 SSH 키 파일을 사용해 인증할 수 있어, 자동화된 스크립트나 백업 작업에서도 유용하게 활용됩니다.

참고사이트

반응형