在内网中搭建自己的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源中了

Linux搭建局域网yum源和后期在yum源中更新rpm包方法的更多相关文章

  1. linux 搭建局域网YUM源仓库服务器

    yum简介 Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服 ...

  2. linux里如何配置本地yum源和外网yum源

    一:本地和外网源配置方法 二:外网YUM源的地址 一: ① 本地源配置方法:以光盘里rpm举例(这里使用虚拟机演示) 1.挂载一个iso的镜像 把光盘挂载到一个目录里,然后进入/etc/yum.rep ...

  3. CentOS6 yum源支持更多rpm包的升级(使用第三方软件库EPEL、RPMForge与RPMFusion)

    转载于http://blog.csdn.net/erazy0/article/details/6878153 在CentOS下运行yum install flash-plugin或yum instal ...

  4. 在yum出问题的情况下安装某个rpm包的方法

    1 核心命令 rpm -i 2 方法 centos镜像站去找到所有的rpm包. 安装这个rpm包,发现有一个依赖没有安装,就去下载安装.因为整体的包是有限的,因此终会收敛的. 比如安装rpmbuild ...

  5. linux系统更新rpm包问题 ,报错rhn-check-2.0.2-5.el7.noarch has missing requires of yum-rhn-plugin >= ('0', '1.6.4', '1')

    报错信息: rhn-check-2.0.2-5.el7.noarch has missing requires of yum-rhn-plugin >= ('0', '1.6.4', '1') ...

  6. 【转】用yum只下载rpm包而不安装

    转自:http://liucheng.name/1950/ CentOS用yum安装软件是非常方便的,有时,我们只需要下载其中的rpm包,而不直接安装时咋办呢? 一般情况下,yum是不提供只下载的功能 ...

  7. 快速搭建YUM源和yum使用

    yum是一种便捷,快速的RPM包安装方法,可以避免很多包的关联性,但RedHat的YUM源,不是免费的,需要他们的RHN才能够用,而CentOS得yum是免费的,由于CentOS和RedHat相似度高 ...

  8. RHEL7.2系统下的软件管理(yum)、本地yum源和网络yum源的搭建

    在Liunx系统中,rpm和yum都可以安装软件,但rpm存在安装软件的依赖性,yum安装软件需要yum源 1.yum yum install softwarename ##安装 yum repoli ...

  9. 其他综合-搭建本地yum仓库及自制rpm包

    搭建本地yum仓库及自制rpm包 实验目的 为方便本地 yum 的管理,建本地 yum 仓库,实现局域网内部快速安装常用软件 实验环境 VMware:12版本 系统版本:CentOS Linux re ...

随机推荐

  1. flutter 切换tab后保留tab状态

    前言 最近在用flutter写一个小项目,在写主页面(底部导航栏+子页面)时遇到的一个问题:当点击底部item切换到另一页面, 再返回此页面时会重走它的initState方法(我们一般在initSta ...

  2. JsonResponse简单使用

    一个简单的django项目 urlpatterns = [ # views.hello 是执行views中的hello函数 # name 是URL的别名 url(r'^hello/', views.h ...

  3. OO ALV 后台运行时错误:Control Framework: Fatal error - GUI cannot be reached

    这个错误的原因,是GUI容器依赖GUI的存在,因为它是在后台运行,没有GUI,因此控制错误. 可以通过做一些编码绕过这个. * ALV Grid DATA: R_GRID TYPE REF TO CL ...

  4. 如何把本地文件上传至github?

    (都说git好用,但我觉得git把我弄得像个git……在反反复复用git bash的命令行上传失败了N次之后,终于可以用命令行把文件上传到GitHub了 这中间,还要感谢网络上的各种git教程!!!) ...

  5. 【HANA系列】SAP HANA SQL合并多行操作

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL合并多行 ...

  6. NativeContainer

    安全系统复制数据的过程的缺点是它还隔离了每个副本中作业的结果.要克服此限制,您需要将结果存储在一种名为NativeContainer的共享内存中. 什么是NativeContainer? A Nati ...

  7. 状态压缩DP:蒙德里安的梦想

    代码 #include<bits/stdc++.h> using namespace std; int n,m; long long f[12][1<<11]; bool yy ...

  8. 解析之Apache解析

  9. netcore程序部署 ubuntu 16.0.4 报错 The type initializer for 'System.Net.Http.CurlHandler'的解决方案

    最近业务扩展需要把netcore程序部署到ubuntu 16.0.4上,因为代码里面用到了HttpClient 请求. 部署ubuntu后一直报错 参考地址:https://github.com/do ...

  10. LINQ查询表达式详解(2)——查询表达式的转换

    简介 C#在执行LINQ查询表达式的时候,并不会指定其执行语义,而是将查询表达式转换为遵循查询表达式模式的方法的调用.具体而言,查询表达式将转换为以下名称的调用:Where.Select.Select ...