最近碰到在斷網情況下給Centos7中安裝缺少的庫文件,只能通過外網下載庫文件,使用rpm一個個安裝,當庫存在依賴關系時,腦殼疼,一個個下載驗證,所以就想到如果可以使用本地源文件,再使用yum就可以解決一個個下載和依賴問題了,動手起來。
先說下我的環境,我是在VMvare中使用Centos的,我使用的是普通用戶,所以在執行命令時,使用sudo。
第一步:虛擬機加載centos的iso鏡像文件
注意:使用鏡像文件,並將設備狀態改為“已連接”
第二步:掛載iso文件
A. 先使用命令“df”查看磁盤分區情況,可以看到“/dev/sr0(實際就是/dev/cdrom)”下就是iso文件
B. 使用命令將iso鏡像文件掛載到其他位置
命令:sudo mount /dev/cdrom /Media/cdrom
C. 可使用df命令查看掛載情況
第三步:修改文件配置信息
Centos7的yum源文件使用或存放位置:/etc/yum.repoos.d文件夾中,切換到文件夾中可以看到存在多個.repo文件
A. 將.repo文件除過CentOS-Media.repo,全部移動到其他文件夾或重命名,我這里是在同級目錄中建立了bak文件夾,存放.repo文件
注:我把我使用的命令全部用紅色標記,方便查看
CentOS-Media.repo這個文件是示例文件,修改后就可以用
B. 打開CentOS-Media.repo文件修改配置
我們只需要修改兩個地方就可了,修改后為圖
第四部:使用命令清除原yum源緩存等
命令:sudo yum clean all
第五步:查看當前yum源
命令:sudo yum repolist all
第六步:安裝所需的庫文件
這時候我們在安裝庫文件就方便了
直接使用命令安裝就可以:sudo yum -y --enablerepo=c7-media install ksh
命令解釋:
l -y:表示不用詢問直接安裝
l --enablerepo=c7-media:表示使用名稱為c7-media的源文件,可在第三步中查看
注:如果不想輸入這句,可以預先設置使用那個源,命令:sudo yum-config-manager –enable c7-media
l Ksh:表示庫文件名稱
注意這邊有個小坑,當時修改源文件時,使用了注釋,導致安裝報錯
這種情況將CentOS-Media.repo文件中配置部分的注釋取消掉,如file前面的#去掉就可以
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///Media/cdrom/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7