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                        //執行腳本編譯
linux之centos5.11安裝sshpass牽引出的rpm安裝方式
報錯了,什麼意思呢;他說是沒有C編譯器;那好,沒有就安裝;

但是忘了這是centos5.x ,yum無法安裝; 不過還好rpm還可以使用,趕緊換安裝包方式安裝;

找了一個以前的iso鏡像,centos5的;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式

裏面有個centos的文件夾(我這是事先解壓出來的),這個文件夾裏都是centos的包;

搜索找到 gcc 的rpm包  :  gcc-4.1.2-55.el5.x86_64.rpm  ;

用遠程連接(隨便你用什麼方法)放到服務器上,然後執行 :   rpm -ivh gcc-4.1.2-55.el5.x86_64.rpm     安裝;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式

又報錯.....說是這個gcc包需要一個glibc-devel的包,好,那就去centos裏面找;

找到後上傳到服務器:   glibc-devel-2.5-123.x86_64.rpm  ;

執行  rpm -ivh glibc-devel-2.5-123.x86_64.rpm  安裝 ;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式

好,他說這個包又需要 glibc-headers 包;那就接着找包,上傳......
linux之centos5.11安裝sshpass牽引出的rpm安裝方式
安裝 glibc-headers 又說需要 kernel-headers 包;接着找  kernel-headers ;然後執行命令安裝;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式
可以了,安裝成功;說明已經不需要其他包了;將需要的包再倒着依次安裝;

安裝  glibc-headers-2.5-123.x86_64.rpm ;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式
安裝  glibc-devel-2.5-123.x86_64.rpm   ;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式

最後再安裝  gcc-4.1.2-55.el5.x86_64.rpm  ;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式
現在C編譯器已經可以使用了;可以繼續 sshpass的安裝了;

在sshpass目錄下:

./configure          

make                //make編譯

make install      //編譯安裝

ok,這樣就可以使用sshpass命令了;

備註:

我當時的環境是兩個局域網的服務器,而且也都安裝了密鑰,
在使用sshpass命令的時候會出現       Host key verification failed(主機密鑰驗證失敗。)的錯誤;
linux之centos5.11安裝sshpass牽引出的rpm安裝方式
網上說將  /root/.ssh/known_hosts  裏面的服務器密鑰刪掉或者將這個文件刪掉就可以,個人試了一下,沒成功;

用別的方法解決的;

先用 scp 命令複製文件過去,會問你  yes 還是 no ,再讓你輸入密碼;當這樣傳輸一次成功後,再用這個sshpass命令進行免密傳輸就可以了,這可能是服務器的一種安全驗證機制,原理我也不太清楚

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章