가끔 그런 고민을 하게 됩니다..
일정시간 별로 Shell로 다른 서버에 접속해서..
작업을 해준 다면 좋겠다 라고요...
예를 들어 SHELL로 FTP 파일을 전송하고..
그 다음에는 TELNET으로 접속해 압축을 풀고..
그 파일을 실행 시켜준다면 좋겠다 라고요...
서버 두대에서 각자 크론을 돌리신다고요?
그것도 좋은 방법이긴 하죠..
하지만 FTP전송이 끝나기 전에 크론이 돌아가면 어쩌죠?
시간 스케쥴링을 잘못한다면 말이죠...
그래서 나온것인지 모르겠찌만...EXPECT라는 쉘이 있습니다..
이것을 이용하면 원격 TELNET을 SHELL로 가능하게 할 수 있지요..
대충 사용법만 보면 아실 것 같아..
제가 이전에 짜 두었던...
스크립트를 올려보도록 하겠습니다.
File 1. BmTelnet
#!/usr/local/bin/expect -f
set timeout -1
spawn telnet 서버아이피(또는 도메인)
expect -re "login: "
sleep 1
send "userid\r"
expect -re "biz's Password:"
sleep 1
send "password\r"
send "ls\r"
interact
set timeout -1
spawn telnet 서버아이피(또는 도메인)
expect -re "login: "
sleep 1
send "userid\r"
expect -re "biz's Password:"
sleep 1
send "password\r"
send "ls\r"
interact
이렇게 만들어 두고..
./BmTetlnet이라고 실행해 보세요..
오홋!! 신기하죠?
접속해서 ls까지 치고 나왔습니다..ㅎㅎ
이정도면 되겠지요?
Shell 스크립트를 다른 서버에 미리 만들어 두던가,.
아니면 여기서 명령을 쳐서 원하는 작업을 할 수 있습니다.
이제 여러분은!! 여러대의 서버를 한번에 조작할 수 있는 Shell을 만들 수 있습니다.
2대 3대의 서버를 일정 시간 한번씩 동기화 시키기도 편하고요..
그 여러대 서버를 Shell하나로 쉽게 관리 할 수 있습니다.^^
'컴퓨터 이야기' 카테고리의 다른 글
UNIX 아주 간단한 awk #2 (0) | 2007.02.14 |
---|---|
UNIX 아주 간단한 awk #1 (0) | 2007.02.12 |
Unix 라인에디터 (0) | 2007.02.09 |
find를 이용한 스크립트. (0) | 2007.02.08 |
내가 쓰는 ORACLE.. (2) | 2007.02.08 |