From 46760a744f279b1d81b8af5debcdd958f0961b38 Mon Sep 17 00:00:00 2001 From: zhouya Date: Mon, 26 Dec 2016 20:59:03 +0800 Subject: solve no file of known_hosts bug Change-Id: If70e8765709d49a22a4f6c17ab4e2c4589fbf05a Signed-off-by: zhouya --- deploy/trustme.sh | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) (limited to 'deploy') 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 -- cgit 1.2.3-korg