Linux在本地yum源中增加rpm包

Posted 听云轩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux在本地yum源中增加rpm包相关的知识,希望对你有一定的参考价值。

在内网中搭建自己的yum源,可以方便在内网中使用,下面简单介绍搭建局域网yum源的方法和后期更新yum源rpm包的方法。

一、搭建局域网yum源

        1、需要在局域网访问,首先需要一个web服务器,比如apache httpd或者nginx均可以,centos默认是安装了httpd的,我们就用这个了。可以systemctl start httpd.service命令启动服务systemctl status httpd.service查看httpd的运行状态,如果没有安装,可以使用离线包安装或者yum -y install httpd在线安装。访问出现下面页面表示启动成功了,并且服务器的根目录在/var/www/html下,可以解析静态页面以及显示目录列表了。

             apache httpd的默认端口是80,如果被占用要改端口,去/etc/httpd/conf/httpd.conf中修改Listen即可,另外服务目录、文件目录等都在里面配置,修改完后需要重启systemctl restart httpd.service。

 

 

        2、创建目录mkdir -p /var/www/html/yum-custom,将自己的rpm包放到这个目录下面。

              重建索引文件,如果有repodata文件夹先删除,然后执行yum -y install createrepo;  安装完后重建索引createrepo . 

        3、备份其他repo文件,cd /etc/yum.repos.d/;           tar -zcvf repo-bk.tar.gz CentOS-* ;    然后将这些repo删除 rm -rf CentOS-*

              新增自定义的repo文件,vi yum-custom.repo,添加下面的内容

[yum-custom]
name=yum-custom
baseurl=http://10.110.19.60/yum-custom/
#baseurl=file:///var/www/html/yum-custom
enable=1
gpgcheck=0

         4、刷新yum clean all; 之后可以通过yum repolist查看最新的yum源信息,到这里本地yum源就配置好了,其他机器只要设置好repo文件,就可以直接使用yum命令安装自定义源中的软件了。可以建立缓存,提高使用和查询效率yum makecache;

 

 

二、更新本地yum源

当前用的本地yum源中缺少需要的包,需要手动添加,下面记录一下添加步骤。

        1、找到yum原的具体位置,例如我的在/var/www/html/yum/centos/7目录下,查看文件列表可以看到各个rpm包和一个repodata文件夹,这个文件夹中的repomd.xml文件就是记录yum源文件依赖关系的,新增yum源的主要工作就是更新依赖关系。

              

        2、删除repodata文件夹,rm -rf repodata;  然后将自己需要添加的rpm包上传到yum源的目录下面。

        3、创建新的repodata文件夹,createrepo .

             如果提示命令不存在,先安装yum -y install createrepo

            

        4、最后刷新yum clean all;   新的rpm包就可以在本地yum源中生效了。

            

 

-------------------------------------------------------------------我不是底线-----------------------------------------------------------

对于收集需要的rpm包的一种方法

a、恢复修改之前的yum源配置文件,把之前备份的Cent*.repo拷贝到/etc/yum.repos.d/下,如果找不到备份的文件直接搜一下find / -name Cent*.repo

b、打开yum文件的本地缓存vi /etc/yum.conf; 将缓存打开keepcache=1,刷新规则yum clean all; 这样再执行安装脚本,就会自动把缺少的包从在线yum源刷到本地

c、缓存下来的包在/var/cache/yum下面,在下面每个文件夹下的packages中

d、收集这些包,就可以更新到自己的yum源中了

 

---------------------------------

或者还有可以这样,例如需要xxxx的离线安装包

yum install xxxx --downloadonly --downloaddir=/root

别的机器需要安装时,将rpm包拷进去, cd /root;  yum localinstall * -y

 

以上是关于Linux在本地yum源中增加rpm包的主要内容,如果未能解决你的问题,请参考以下文章

yum搭建本地仓库更换国内源下载rpm包

rpm工具使用yum工具使用源码包安装yum更换国内源使用系统盘搭建本地仓库源

Ceph本地yum源配置

Centos7 本地yum源配置

Linux下 本地yum源搭建

linux搭建本地yum源