diff options
author | zhouya <zhou.ya@zte.com.cn> | 2016-12-26 20:59:03 +0800 |
---|---|---|
committer | Zhou Ya <zhou.ya@zte.com.cn> | 2016-12-30 11:36:39 +0800 |
commit | 46760a744f279b1d81b8af5debcdd958f0961b38 (patch) | |
tree | 2ba12cf1be2650b796376f1edb6028dc63e4c1fd /deploy | |
parent | 8752e2341e766f547377ac184f3e338613491162 (diff) |
solve no file of known_hosts bug
Change-Id: If70e8765709d49a22a4f6c17ab4e2c4589fbf05a
Signed-off-by: zhouya <zhou.ya@zte.com.cn>
Diffstat (limited to 'deploy')
-rwxr-xr-x | deploy/trustme.sh | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/deploy/trustme.sh b/deploy/trustme.sh index eedda5ce..33b76546 100755 --- a/deploy/trustme.sh +++ b/deploy/trustme.sh @@ -10,6 +10,11 @@ function print_log echo -e "`date -d today +"%Y-%m-%d %H:%M:%S"` $promt" >> $logfile } ip=$1 +if [ -z $ip ]; then + print_log "Usage: `basename $0` ipaddr passwd" + exit 1 +fi + passwd=$2 if [ -z $passwd ]; then print_log "Usage: `basename $0` ipaddr passwd" @@ -47,11 +52,15 @@ host=`hostname` keyend="$user@$host" print_log "my keyend = $keyend" cmd="sed '/$keyend$/d' -i ~/.ssh/authorized_keys" +local_host="127.0.0.1" print_log "clear my old pub key on $local_host ..." -ssh-keygen -f "/root/.ssh/known_hosts" -R $ip -if [ $? != 0 ]; then - print_log "delete pub key of $ip from known_hosts failed" - exit 1 +sshpass -p $passwd ssh -o StrictHostKeyChecking=no $local_host "test -f ~/.ssh/known_hosts" +if [ $? = 0 ]; then + sshpass -p $passwd ssh -o StrictHostKeyChecking=no $local_host "sed -i '/${ip} /d' ~/.ssh/known_hosts" + if [ $? != 0 ]; then + print_log "delete pub key of $ip from $local_host known_hosts failed" + exit 1 + fi fi sshpass -p $passwd ssh -o StrictHostKeyChecking=no $ip "mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys" if [ $? != 0 ]; then |