본문 바로가기

Linux

vscode 에서 sftp 를 이용하여 서버소스관리하기(로칼에서 git 관리하기)

리눅스서버의 소스를 ssh로 직접 수정하는 방법은 매우 기초적인 방법이지만 원시적이다.

형상관리(git 이용)하고 싶지만 서버에서는 순수하게 소스만 관리하고자 한다.

왜냐하면 git 레포지토리를 만드는 경우 관련 파일이 많이 생긴다.

서버에 굳이 그걸 만들 필요가 없다.

로칼(나는 윈도우를 사용한다)에서 형상관리(나는 git을 사용한다)하고 서버는 최종 소스만 올리면 깔끔하다.

서버에 ssh로 접속해서 직접소스를 수정하는 것 보다는 vscode로 로칼에서 소스를 개발/관리하고 서버에는 최종본만을 업로드하는 것이  좋은 방법이 된다

나는 vscode 확장 프로그램중 "SFTP"를 사용하기로 했다

서버의 소스를 로칼에서 직접 수정하는 것처럼 지원해주는 확장 프로그램이기 때문이다.

 

로칼에서 수정하면 파일은 서버로 자동 업로드 할 수도 있다. 혹은 명시적으로 업로드 할 수도 있다.

(sftp.json 환경설정에서 on/off 할 수 있다 : "uploadOnSave": true/false/"confirm"

 

로칼에서 파일을 열면 알아서 서버와 동기하여 파일을 열어준다. 서버와 로칼을 한몸 처럼 싱크 해 준다.

하지만 나는 명시적으로 비교해 보고 다운해서 사용한다. ("downloadOnOpen": false)

(sftp.json 환경설정에서 on/off 할 수 있다 : "downloadOnOpen": true/false/"confirm")

 

로칼소스와 서버소스가 다른지 바로 확인 하는 비교기능도 vscode에서는 제공한다. 매우 유용하다.

 

=========== 환경설정 및 사용방법  설명 ===============

 

1. 로칼에 먼저 폴더를 만들고

2. 폴더를 "vscode 폴더 열기"로 폴더를 연 후에

3. F1을 누른 후 SFTP:Config를 설정하면

4. 해당 폴더에 .vscode 폴더가 자동으로 생기고

5. .vscode 폴더에 sftp.json 이라는 파일이 생기며 샘플내용이 포한된 채 오픈된다

6. 이 내역을 필요에 따라 자신에 맞게 설정을 바꾸어 사용하면 된다

7. 끝...

-------------------------------------------------

설치 및 설정 상세방법은 아래 그림들을 통해 간단히 설명한다

 

<그림1>

vscode 확장 파일검색에서 SFTP를 검색한후 install 한다

만일 본인 컴퓨터에 ssh 클라이언트 프로그램이 설치되었다면 바로 설치가 될것이다

그럼 사람은 아래의 "[설치완료 후 화면]" 으로 바로 이동해서 보시면 된다

만일 ssh 클라이언트 프로그램이 없는 사람이라면 ssh 클라이언트 프로그램을 설치해야한다

이 SFTP 확장 프로그램은 도스창에서 sftp 명령이 사용가능해야 사용할 수 있다

putty 나 teraterm 등 ssh 윈도우용 GUI  프로그램을 설치하였다면 걍 바로 설치가 되나 아니라면 아래의 그림과 같은 모습을 보게 될것이다.

"Install on SSH"

ㅋㅋㅋㅋㅋ!

그러면 어케하냐? 나는 teraterm을 깔았다 아래 그림들을 참조하시라!

테라텀을 설치하고 "Install onSSH"을 누르면 위그림의 하단에 보이는 경고창이 뜬다

"Download Manually"를 누르면 아래그림처럼 확장명이 vslx 인 파일이 다운된다

그리고 "Install from VSLX..." 버튼이 뜬다 아래그린들 처럼 연이은 작업을 하면 된다

위 그림처럼 했는데도 설치가 완료되지않고 반복되면 vscode를 재기동한 후 <그림1>의 Install을 누른다

그러면 아래그림처럼 설치된 화면이 뜰 것이다.

 

[설치완료후 화면]

 

자 이제는 환경설정을 하자

폴더를 먼저 오픈해야한다 .

나는 서버의 IP address를 폴더명으로 했다. 서버가 여러 개 이므로 안 헤깔리게 하기 위해

만일 폴더 오픈을 하지 않고 SFTP:Config 명령을 이용하면 아래와 같은 화면이 뜬다

폴더 오픈을 하였으면

"F1" 키를 누른 후에 SFTP를 입력하면 아래 그림처럼 SFTP:Config 가 뜬다

마우스로 선택하자!

그러면 오픈한 폴더아래 sftp.json이라는 샘플 파일이 생기고 오픈된다

아래는 내가 이용하는 환경파일 샘플이다 

rsa 키를 이용한 예제이다

rsa 키를 이용한 로그인(privateKeyPath 항목)이 편하다

아니면 "password" 항목을 설정할 수도 있지만 암호가 노출되므로 피하자.. 필요하면 사용하시라.

아니면 계정의 암호를 수도 없이 입력해야한다

아래는 걍 암호를 환경파일에 넣는방법이다

아래는 파일 오픈 시 서버 체크옵션부분 보여주기이다

 

이제 서버에 연결 설정이 되었다 서버에 연결해서 원하는 파일을 로칼로 가져오자

만일 서버연결 환경을 여러개 설정하면 아래 목록에 여러개가 뜬다.

난 걍 심플하게 서버하나당 하나씩 이지만 같은 소스로 여러서버에 업로드 하고 싶다면 여러서버를 등록하시라.

 

오늘도 그대에게 행복만 가득하길.....

 

'Linux' 카테고리의 다른 글

websocket 프로토콜 분석  (0) 2022.01.27
C++ pthread pool management library  (0) 2021.12.08
linux find 명령 예  (0) 2021.07.02
SSH 자동 로그인 (ssh 키를 이용한)  (0) 2019.09.17