创建yum源服务,主要用到了两个软件createrepohttpd。前者是创建yum源索引的工具,后者是提供文件在线流浪的功能,当然,除了httpd之外,你也可以使用nginx替代。

createrepo

yum –y install createrepo 安装建yum源仓库的工具,可以用来建立yum仓库索引

man createrepo 用途:

Create repomd (xml-rpm-metadata) repository

参数说明

-u  --baseurl <url>
指定Base URL的地址
-o --outputdir <url>
指定元数据的输出位置
-x --excludes <packages>
指定在形成元数据时需要排除的包
-i --pkglist <filename>
指定一个文件,该文件内的包信息将被包含在即将生成的元数据中,格式为每个包信息独占一行,不含通配符、正则,以及范围表达式。
-n --includepkg
通过命令行指定要纳入本地库中的包信息,需要提供URL或本地路径。
-q --quiet
安静模式执行操作,不输出任何信息.
-g --groupfile <groupfile>
指定本地软件仓库的组划分,范例如下: createrepo -g comps.xml /path/to/rpms 注意:组文件需要和rpm包放置于同一路径下。
-v --verbose
输出详细信息。
-c --cachedir <path>
指定一个目录,用作存放软件仓库中软件包的校验和信息。 当createrepo在未发生明显改变的相同仓库文件上持续多次运行时,指定cachedir会明显提高其性能。
--update
如果元数据已经存在,且软件仓库中只有部分软件发生了改变或增减, 则可用update参数直接对原有元数据进行升级,效率比重新分析rpm包依赖并生成新的元数据要高很多。
-p --pretty
以整洁的格式输出xml文件。
-d --database
该选项指定使用SQLite来存储生成的元数据,默认项。

创建的目录为:/data/mirrors/x86_64

执行命令:

createrepo /data/mirrors/x86_64 # 会默认在`/data/mirrors/x86_64`下创建repodata的索引目录

当然,你也可以显示的加一下参数,指定repodata的位置:

createrepo -qdo /data/mirrors/x86_64 /data/mirrors/x86_64 # -0 后面指定的是repodata索引目录位置

当软件仓库中包含很多软件包时,没有必要每次都为每个软件包重新创建元数据,浪费时间。可以执行createrepo --update /data/mirrors/x86_64更新索引。

验证

配置上新增的源,执行命令查看源软件列表:

yum list available

** 注意:及时源刷新OK,本地需要yum makecache才会显示最新列表**

参考:

httpd

http文件服务器安装:

yum install -y httpd

参数说明

ServerRoot     "/etc/httpd"
#你的apache安装目录。其它指定的目录如果没有指定绝对路径,则目录是相对于该目录。
ServerName www.xxx.com:端口号(默认是80)
#主站点名称(网站的主机名)。
ServerAdmin admin@126.com
#管理员的邮件地址
DocumentRoot "/data/app"
#主站点的网页存储位置
Directory 语句就是用来定义目录的访问限制的,这里可以看出它的标准语法,为一个目录定义访问限制。上例的这个设置是针对系统的根目录进行的

配置文件在/etc/httpd/conf/httpd.conf

<Directory "/data/mirrors/x86_64">
Options Indexes FollowSymLinks
IndexOptions Charset=UTF-8
IndexOptions NameWidth=*
AllowOverride All
Order Deny,Allow
Allow from all
Require all granted
</Directory>

支持监听多端口,配置对应不同目录

除了监听80端口之外,再新增监听8080端口,同时,对应不同的目录michael,站点配置如下:

Listen 8080
<virtualhost *:8080>
ServerName www.example.com
DocumentRoot /data/michael
<Directory "/data/michael">
Options Indexes FollowSymLinks
IndexOptions Charset=UTF-8
IndexOptions NameWidth=*
AllowOverride All
Order Deny,Allow
Allow from all
Require all granted
</Directory>
</virtualhost>

参考:

CentOS Yum 源搭建的更多相关文章

  1. Linux 本地yum源搭建和网络yum源搭建

    一.本地yum源搭建 首先挂载上光盘 [root@www /]# mount /dev/cdrom /media/cdrom/ 系统默认已经安装了可使用yum的软件包,所以可以直接配置: [root@ ...

  2. 【Linux】YUM源搭建

    YUM是什么? YUM是什么 基于rpm但更胜于rpm的软件管理工具: YUM有服务端和客户端: 如果服务端和客户端在同一台机器,这是本地YUM: 如果服务端和客户端不在同一台机器,这是网络YUM. ...

  3. redhat centos yum源的安装

    redhat centos yum源的安装 1.除旧 #cd /etc/yum.repos.d #mv rhel-debuginfo.repo rhel-debuginfo.repo.bak 此处将其 ...

  4. centos yum源配置 与yum配置文件

    参考博客 http://www.cnblogs.com/mchina/archive/2013/01/04/2842275.html 1.centos . yum配置文件在目录 /etc/yum.re ...

  5. RedHat 更新CentOS Yum源(转)

    经测试,可用.转自:https://www.cnblogs.com/tangsen/p/5151994.html 一.随笔引言 1.1随笔内容: 1.RedHat 配置Centos yum源 2.yu ...

  6. CentOS yum源设定使用方法的整理(转)

    CentOS yum更新了很多版本更新,我本人认为CentOS yum很好使的文件系统,在此向大家推荐CentOS应该是做为服务器的linux的佼佼者.CentOS采用的二进制包是rpm,不过包的依赖 ...

  7. 基于VSFTP的本地YUM源及光盘YUM源搭建

    基于VSFTP的本地YUM源及光盘YUM源搭建  一.yum环境的本地源搭建(基于VSFTP):  1)安装vsftp;     *********************************** ...

  8. RHEL6配置CentOS yum源

    RHEL6配置CentOS yum源

  9. 本地局域网yum源搭建-centos/redhat

    环境-centos6.7  [本机yum搭建提前备好,不做介绍] [root@nagios ~]# cat /etc/redhat-release CentOS release 6.7 (Final) ...

随机推荐

  1. URL List by Category

    URLs List AI https://www.cnblogs.com/zlel/p/8882129.html Javascript Promise http://liubin.org/promis ...

  2. WebStorage (1) 实例

    实例代码 <p>本页面每5秒刷新一下,这是您第<mark></mark>次进入本页面!</p> <script> if (window.lo ...

  3. Robot Framework 教程 (3) - Resource及关键字 的使用

    From:http://www.cnblogs.com/buaawp/p/4754399.html Robot Framework 教程 (3) - Resource及关键字 的使用 在进行软件自动化 ...

  4. Mysql Federated For Windows

    [1]windows环境下打开federated (1)关闭.命令:mysql> net stop mysql (2)添加federated字段.在my.ini文件中添加一个字段,注意位于[my ...

  5. Lua逻辑操作符

    [1]逻辑操作符and.or和not 应用示例: ) ) -- nil ) -- false ) ) ) ) ) ) ) print(not nil) -- ture print(not false) ...

  6. Spring cglib 初始化 ExceptionInInitializerError,new Enhancer() 异常

    解决办法:更换 spring-cglib-repack-*.*.jar 包 java.lang.ExceptionInInitializerError at org.springframework.a ...

  7. 使用Java函数接口及lambda表达式隔离和模拟外部依赖更容易滴单测

    概述 单测是提升软件质量的有力手段.然而,由于编程语言上的支持不力,以及一些不好的编程习惯,导致编写单测很困难. 最容易理解最容易编写的单测,莫过于独立函数的单测.所谓独立函数,就是只依赖于传入的参数 ...

  8. 设计模式之Facade(外观)(转)

    Facade的定义: 为子系统中的一组接口提供一个一致的界面. Facade一个典型应用就是数据库JDBC的应用,如下例对数据库的操作: public class DBCompare { Connec ...

  9. Hive分区表新增字段及修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作

    一.Hive分区表新增字段 参考博客:https://blog.csdn.net/yeweiouyang/article/details/44851459 二.Hive修改表名,列名,列注释,表注释, ...

  10. MongoDB With Spark遇到的2个错误,不能初始化和sample重复的key

    1.$sample stage could not find a non-duplicate document while using a random cursor 这个问题比较难解决,因为我用mo ...