Cute Light Pink Flying Butterfly 로컬에서 리눅스 서버로 파일 옮기기 | SCP • SFTP :: 놀면서 돈벌기
본문 바로가기
Coding/Back-end

로컬에서 리눅스 서버로 파일 옮기기 | SCP • SFTP

by 왓츠뉴 whatsnew 2025. 3. 19.
반응형

 

로컬에서 개발한 프로젝트를,

git으로 개발서버에 옮겨 테스트하는 것까지 완료하였습니다.

운영서버로 올리기전, 운영서버의 트래픽을 동일하게 받지만-운영서버는 아닌 검증서버에서

최종 테스트를 진행한 후 운영으로 최종 commit할 예정인데요.

 

개발서버, 운영서버와 달리 검증서버는 git 파이프라인이 만들어져있어서

수작업으로 파일을 리눅스서버로 옮기게 되었습니다.

 

이전에 비슷한 작업을 진행할 때 Filezila라는 sftp 전송 프로그램으로 파일을 옮겼었는데요

비슷한 프로그램으로 최근에 사용하고있는 WinSCP 프로그램을 활용해서 옮겨보려 했으나..

(이렇게 GUI가 있는 프로그램이라, 마우스로 끌어 간편하게 서버로 옮길 수 있음)

 

 

검증서버가 GATEWAY 서버안에 연결되어 있어서, 바로 검증서버로 접근하지 못하고

GATEWAY로 경유해서 최종 검증서버로 파일을 옮겨야 했습니다.

 

로컬 cmd로 파일전송 -> GATEWAY가 받음 -> GATEWAY에서 검증서버로 파일전송 -> 최종 검증서버 도착


 

그래서, SCP로 직접 커맨드를 작성하여 전송하는 방법을 정리해보겠습니다.

프로그램은 cmd / XShell 8 Free 버전 사용했습니다.

 

📎서버 정보

파일을 복사할 서버정보를 준비합니다.

GATEWAY 서버정보 : 11.111.111.11:1111(id/pw)
검증 서버정보 : 222.22.2.222:2222(id1/ pw1, id2 / pw2)

📎폴더 생성

파일을 옮길 수 있도록, 옮겨질 장소에 폴더를 생성합니다.

1. Xshell : 11.111.111.11:1111 접속

게이트웨이에 접속했습니다.


2. 검증서버접속 : 커맨드 conn -> 36번 접속

게이트웨이에서 특정 서버에 접속했습니다. 저는 36번 검증서버(222.22.2.222)에 접속해서

폴더를 생성할 거에요.

3. 계정전환 : 폴더를 생성할 수 있는 권한이있는 계정으로 전환합니다.


  
su - 마스터계정 , pw : 마스터계정 비밀번호


4. 폴더생성하러 이동 : cd /svc/app/piggybank2/
5. 폴더생성 : mkdir -p /svc/app/piggybank2/piggy2-stat/bin, config, pid

프로세스를 돌리기 위해 필요한 파일들이 들어갈 각각의 폴더들을 생성해줍니다.

 

📎SCP 커맨드 파일전송

저는 프로젝트파일 1개 piggy2-stat.jar,

설정파일 2개 application-stg.yml, logback-spring-stg.xml

실행파일 1개 run.sh를 복사했습니다. run.sh 같은 경우에는 로컬이아닌 개발서버에서 복사해와서 vi로 수정했어요,

 

1. 로컬에서 파일전송

- cmd -jar파일 경로이동


  
scp -P 1111 service1-proc23.jar hura@11.111.111.11:/GATEWAY특정경로

- pw : GATEWAY 계정비밀번호

2. GATEWAY 접속

- Xshell : 11.111.111.11:1111 접속

- 계정전환 : su - 마스터계정 , pw : 마스터계정비밀번호

- cd /GATEWAY특정경로

3. GATEWAY에서 검증서버로 파일이동

- GATEWAY 특정경로 폴더에서, 검증서버에 만들어놓은 신규폴더로 파일이동


  
scp -P 2222 service1-proc23.jar hura@222.22.2.222:/svc/app/service1/service1-proc23/bin/

4. run.sh 파일

개발서버에서 옮긴 프로세스 실행파일은 아래내용으로 폴더경로, 설정파일명을 수정했어요.


  
HERE_PATH=/svc/app/service1/service1-proc23 #경로
SERVICE_NAME=service1-proc23
APP_NAME=service1-proc23
## Spring config
SPRING_OPTION="${SPRING_OPTION} -Dspring.config.location=../config/ -Dspring.profiles.active=stg" #config파일 설정


5. 검증서버접속 : 커맨드 conn -> 36번 접속

신규폴더를 생성했던 GATEWAY의 검증서버로 다시 들어갑니다.


6. 파일확인 : cd /svc/app/service1/service1-proc23/bin/

검증서버에 신규폴더에 파일이 잘 이동되었는지 확인합니다.


7. 서비스 재기동 : ./run.sh start -> pid 폴더에 파일생성 확인 -> ./run.sh status

./run.sh 파일에 프로세스 실행, 상태확인 명령어를 작성하여 프로세스가 정상 동작하는것까지 확인했어요.

이제 검증서버에서도 수정한 프로젝트 파일을 올려 테스트 해볼 수 있습니다.

 

728x90
반응형