Archive for 2009/3/4
expectを使ってSSHのパスワードを自動的に入力する。
ただし、この方法はどこかにプレーンでパスワードを持っておく必要があるのでその点は、注意。
以下のサンプルはリモートのホームディレクトリをバックアップ
#!/usr/bin/expect -f
set timeout 20
spawn /home/hoge/exec.sh
expect "*?assword:*"
send "********\r"
expect eof
/home/hoge/exec.shの内容
#!/bin/sh
ssh -l hoge hoge.hoge.jp tar - cfz /home/hoge/ > /home/hoge/hoge.tar.gz
vi /etc/ssh/sshd_config
PermitRootLogin no
/etc/init.d/sshd reload
これでOK


