CDH平台搭建解決離線安裝依賴包的方法


背景介紹:

1CDH開發平台在搭建的過程中,會遇到各種各樣的問題,其中的各種依賴就是一個很讓人頭痛的問題。如果安裝腳本文件出現了這種問題,那么就可以把以下的這種方法加入shell中,但是不要用yum來安裝,因為yum安裝需要網絡,有的應用場景是離線的,所以我們采用離線安裝,下一個Yum包所需要的離線包以及依賴。

2CDH開發平台如果遇到網卡不能重啟,就重啟整個機器

3重啟整個雲主機完后啟動CDH前不要忘了先啟動Ntp和Mysql服務不然你連CDH怎么掛的都不知道

注:本文也是參考了其他大牛,作為本人在搭建過程中遇到的問題,如何解決的方法介紹

【yum】解決離線安裝依賴包的方法

解決辦法是下載所有所需的rpm包和它的依賴,拷貝到目標安裝機器上,然后搭建一個本地yum倉庫,安裝完成之后刪除本地倉庫。

反向代理所需:  nginx  keepalived

搭建倉庫所需:  createrepo

一、新建一台CentOS7 mini虛擬機,聯網下載所有所需的rpm包和其依賴

#yum -y install epel-release

#mkdir /root/abc

#yum -y install createrepo --downloadonly --downloaddir=/root/abc

#yum -y install nginx keepalived --downloadonly --downloaddir=/root/abc

 

注: yum  -y  install   XXX    --downloadonly    --downloaddir=/XXX

安裝軟件包xxx下載到/xxx位置,然后記得指定--downloadonly,只下載,不安裝。此方法,會將主軟件包和基於你現在的操作系統缺少的依賴關系包一並下載!基於你現在的操作系統,意味着不同版本的操作系統(桌面版、mini版等)下載的軟件依賴包個數會不一樣!你的操作系統已裝的包越多,那么下下來的依賴會越少,所以請選擇合適的基操作系統!

 

下載完成后,我們可以看到/root/abc 下有多個rpm包(主包及其依賴),接下來我們就利用這些rpm包搭建一個本地yum倉庫。

 

二、拷貝下載的rpm包到離線目標機器(假設為/root/abc),搭建本地yum倉庫(我是使用xftp直接拖過去的)

 

 

自己選擇一個好的方法,比較推薦scp命令

 

 

將目標機器系統自帶的倉庫文件,轉移備份

# mkdir /etc/yum.repos.d/backup

# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup

# yum clean all

安裝搭建倉庫所需的的軟件包,主包為createrepo,請按如下順序安裝:

 

 

#運行以下命令

  cd /root/abc

  rpm -qa | grep libxml2 | xargs rpm -e --nodeps

  rpm -qa | grep deltarpm| xargs rpm -e --nodeps

  rpm -ivh  deltarpm-3.6-3.el7.x86_64.rpm

  rpm -ivh  python-deltarpm-3.6-3.el7.x86_64.rpm

 

  rpm -ivh  libxml2-2.9.1-6.el7_2.3.x86_64.rpm

  rpm -ivh  libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm

以上兩條命令未成功,由於沒有對應的.rpm文件

 

 

rpm -ivh  createrepo-0.9.9-28.el7.noarch.rpm

同理,由於缺少前兩條的依賴,所以需先安裝前兩條命令

 

 

 

解決方法:下載這兩個文件后,再重新執行以上3個命令

 

繼續執行以下命令:

# mkdir -p /var/ftp/pub/localrepo

# cp -f /root/abc/* /var/ftp/pub/localrepo

# touch /etc/yum.repos.d/localrepo.repo

#echo "[localrepo]"  >>/etc/yum.repos.d/localrepo.repo

#echo "name=Local Repository" >>/etc/yum.repos.d/localrepo.repo

#echo "baseurl=file:///var/ftp/pub/localrepo" >>/etc/yum.repos.d/localrepo.repo

#echo "gpgcheck=0" >>/etc/yum.repos.d/localrepo.repo

#echo "enabled=1"  >>/etc/yum.repos.d/localrepo.repo

#createrepo -v /var/ftp/pub/localrepo

#yum repolist

 

 三、利用本地yum倉庫,安裝所需軟件包

因為我們已利用我們所需的軟件和其依賴包搭建了本地倉庫,安裝過程中yum會自己解決依賴包安裝的順序。createrepo 在上面已安裝,下面無需再裝。

# yum -y install nginx  keepalived

 

 

四、安裝完成后,刪除搭建的本地yum倉庫,恢復系統yum倉庫文件

# rm  -rf /var/ftp/pub/localrepo

# rm  -rf /etc/yum.repos.d/localrepo.repo

# mv  /etc/yum.repos.d/backup/*.repo   /etc/yum.repos.d/

# rm  -rf /etc/yum.repos.d/backup

# yum clean all

 

 

蓋木歐瓦~

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM