Linux使用createrepo制作本地yum源
1、什么是createrepo?
createrepo 是一个对rpm 文件进行索引建立的工具。大体功能就是对指定目录下的rpm文件进行检索,把每个rpm文件的信息存储到指定的索引文件中,这样方便远程yum命令在安装更新时进行检索。
2、createrepo的应用场景
很多场景,我们需要在内网环境离线去安装软件包。但是在实际安装过程中缺少依赖包。这时我们在本地可以联网的环境下载所需的依赖包,制作成yum源,并打成tar包。这样我们就可以在内网环境,使用yum命令安装依赖的rpm包。
3、实战演练:
0、下载依赖包
[root@ServerA ~]# yum install --downloadonly --downloaddir=/Packages package-name
1、安装createrepo软件包
[root@ServerA ~]# yum install -y createrepo
2、进入本地rpm包目录
[root@ServerA yum]# ll
总用量 244
dr-xr-xr-x 2 root root 200704 12月 4 15:48 Packages
[root@ServerA yum]# pwd
/root/yum
[root@ServerA Packages]# createrepo ./
3、执行完后可以看到生成的repodata目录
[root@ServerA yum]#
[root@ServerA yum]# ll
总用量 248
dr-xr-xr-x 2 root root 200704 12月 4 15:48 Packages
drwxr-xr-x 2 root root 4096 12月 4 15:49 repodata
[root@ServerA yum]#
[root@ServerA yum]# cd repodata/
[root@ServerA repodata]# ls
40bac61f2a462557e757c2183511f57d07fba2c0dd63f99b48f0b466b7f2b8d2-other.xml.gz
89f2f521e86842c3874e2d3e0adf9fcc57f51a677007695372fef9cbc094a93a-primary.sqlite.bz2
9710c85f1049b4c60c74ae5fd51d3e98e4ecd50a43ab53ff641690fb164a6d63-other.sqlite.bz2
cfa741341d5d270d5b42d6220e2908d053c39a2d8346986bf48cee360e6f7ce8-filelists.xml.gz
d863fcc08a4e8d47382001c3f22693ed77e03815a76cedf34d8256d4c12f6f0d-filelists.sqlite.bz2
e4567be6b0b9a3fa62ae0c731d0ace9656c93f38cac1947e37c4d58d4a097d1a-primary.xml.gz
repomd.xml
至此个人yum源完成
4、编辑yum配置文件使用
[root@ServerA repodata]# vim /etc/yum.repo/yum.repo
[yum2]
name=yum2
baseurl=file:///root/yum/
gpgcheck=0
enabled=1
5、将/etc/yum.repo/目录的其他repo源移备份,以免受影响
[root@ServerA repodata]# cd /etc/yum.repo.d/
[root@ServerA repodata]# mv epel.repo epel.repo.bak
6、完成,测试使用
#清空yum源
[root@ServerA repodata]# yum clean all
#更新yum源
[root@ServerA repodata]# yum makecache
#查看已加载的yum源,如果新添加的repo状态是enabled状态,说明加载成功。
[root@ServerA repodata]# yum repolist all
7、关于更新yum仓
不需要重新生成,使用createrepo --update 路径即可
[root@ServerA yum]# createrepo --update ./
或
[root@ServerA yum]# yum install package-name -y
本文来自博客园,作者:业余砖家,转载请注明原文链接:https://www.cnblogs.com/yeyuzhuanjia/p/15687968.html