쉘 스크립트로 remote서버의 파일을 로컬로 다운받는 작업 중 ftp 이외 명령을 실행하려면
remote 서버와 local 서버가 있는데요, 둘다 unix서버입니다.
remote 서버는 여러대가 될 수도 있어요.
local에서 매일매일 remote 서버의 특정 경로에 있는 로그들을 압축파일로 만들어 다운받아야 하는데요,
=====================================
#!bin/sh
##환경 설정
remoteHOST=0.0.0.0
remoteUSER=test
remotePW=test
remoteDIR=/home/test/log
logFILE="test.tar"
##ftp 접속
ftp -inv $remoteHOST << EOF
user $remoteUSER $remotePW
##remote 서버의 백업대상을 지정포맷으로 압축
cd $remoteDIR
tar cvf $logFILE *
##local로 압축자료 전송
get $logFILE
##remote 서버의 압축자료를 삭제
delete $logFILE
##서버 접속 종료
quit
EOF
=====================================
위와 같은 방식으로 짜야 하는데요,
ftp에서 사용 가능한 명령어에는 파일을 압축하는 명령어가 없잖아요?
그래서 이 부분을 처리할 수 있을 만한 다른 명령을 찾아보고 있는데 방법을 모르겠네요.
remote 서버에 실행파일 하나 더 심어놓고 local에서 remote서버의 실행 파일을 동작시킬 수 있으면
파일 선별->압축 해서 local서버로 ftp -put 해버리면 끝일 텐데 그건 안되고 ㅜㅜ;;
shell이 아니라 다른 방법으로도 할 수 있는게 있다면 그걸로 만들어도 됩니다.
이에 대한 자료나 해결방법 있으신 분 의견 부탁드립니다.
rsh 나 ssh 는 못쓰는 상황인가요?
rsh 나 ssh 는 못쓰는 상황인가요?
댓글 달기