这篇博客是yum仓库的配置过程,如果是yum客户端配置请参考 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_002.html

1 环境介绍

这里我有2个环境,一个centos7,一个centos6环境, 打算使用centos6作为yum仓库,然后使用centos7作为客户端。

2 环境准备

我们知道配置yum的时候我们需要指定baseurl的,只有三种协议支持的,分别是http,ftp,file。这里我们我们选择ftp方式,在centos6机器上安装ftp软件并提供服务。

2.1 安装ftp服务端软件

  1. [root@centos6 ~]# yum install vsftpd -y #安装vsftpd软件,没有yum配置的话,可以使用rpm安装
  2. [root@centos6 ~]# chkconfig vsftpd on #开机启动
  3. [root@centos6 ~]# service vsftpd start #启动ftp服务
  4. Starting vsftpd for vsftpd: [ OK ]

2.2 禁用selinux

  1. [root@centos6 ~]# getenforce #查看当前的selinux状态
  2. Enforcing
  3. [root@centos6 ~]# setenforce 0 #禁用
  4. [root@centos6 ~]# sed -i 's@SELINUX=enforcing@SELINUX=permissive@' /etc/sysconfig/selinux #修改配置文件

2.3 关闭防火墙

  1. [root@centos6 ~]# service iptables status #查看当前的防火墙设置
  2. Table: filter
  3. Chain INPUT (policy ACCEPT)
  4. num target prot opt source destination
  5. ACCEPT all -- 0.0.0.0/ 0.0.0.0/ state RELATED,ESTABLISHED
  6. ACCEPT icmp -- 0.0.0.0/ 0.0.0.0/
  7. ACCEPT all -- 0.0.0.0/ 0.0.0.0/
  8. ACCEPT tcp -- 0.0.0.0/ 0.0.0.0/ state NEW tcp dpt:
  9. REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-host-prohibited
  10.  
  11. Chain FORWARD (policy ACCEPT)
  12. num target prot opt source destination
  13. REJECT all -- 0.0.0.0/ 0.0.0.0/ reject-with icmp-host-prohibited
  14.  
  15. Chain OUTPUT (policy ACCEPT)
  16. num target prot opt source destination
  17.  
  18. [root@centos6 ~]# service iptables stop #关闭防火墙
  19. iptables: Setting chains to policy ACCEPT: filter [ OK ]
  20. iptables: Flushing firewall rules: [ OK ]
  21. iptables: Unloading modules: [ OK ]
  22. [root@centos6 ~]# chkconfig iptables off #开机不启动ftp

2 提供yum仓库文件

2.1 把centos7的包复制到centos6的机器上

  1. [root@centos6 os]# mkdir -pv /var/ftp/pub/yum/centos/7/os/x86_64 #创建对应目录, 这个目录是仿照aliyun的那个目录组织的,清晰,这样客户端可以使用$basearch,$releasevel变量
  1. [root@centos6 os]# mount /dev/sr1 -r /var/ftp/pub/yum/centos//os/x86_64 #我这里就直接挂载个光盘,建议使用硬盘文件,而不是光盘
  2. [root@centos6 os]# ll /var/ftp/pub/yum/centos//os/x86_64

3 测试ftp服务是否正常

由于我们的centos7没有ftp的软件,所以这里使用wget测试下

  1. [root@centos7 yum.repos.d]$wget ftp://172.18.1.159/ #下载下ftp页面
  2. [root@centos7 yum.repos.d]$ cat index.html |grep pub #查看是否有pub,如果有那就是ftp服务是正常的了
  3. Nov : Directory <a href="ftp://172.18.1.159:21/pub/">pub/</a>

测试发现,我们的centos6提供的ftp一切正常, 可以供centos7使用的。

4 centos7配置测试yum

4.1 配置yum配置文件

  1. [root@centos7 yum.repos.d]$ vim network.repo #编写repo文件
  2. [root@centos7 yum.repos.d]$ cat network.repo
  3. [network]
  4. name=network
  5. baseurl=ftp://172.18.1.159/pub/yum/centos/$releasever/os/$basearch/
  6. gpgcheck=

4.2测试yum配置

  1. [root@centos7 yum.repos.d]$ yum clean all #清空缓存
  2. Loaded plugins: fastestmirror, langpacks
  3. Cleaning repos: network
  4. Cleaning up everything
  5. Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
  6. Cleaning up list of fastest mirrors
  7.  
  8. [root@centos7 yum.repos.d]$ yum -y install lftp #测试安装软件

5 如何给特定的rpm包生成仓库

  1. [root@centos6 test]# yum install createrepo -y #创建仓库需要createrepo命令,有createrepo这个包提供
    #copy一些rpm包到test目录中。
  2. [root@centos6 test]# createrepo . #在rpm文件里面执行,就可以创建一个仓库

剩下的工作就是把这个目录作为baseurl提供出去了。

yum仓库的创建的更多相关文章

  1. 命令用法习题,yum仓库的创建 chapter02 - 03 作业

    1.  分别用cat \tac\nl三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处? [root@localhost /]# ca ...

  2. 【程序包管理】本地yum仓库的创建

    一.yum优势 yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器. 基於RPM包管理,能够从指定的服务器 ...

  3. 在centos6.5下yum仓库的创建

    第一步:打开虚拟机,装入光盘镜像,选择为已连接 第二步: df -h mount umount /dev/sr0 mkdir /centos mount /dev/sr0 /centos mkdir ...

  4. 创建自己的YUM仓库

    1. 首先,假定我们应用的名字叫helloworld(可以参考简单 RPM 包制作来创建两个版本helloworld安装RPM包,helloworld-1.0.0-1.el6.x86_64.rpm和h ...

  5. centos创建本地yum仓库

    怎样发布自己软件的安装和更新YUM源 在创建之前,我们先了解些相关的内容: yum仓库可以支持三种途径提供给yum在安装的时候下载rpm包 第一种:  ftp服务  ftp:// 第二种:  http ...

  6. 创建yum仓库

    第1章 服务端)创建yum仓库目录 命令:(创建)mkdir -p /application/yum/centos6.6/x86_64/ 命令:(切换)cd /application/yum/cent ...

  7. repodata创建本地YUM仓库

    参考一createrepo是linux下的创建仓库的软件包.create是创建的意思,repo是repository的缩写,是仓库的意思. yum(Yellow dog Updater,Modifie ...

  8. 创建私有yum仓库

    创建私有yum仓库

  9. Linux系统管理第二次作业 目录和文件管理 rpm安装 创建yum仓库

    chapter02 - 03 作业      1.分别用cat \tac\nl三个命令查看文件/etc/ssh/sshd_config文件中的内容,并用自己的话总计出这三个文档操作命令的不同之处? [ ...

随机推荐

  1. Python-模块,以及使用文本中的数据

    模块导入: from math import pi as math_pi print math_pi     #相当于把pi取了个别名 # -*- coding: cp936 -*-from rand ...

  2. BZOJ 3622

    直接算 $a_i>b_i$ 对数恰为 $k$ 的不好算 那么可以先算 $a_i>b_i$ 对数至少 $k$ 的 这个排序后随便dp一下就好 那么再除了一下 用 $f_i$ 表示 $a_i& ...

  3. Pycharm安装+python安装+环境配置

    Pycharm 工具: 1.安装jdk(64位):jdk-8u65-windows-x64.exe 路径:C:\Program Files\Java(默认路径) 2.配置环境 步骤一: 系统变量→新建 ...

  4. 《JavaScript高级程序设计(第3版)》阅读总结记录第二章之在HTML中使用JavaScript

    本章目录: 2.1 <script> 元素 2.1.1 标签的位置 2.1.2 延迟脚本 2.1.3 异步脚本 2.1.4 在XHTML 中的用法 2.1.5 不推荐使用的语法 2.2 嵌 ...

  5. [LeetCode] Advantage Shuffle 优势洗牌

    Given two arrays A and B of equal size, the advantage of A with respect to B is the number of indice ...

  6. ES6 浏览器兼容性 和 Transpilation

     浏览器兼容性 和 Transpilation 你的 web 浏览器可能每隔几个月就会提示你去更新,你知道为什么吗,主要是一些安全漏洞,新特性,以及支持新的 HTML.CSS 和 JavaScript ...

  7. sql_update

    学习: http://www.runoob.com/mysql/mysql-tutorial.html replace: update table_name set column = replace ...

  8. javascript---split 和 join 的区别

    //相同点 : split 和 join 都是对字符或字符串进行操作的 //split(切割字符串) : 把字符串根据切割符切割,返回数组 //第一个参数 分隔符 //第二个参数 返回数组中元素的个数 ...

  9. Github远程推送一直Everything up-to-date

    问题描述: Github远程推送一直Everything up-to-date,但其实并没有推送成功,远程库中没有更新文件 可能原因分析及解决方法: "git push with no ad ...

  10. WS_窗口风格常量

    WS_窗口风格常量 WS_BODER 窗口具有细线边框 WS_CAPTION 窗口具有标题栏(包含 WS_BODER) WS_CHILD 创建一个子窗口(此风格不能与 WS_POPUP 一起使用 ) ...