批量分发密钥

#!/bin/bash
rom=/media/cdrom
dir=/etc/yum.repos.d
Use=$1
mima=$2
function yumj(){
[ -d "$rom" ] || mkdir -p "$rom"
/bin/umount /dev/sr0
/bin/mount /devsro0 $rom
[ -d "$dir" ] || mkdir -p "$dir"
cd "$dir" &&
mv * /tmp/
/bin/cat > /etc/yum.repos.d/local.repo << fof
[local]
name=localrepo
basenurl=:///"$rom"
gpgcheck=0
enabled=1
fof
/usr/bin/yum -y clean all &>/dev/null
/usr/bin/yum makecache &>/dev/null
[ $? -eq 0 ] || echo "本地yum出错"
which "wget"
[ $? -eq 0 ] || /usr/bin/yum -y install wget &>/dev/null
[ $? -eq 0 ] || (/bin/echo "wget error" && exit)
/usr/bin/wget http://mirrors.aliyun.com/repo/epel-6.repo
[ $? -eq 0 ] || (/bin/echo "yun源出错" && exit)
/usr/bin/yum -y clean all &>/dev/null
/usr/bin/yum makecache &>/dev/null
[ $? -eq 0 ] || (/bin/echo "yun缓存错误" && exit)
/bin/echo "yum ok"
}
/bin/ping -c 2 www.baidu.com &>/dev/null
[ $? -eq 0 ] || (/bin/echo "没网" && exit)
which "sshpass" &>/dev/null
[ $? -eq 0 ] || /usr/bin/yum -y install sshpass &>/dev/null
if [ $? -ne 0 ] ;then
yumj
/usr/bin/yum -y install sshpass &>/dev/null || (echo "sshpass error" && exit)
fi
[ -d ~/.ssh ] || mkdir -p ~/.ssh ; chmod 700 ~./ssh
rm -rf ~/.ssh/id_*
ssh-keygen -t dsa -f ~/.ssh/id_dsa -P "" &>/dev/null
for i in 192.168.200.{1..245}
do
/bin/ping -c 1 -i 0.1 $i &>/dev/null
if
[ $? -eq 0 ];then
sshpass -p $mima ssh-copy-id -i ~/.ssh/id_dsa.pub "-o StrictHostKeyChecking=no $Use@$i"
echo "$i 密匙成功"
fi
done

原文地址:https://www.cnblogs.com/666boke/p/10011750.html