一. 用downloadonly下载
1.1 处理依赖关系自动下载到/tmp/pages目录,pages这个目录会自动创建
yum install --downloadonly --downloaddir=/tmp/pages ceph-deploy
注意,如果下载的包包含了任何没有满足的依赖关系,yum将会把所有的依赖关系包下载,但是都不会被安装。
image.png
1.2 上传到另外一台机器或就在本机测试安装,用rpm -Uvh *.rpm命令
如何通过yum下载rpm包
1.3 用rpm -qa|grep ceph-deploy命令进行验证,如图所示安装成功,这样就实现了在无法联网的机器中通过rpm包安装,既解决了源码的繁琐,也很好的解决了依赖关系
image.png
二、不使用downloadonly ,自动安装或升级的同时保留RPM包
yum 默认情况下,升级或者安装后,会删除下载的rpm包。
不过,我们也可以如下设置升级后不删除下载的rpm包
vim/etc/yum.conf
[main]
cachedir=/var/cache/yum
keepcache=0
将 keepcache=0 修改为 keepcache=1, 安装或者升级后,在目录 /var/cache/yum 下就会有下载的 rpm 包了。
三. 利用rpm安装包文件进行自己的yum仓库的制作
前面两种是利用厂商发布的iso镜像文件作为yum仓库。当我们需要安装一些第三方提供的软件的时候我们需要到网上下载rpm的安装包,但是每次都下载多麻烦,我们可以将较常使用的rpm安装包归到一个文件里面制作成一个可以被系统识别的yum仓库,通过配置yum仓库指向文件可以将它设置成本地的yum源也可以是通过http发布的共享yum源。
3.1. 首先下几个rpm包放在一个文件夹里面。
rpm
3.2.1 安装createrepo命令
yum install createrepo
或者
rpm -ivh libxml2-python-2.9.1-6.el7_2.3.x86_64.rpm
rpm -ivh deltarpm-3.6-3.el7.x86_64.rpm
rpm -ivh python-deltarpm-3.6-3.el7.x86_64.rpm
rpm -Uvh createrepo-0.9.9-28.el7.noarch.rpm
3.2.2 生成符合要求的yum仓库
执行createrepo /home/rpm_ceph10.2.9
##将放置rpm安装包的文件夹创造成一个仓库文件,文件夹里面会多出一个repodata仓库数据文件夹。
image.png
3.2.3可以看到多了一个repodata的仓库数据文件,此时创建库成功。
image.png
- 如果添加或者删除了个人的rpm包,不需要再次重新create,浪费时间,只需要--update就可以了
createrepo --update ./
5.1 备份当前yum.repos.d/
mkdir /etc/yum.repos.bak
cp /etc/yum.repos.d/* /etc/yum.repos.bak/
5.2 删除yum.repos.d/下的文件
rm /etc/yum.repos.d/*
5.3 编辑yum源repo文件。
#vi /etc/yum.repos.d/CentOS-Media.repo
添入
# CentOS-Media.repo
#
# This repo can be used with mounted DVD media, verify the mount point for
# CentOS-7. You can use this repo and yum to install items directly off the
# DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
# yum --enablerepo=c7-media [command]
#
# or for ONLY the media repo, do this:
#
# yum --disablerepo=\* --enablerepo=c7-media [command]
[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///home/rpm_ceph10.2.9/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
baseurl=file:///root/ceph.10.2.9/ 为rpm 设置路径
gpgcheck=0表示不检查rpm数字证书,1为检查rpm数字证书
enabled=1启用这个源
保存,执行:
sudo yum clean all && yum check-update
就可以使用本地yum源了。
其实在iso的挂载点可以看到它也有一个repodata的文件,这个标志性的文件夹标志着这个文件夹具备成为yum源的可能。