Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- spring
- MongoDB
- 티스토리챌린지
- mysql
- git
- docker
- mssql
- 리눅스
- top
- group by
- oracle
- IntelliJ
- network
- SQL
- API
- Python
- JPA
- DBMS
- 명령어
- 자바
- 차이점
- MariaDB
- Javascript
- analytics4
- java
- 트랜잭션
- Linux
- 오블완
- rsync
- PostgreSQL
Archives
- Today
- Total
hanker
Linux - scp 명령어 (서버끼리 안전하게 파일 복사 명령어) 본문
반응형
이번 글에서는 다른 서버에 파일을 안전하게 복사해주는 scp 명령어 (Secure Copy)에 대해서 알아봅시다!
1. 기본 사용법
# scp [옵션] [원본 경로] [사용자명@원격서버주소:대상 경로]
scp file.txt user@remote_host:/path/to/destination/
- file.txt: 로컬 파일 이름
- user: 원격 시스템 사용자 이름
- remote_host: 원격 서버의 IP 주소 또는 호스트 이름
- /path/to/destination/: 원격 시스템의 저장 경로
2. 주요 옵션
주요 옵션 정리
옵션 | 설명 |
-r | 디렉토리와 그 하위 내용을 재귀적으로 복사 |
-P | SSH 연결에 사용할 포트 번호 지정 |
-i | 인증에 사용할 개인 키 파일을 지정 |
-v | 전송 과정을 자세하게 출력하여 디버깅 |
-C | 전송 중 데이터를 압축하여 전송 속도를 높인다. |
3. 배포판별 차이점
기본적으로 대부분의 리눅스 배포판에서 openssh-client 패키지에 scp가 포함되어 있다.
또한, 명령어 사용법, 구문도 배포판에 관계없이 동일하다.
설치
# ubuntu / debian
sudo apt update
sudo apt install openssh-client
# redhat / centos
sudo yum install openssh-clients
4. 실제 사용 예제
4.1 로컬에서 원격 서버로 파일 전송
scp myfile.txt user@192.168.1.10:/home/user/
4.2 원격 서버에서 로컬로 파일 다운로드
scp user@192.168.1.10:/home/user/myfile.txt /local/path/
4.3 디렉토리 전송
scp -r /local/dir user@remote_host:/remote/dir
4.4 특정 SSh 포트 사용
scp -P 2222 file.txt user@remote_host:/path/to/destination/
4.5 SSH 키 인증 사용
scp -i ~/.ssh/id_rsa file.txt user@remote_host:/path/to/destination/
5. SCP의 장점과 단점
장점
- 간단한 명령어로 파일을 전송할 수 있음
- SSH 프로토콜을 사용하므로 보안성이 뛰어남
단점
- 대용량 데이터 전송 시 속도가 느릴 수 있음
- 복잡한 작업에는 rsync와 같은 대안이 더 적합할 수 있음
6. SCP 명령어를 사용하기 전 주의 사항!
주의사항 | 설명 |
SSH 설정 확인 | scp 명령어는 SSH 프로토콜을 기반으로 동작하므로, 원격 서버에서도 SSH 서비스가 활성화 되어 있어야 한다. |
네트워크 연결 및 방화벽 설정 | 서버와 클라이언트 간 네트워크 연결이 원할해야하고, 방화벽 설정에서 scp가 사용하는 포트(기본 포트: 22)가 열려 있는지 확인해야 한다. |
인증 방식 설정 | 비밀번호 인증 대신 SSH 키를 사용하여 인증을 설정하면 보안성을 높일 수 있다. |
전송 파일의 크기와 네트워크 상태 | 대용량 파일을 전송할 경우 네트워크 상태에 따라 전송이 지연되거나 중단될 수 있다. 이러한 상황에서는 rcync 명령어 같은 다른 대안 방법을 고려해야 한다. |
파일 권한 및 소유권 유지 | 전송 후에도 파일의 권한, 소유권, 타임스탬프 등을 유지하려면 -p 옵션을 사용하면 된다. |
전송 중 데이터 압축 | 네트워크 대역폭을 절약하고 전송 속도를 높이기 위해 -C 옵션을 사용하여 데이터를 압축하여 전송한다. |
scp는 서버 간 파일을 안전하게 전송하는 데 필수적인 도구이다.
또한 rsync 같은 명령어도 비슷하게 사용되니 확인 후 필요한 명령어로 원격 서버에 파일을 보내거나 가져오길 바란다!
끝.!
반응형
'SERVER > Linux' 카테고리의 다른 글
Linux - df 명령어 (파일 시스템의 디스크 공간 사용량을 확인하는 명령어) (0) | 2025.01.21 |
---|---|
Linux - rsync 명령어 (scp 명령어보다 세부적이고 빠르게 파일 복사) (0) | 2025.01.20 |
Linux - grep 명령어 (텍스트 파일 내에서 특정 패턴이나 문자열을 검색할 때 사용) (0) | 2025.01.18 |
Linux - top 명령어 (CPU, 메모리 사용량 등 현재 OS의 상태를 모니터링) (0) | 2025.01.17 |
Linux - 파일이나 디렉터리의 권한 변경 (chmod 명령어) (0) | 2024.11.23 |