linux之centos5.11安装sshpass牵引出的rpm安装方式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux之centos5.11安装sshpass牵引出的rpm安装方式相关的知识,希望对你有一定的参考价值。
shpass 是一个简单、轻量级的命令行工具,通过它我们能够向命令提示符本身提供密码(非交互式密码验证)。简单说就是一个可以让你将密码输入放到命令行运行的工具;
如:sshpass? -p? 123456? scp ? /root/file? ? [email protected]:/root/? 就是将运行命令的服务器上root下的file文件scp复制到192.168.88.88的root下,还可以加? -r? 参数,传输文件夹;
Debian和centos安装都可以自己的源来安装:
? ? ? ? ? ? ? ? ? Debian :? ? apt-get? ?install? ?sshpass? ? ? ?;? ? ? centos :? ?yum? install? sshpass? ?;
我安装的时候是碰上了centos5.x的系统,大家应该知道centos的yumyuam已经停止更新了,就是不能用了,所以yum安装是行不通的,于是就下载了安装包,用安装包来安装;
这里下载的是??sshpass-1.06.tar.gz? ;下载到了 /usr/local/src/? 下;
tar xzvf sshpass-1.06.tar.gz? ? ? ? ? ? ? ?//解压
cd sshpass-1.06? ? ? ? ? ? ? ? ? ?//进入目录
./configure? ? ? ? ? ? ? ? ? ? ? ? //执行脚本编译
报错了,什么意思呢;他说是没有C编译器;那好,没有就安装;
但是忘了这是centos5.x ,yum无法安装; 不过还好rpm还可以使用,赶紧换安装包方式安装;
找了一个以前的iso镜像,centos5的;
里面有个centos的文件夹(我这是事先解压出来的),这个文件夹里都是centos的包;
搜索找到 gcc 的rpm包? :??gcc-4.1.2-55.el5.x86_64.rpm? ;
用远程连接(随便你用什么方法)放到服务器上,然后执行 :? ?rpm -ivh gcc-4.1.2-55.el5.x86_64.rpm? ? ?安装;
又报错.....说是这个gcc包需要一个glibc-devel的包,好,那就去centos里面找;
找到后上传到服务器:? ?glibc-devel-2.5-123.x86_64.rpm? ;
执行? rpm -ivh glibc-devel-2.5-123.x86_64.rpm? 安装 ;
好,他说这个包又需要 glibc-headers 包;那就接着找包,上传......
安装?glibc-headers 又说需要?kernel-headers 包;接着找??kernel-headers ;然后执行命令安装;
可以了,安装成功;说明已经不需要其他包了;将需要的包再倒着依次安装;
安装??glibc-headers-2.5-123.x86_64.rpm ;
安装??glibc-devel-2.5-123.x86_64.rpm? ?;
最后再安装??gcc-4.1.2-55.el5.x86_64.rpm? ;
现在C编译器已经可以使用了;可以继续 sshpass的安装了;
在sshpass目录下:
./configure? ? ? ? ??
make? ? ? ? ? ? ? ? //make编译
make install? ? ? //编译安装
ok,这样就可以使用sshpass命令了;
备注:
我当时的环境是两个局域网的服务器,而且也都安装了密钥,
在使用sshpass命令的时候会出现? ? ? ?Host key verification failed(主机密钥验证失败。)的错误;
网上说将? /root/.ssh/known_hosts? 里面的服务器密钥删掉或者将这个文件删掉就可以,个人试了一下,没成功;
用别的方法解决的;
先用 scp 命令复制文件过去,会问你? yes 还是 no ,再让你输入密码;当这样传输一次成功后,再用这个sshpass命令进行免密传输就可以了,这可能是服务器的一种安全验证机制,原理我也不太清楚
以上是关于linux之centos5.11安装sshpass牵引出的rpm安装方式的主要内容,如果未能解决你的问题,请参考以下文章