1背景

由于开发环境只有局域网,没法使用网上的各种YUM源,来回拷贝rpm包安装麻烦,还得解决依赖问题。

想着搭建个本地/局域网YUM源,方便自己跟同事安装软件。

2环境

[root@min-base ~]# cat /etc/redhat-release
CentOS Linux release 7.2. (Core)

并且是Minimal Install。

3安装

3.1本地YUM源

3.1.1 ISO源

准备rpm包 

挂载CentOS-7-x86_64-Everything-1511.iso,把里面所有文件都拷贝到本地目录/yum/yum-iso

[root@min-base ~]# mkdir /mnt/yum-iso
[root@min-base ~]# mount /dev/cdrom /mnt/yum-iso/
mount: /dev/sr0 is write-protected, mounting read-only
[root@min-base ~]# mkdir /yum/
[root@min-base ~]# cp -a /mnt/yum-iso/ /yum/
[root@min-base ~]# ll /yum/
total
dr-xr-xr-x. root root Dec yum-iso
[root@min-base ~]# ll /yum/yum-iso/
total
-r--r--r--. root root Dec CentOS_BuildTag
dr-xr-xr-x. root root Dec EFI
-r--r--r--. root root Dec EULA
-r--r--r--. root root Dec GPL
dr-xr-xr-x. root root Dec images
dr-xr-xr-x. root root Dec isolinux
dr-xr-xr-x. root root Dec LiveOS
dr-xr-xr-x. root root Dec Packages
dr-xr-xr-x. root root Dec repodata
-r--r--r--. root root Dec RPM-GPG-KEY-CentOS-
-r--r--r--. root root Dec RPM-GPG-KEY-CentOS-Testing-
-r--r--r--. root root Dec TRANS.TBL
[root@min-base ~]#

备份、移除其他repo

[root@min-base ~]# cd /etc/yum.repos.d/
[root@min-base yum.repos.d]# ll
-rw-r--r--. root root Dec CentOS-Base.repo
-rw-r--r--. root root Dec CentOS-CR.repo
-rw-r--r--. root root Dec CentOS-Debuginfo.repo
-rw-r--r--. root root Dec CentOS-fasttrack.repo
-rw-r--r--. root root Dec CentOS-Media.repo
-rw-r--r--. root root Dec CentOS-Sources.repo
-rw-r--r--. root root Dec CentOS-Vault.repo
[root@min-base yum.repos.d]# tar zcvf repo-bk.tar.gz CentOS-*
CentOS-Base.repo
CentOS-CR.repo
CentOS-Debuginfo.repo
CentOS-fasttrack.repo
CentOS-Media.repo
CentOS-Sources.repo
CentOS-Vault.repo
[root@min-base yum.repos.d]# rm -f CentOS-Base.repo CentOS-CR.repo CentOS-Debuginfo.repo CentOS-fasttrack.repo CentOS-Sources.repo CentOS-Vault.repo

配置本地repo

[root@min-base yum.repos.d]# vi CentOS-Media.repo

填入如下内容

[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///yum/yum-iso/
gpgcheck=
enabled=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

注释:配置repo路径、关闭gbp校验、启用这个repo

制作cache

[root@min-base yum.repos.d]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: c7-media
Cleaning up everything
Cleaning up list of fastest mirrors
[root@min-base yum.repos.d]# yum makecache
Loaded plugins: fastestmirror
c7-media | 3.6 kB ::
(/): c7-media/group_gz | kB ::
(/): c7-media/primary_db | 5.3 MB ::
(/): c7-media/filelists_db | 6.2 MB ::
(/): c7-media/other_db | 2.3 MB ::
Determining fastest mirrors
Metadata Cache Created
[root@min-base yum.repos.d]#

这样就可以使用yum安装软件啦

[root@min-base yum.repos.d]# yum groupinstall "Development tools"
Loaded plugins: fastestmirror
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package autoconf.noarch :2.69-.el7 will be installed
--> Processing Dependency: perl >= 5.006 for package: autoconf-2.69-.el7.noarch
--> Processing Dependency: m4 >= 1.4. for package: autoconf-2.69-.el7.noarch
--> Processing Dependency: perl(warnings) for package: autoconf-2.69-.el7.noarch

或者

[root@min-base yum.repos.d]# yum install tree
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package tree.x86_64 :1.6.-.el7 will be installed
--> Finished Dependency Resolution

3.1.2 自定义YUM源

[root@min-base yum.repos.d]# yum -y install createrepo

准备rpm包

(需要自己确定依赖包)、目录。这里使用tree做演示。

[root@min-base ~]# mkdir -p /yum/yum-custom/packages
[root@min-base ~]# cp tree-1.6.-.el7.x86_64.rpm /yum/yum-custom/packages/

创建repo

[root@min-base ~]# createrepo -u -d  /yum/yum-custom/
Spawning worker with pkgs
Spawning worker with pkgs
Workers Finished
Saving Primary metadata
Saving file lists metadata
Saving other metadata
Generating sqlite DBs
Sqlite DBs complete
[root@min-base ~]# ll /yum/yum-custom/
total
drwxr-xr-x. root root Dec : packages
drwxr-xr-x. root root Dec : repodata
[root@min-base ~]#

配置自定义repo

[root@min-base ~]# vi /etc/yum.repos.d/CentOS-Media.repo

填入如下内容

[c7-media]
name=CentOS-$releasever - Media
baseurl=file:///yum/yum-custom/
gpgcheck=
enabled=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

制作cache

[root@min-base ~]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: c7-media
Cleaning up everything
Cleaning up list of fastest mirrors
[root@min-base ~]#
[root@min-base ~]# yum makecache
Loaded plugins: fastestmirror
c7-media | 3.0 kB ::
(/): c7-media/filelists_db | B ::
(/): c7-media/primary_db | 1.8 kB ::
(/): c7-media/other_db | 1.3 kB ::
Determining fastest mirrors
Metadata Cache Created
[root@min-base ~]#

使用自定义repo

[root@min-base ~]# yum install tree
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package tree.x86_64 :1.6.-.el7 will be installed
--> Finished Dependency Resolution

3.2 局域网YUM源

局域网YUM源可以配成:本地YUM源 + FTP服务器

这里使用自定义源yum-custom(见上面) + VSFTP演示。

下载vsftpd

[root@min-base ~]# yum -y install vsftpd

配置vsftpd

编辑vsftp.conf

[root@min-base ~]# vi /etc/vsftpd/vsftpd.conf

并增加匿名用户root目录(默认已经启用匿名访问)

anon_root=/yum/

注意目录权限如下

[root@min-base ~]# ll -a /yum/
total
drwxr-xr-x. root root Dec : .
dr-xr-xr-x. root root Dec : ..
drwxr-xr-x. root root Dec : yum-custom
dr-xr-xr-x. root root Dec yum-iso

 关闭selinux

临时

[root@min-base ~]# setenforce 

或者,永久:

编辑config

[root@min-base ~]# vi /etc/selinux/config

设置

SELINUX=disabled

重启

[root@min-base ~]# reboot

启用vsftp

[root@min-base ~]# systemctl start vsftpd
[root@min-base ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@min-base ~]#

局域网使用

局域网另外一台机器min-client,

配置repo

编辑repo

[root@min-client ~]# vim /etc/yum.repos.d/CentOS-Media.repo

内容如下

[c7-media]
name=CentOS-$releasever - Media
baseurl=ftp://192.168.118.133/yum-custom
gpgcheck=
enabled=
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

其中192.168.118.133为上面vsftp服务器地址

启用这个局域网的repo

[root@min-client ~]# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: c7-media
Cleaning up everything
[root@min-client ~]# yum makecache
Loaded plugins: fastestmirror
c7-media | 3.0 kB :
(/): c7-media/filelists_db | B :
(/): c7-media/other_db | 1.3 kB :
(/): c7-media/primary_db | 1.8 kB :
Determining fastest mirrors
Metadata Cache Created
[root@min-client ~]#

使用

[root@min-base ~]# yum -y install tree
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package tree.x86_64 :1.6.-.el7 will be installed
--> Finished Dependency Resolution

目前差不多这些就够用了。以后有时间把163的YUM源爬下来,当本地源用。

CentOS7.2 创建本地YUM源和局域网YUM源的更多相关文章

  1. 搭建本地yum源和局域网yum源

    搭建本地yum源和局域网yum源 由于很多客户环境是专网,不允许连网,无法使用网上的各种yum源,来回拷贝rpm包安装麻烦,还得解决依赖问题.所以想着搭建个本地/局域网YUM源,方便安装软件. 1   ...

  2. CentOS 7搭建本地yum源和局域网yum源

    这两天在部署公司的测试环境,在安装各种中间件的时候,发现各种依赖都没有:后来一检查,发现安装的操作系统是CentOS Mini版,好吧,我认了:为了完成测试环境的搭建,我就搭建了一个局域网的yum源. ...

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

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

  4. CentOS7创建本地YUM源的三种方法

    这篇文章主要介绍了CentOS7创建本地YUM源的三种方法,本文讲解了使用CentOS光盘作为本地yum源.如何为CentOS创建公共镜像.创建完全自定义的本地源等内容,需要的朋友可以参考下     ...

  5. centos配置本地yum源和光盘挂载

    说明:以centos6.5为例创建本地yun源,centos7的创建方法和centos6的是一样的. 创建挂载目录: mkdir /dvd 开机自动挂载光盘 echo /dev/cdrom   /dv ...

  6. linux:网络yum源和制作本地光盘yum源

    linux:存放yum源的位置:/etc/yum.repos.d/,该目录下全是一些yum源 一.网络yum源: 如图:下面全部都是yum源,后缀是".repo"都是合法的yum源 ...

  7. CentOS7.2配置本地yum源

    1.检查是否有本地yum源 1)检查是否能连网 ping www.baidu.com 2)检查是否有本地yum源 yum list 2.挂载镜像文件 以上检查,说明确实是内网,也确实没有本地yum源, ...

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

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

  9. Linux搭建局域网yum源和后期在yum源中更新rpm包方法

    在内网中搭建自己的yum源,可以方便在内网中使用,下面简单介绍搭建局域网yum源的方法和后期更新yum源rpm包的方法. 一.搭建局域网yum源 1.需要在局域网访问,首先需要一个web服务器,比如a ...

随机推荐

  1. 【Java EE 学习 25 上】【网上图书商城项目实战】

    一.概述 1.使用的jdk版本:1.6 2.java EE版本:1.6 3.指导老师:传智播客 王建 二.小项目已经实现的功能 普通用户: 1.登陆 2.注册 3.购物 4.浏览 管理员用户(全部管理 ...

  2. SpringMVC学习(三)整合SpringMVC和MyBatis

    工程结构 导入jar包 配置文件 applicationContext-dao.xml---配置数据源.SqlSessionFactory.mapper扫描器 applicationContext-s ...

  3. 速度最快的Json序列框架Jil,入门动手实录

    好吧,我又先要贴出跑分图了,出处 Jil是一个面向Json的序列化框架,在Nuget上可以下载到 支持数据类型 值得一提的是,Guid指定带破折号格式(44B2673B-B5CA-477B-A8EA- ...

  4. 转载--PayPal高级工程总监:读完这100篇论文 就能成大数据高手

    http://www.csdn.net/article/2015-07-07/2825148

  5. Android开发环境(IDE)

    一:Eclipse 1.装JDK: 2.装Eclipse://应与JDK同为32/64位. 3.装ADT: 4.装android sdk: 推荐下载ADT bundle包(包含Eclipse,Andr ...

  6. 《DSP using MATLAB》示例Example5.11

  7. STL set 用法

      c++ stl集合set介绍 c++ stl集合(Set)是一种包含已排序对象的关联容器.set/multiset会根据待定的排序准则,自动将元素排序.两者不同在于前者不允许元素重复,而后者允许. ...

  8. 关于如何通过定义自己的CameraManager来控制视角

    2016.8.30 发现了这个函数,可以直接获得摄像机的位置和旋转. Controller->GetPlayerViewPoint(CamLoc, CamRot); 最近看了几天PlayerCa ...

  9. ZooKeeper个人笔记Session管理

    Session 1.sessionId  <机器的SID,当前时间>生成一个sessionId,这是全局唯一的. 2.TimeOut 会话的超时时间,注意,这个值和客户端ZooKeeper ...

  10. IIS运行.NET4.0配置

    IIS运行.NET4.0配置 “/CRM”应用程序中的服务器错误.配置错误说明: 在处理向该请求提供服务所需的配置文件时出错.请检查下面的特定错误详细信息并适当地修改配置文件. 分析器错误消息: 无法 ...