1. 원격 SSH 호스트에 파일 올리기

베리즈 웹쉐어 프로젝트에서 배포본을 웹서버에 올리는 작업을 자동화하기 위해 쓰고 있는 방법입니다. PuTTY 패밀리의 일원인 pscp를 사용하고, stania군이 작업했던 것으로 기억합니다.

pscp.exe 올릴파일이름 유저이름@호스트주소:목적지경로 -pw 비밀번호
e.g.) pscp yd0283.avi rica@upnl.org:public_html/yd_distribution -pw BLAHBLAH

커맨드는 위와 같습니다. 이때 '-pw 비밀번호' 부분을 빼면 매번 비밀번호를 입력하게 됩니다. 베리즈 웹쉐어 프로젝트에서는 스크립트를 실행할 때마다 암호를 입력하는 것을 피하면서 스크립트에 암호가 그대로 보이는 상황을 막기 위해, 계정에서 계정의 개인키를 받아오는 방식을 취하고 있습니다. 이 방법은 제가 잘 모르기 때문에 건너뛰겠습니다.

2. 원격 SSH 호스트에 명령어 입력하기

PuTTY는 유명한 SSH 클라이언트인데, PuTTY 패밀리 중에 콘솔에서 작동하는 SSH 클라이언트도 있지 않을까 하고 찾아 봤더니 역시 있습니다. 이름은 plink라고 합니다.

이놈도 사용방법은 비슷합니다.

plink.exe 유저이름@호스트주소 -m 수행할명령어가담긴파일 -pw 비밀번호
e.g.) plink rica@upnl.org -m commands.txt -pw BLAHBLAH


3. 위 작업들을 스크립팅

pscp와 plink는 모두 콘솔에서 잘 작동하기 때문에, 배치파일을 쉽게 만들 수 있습니다.
plink를 실행해서 수행할 명령어가 담긴 파일을 따로 관리해야 하는 것이 약간 귀찮다면 귀찮겠네요.

pscp 는 http://youngsam.net/1056 요 글을 참고 하십시오. 윈도우 환경에서 가능합니다.

2010/03/14 09:42 2010/03/14 09:42

Trackback Address :: 이 글에는 트랙백을 보낼 수 없습니다