삼분공부/Server
[Linux] 서버 로그 파일 다운로드하는 가장 간단한 방법: scp 명령어 사용법
케이쓰리
2025. 4. 9. 16:39
서버에 저장된 로그 파일을 로컬 PC로 다운로드해야 할 일이 생길 때가 있습니다. 예를 들어, Nginx, FastAPI, Django 등에서 쌓이는 로그를 분석하거나 보관용으로 백업하고 싶을 때 말이죠.
이럴 때 유용하게 사용할 수 있는 명령어가 바로 scp입니다.
📌 scp란?
scp는 Secure Copy Protocol의 줄임말로, SSH 기반의 안전한 파일 복사 명령어입니다.
즉, 원격 서버와 로컬 PC 간에 파일을 복사할 수 있는 리눅스 기본 명령어입니다.
✅ 기본 사용법
scp [옵션] 사용자명@서버주소:원격파일경로 로컬저장경로
📂 예제: 로그 파일 다운로드하기
서버에서 /var/log/myapp.log 파일을 내 컴퓨터의 Downloads 폴더로 받고 싶다면 아래처럼 입력합니다:
scp ubuntu@123.45.67.89:/var/log/myapp.log ~/Downloads/
- ubuntu: 서버 접속 ID (예: root, ec2-user, etc.)
- 123.45.67.89: 서버의 공인 IP 주소
- /var/log/myapp.log: 서버에 있는 로그 파일의 경로
- ~/Downloads/: 내 컴퓨터에서 저장하고 싶은 경로
💡 처음 접속 시 서버의 fingerprint를 신뢰할 것인지 물어볼 수 있으며, 비밀번호 또는 SSH 키를 입력하라는 메시지가 나올 수 있습니다.
🛠 자주 쓰는 옵션
옵션설명
-P 22 | 포트 번호 변경 (기본은 22) |
-r | 디렉토리 전체 복사 |
-i | SSH 개인키 파일 사용 (pem 등) |
예시: EC2 서버에서 pem 키로 로그 파일 복사
scp -i ~/Downloads/my-key.pem ec2-user@15.111.222.33:/var/log/app.log ~/Downloads/
⚠️ 유의사항
- 경로 앞에 ~ 대신 전체 경로(/home/username/Downloads/)를 쓰면 에러가 줄어듭니다.
- 서버의 방화벽에서 포트 22(SCP용 SSH 포트)가 열려 있어야 합니다.
- Permission denied 에러가 뜨면 해당 경로에 대한 권한이 없는 경우일 수 있습니다. sudo 권한이 있는 계정인지 확인하세요.
🧩 마무리
scp는 간단하지만 강력한 파일 복사 도구입니다. 로그 파일뿐 아니라 설정 파일, 이미지, 백업 파일 등도 쉽게 주고받을 수 있으니 꼭 익혀두세요!