关于yum:网友来稿内网环境或网速差怎么破一文带你搭建本地Yum源

5次阅读

共计 2698 个字符,预计需要花费 7 分钟才能阅读完成。

写在开篇

yum 是什么

是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。基于 RPM 包治理,可能从指定的服务器主动下载 RPM 包并且装置,能够主动解决依赖性关系,并且一次装置所有依赖的软件包,毋庸繁琐地一次次下载、装置。

一、搭建本地 yum 源服务

查看 linux 内核 cat /etc/redhat-release 依据版本,能够去 centos 官网找到 iso 镜像文件下载;

  • 留神:最好和线上装置的 linux 内核版本统一;centos 和 redhat。
  • 笔者这里的环境是:CentOS Linux release 7.5.1804 (Core)
二、创立文件夹并备份 linuxYUM 源

以下是本地的原有 yum 源

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo  epel-testing.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  epel.repo
[root@localhost yum.repos.d]# 

创立目录,咱们须要把原有本地的 yum 源给移走

[root@localhost ~]#mkdir -p /etc/yum.repos.d/linux
[root@localhost ~]#cd /etc/yum.repos.d
[root@localhost ~]#mv *.repo linux
三、wget 阿里云的 yum 源
[root@localhost ~]# cd /etc/yum.repos.d
[root@localhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

yum 会将下载下来的包文件 rpm 和头文件 header 存盘在本地机器的硬盘缓存中, 这个将占用硬盘空间, 能够将这些内容革除掉, 以开释磁盘空间:

[root@localhost ~]#yum clean all #革除所有缓存
[root@localhost ~]#yum  makecache #yum 装置的时候会将安装包进行缓存,不过最好还是再执行一下 yum makecache 命 

四、装置软件 yum-utils 工具包
  • Yum-utils: 治理 repository 及扩大包的工具 (次要是针对 repository)
  • epel-release: EPEL 是由 Fedora 社区打造,为 RHEL 及衍生发行版如 RedHat 以及 CentOS 中的 Shell 前端软件包管理器

    [root@localhost ~]#yum -y install yum-utils
    [root@localhost ~]#yum -y install epel-release
五、下载相干的 rpm 包

Yumdownloader 命令行工具,它能够一次性下载任何 RPM 软件包及其所有依赖包。yum install yum-utils。一旦装置实现,运行如下命令去下载一个软件包,yumdownloader 为了依据所有依赖性下载软件包,咱们应用 –resolve 参数:yumdownloader –resolve 默认状况下,Yumdownloader 将会下载软件包到当前工作目录下。
为了将软件下载到一个特定的目录下,咱们应用 –destdir 参数:yumdownloader –resolve –destdir=/tmp/all

[root@localhost ~]# yumdownloader --resolve --destdir=/tmp/all gcc sqlite-devel libpng  libpng-devel libjpeg libjpeg-devel freetype freetype-devel oniguruma oniguruma-devel libxml2-devel curl-devel mysql-devel libssh2-devel libxml2-devel libevent-devel OpenIPMI-devel libssh2-devel net-snmp-devel unixODBC-devel  libxml2 libxml2-devel gccpcre-devel openssl openssl-devel pcre pcre-devel zlib zlib-devel curses ncurses-devel bison  gcc-c++ make pcre pcre-devel curl-devel libaio autoconf automake  pcre* libaio xz-devel telnet net-tools
六、装置 creatrepo 软件 并制作本地源

装置必要工具包:包拷贝实现之后须要构建 yum 应用的数据库,以 xml 文件模式存在,该数据库会对所有包进行分类建设索引,不便 yum 程序疾速搜寻安装包和查看包之间的依赖关系。但创立数据库要用到一个工具包 createrepo-0.x.x-xx.el6.noarch.rpm,默认是没有的,先要对它进行装置。

  • 阐明:createrepo 是一个对 rpm 文件进行索引建设的工具。大体性能就是对指定目录下的 rpm 文件进行检索,把每个 rpm 文件的信息存储到指定的索引文件中,这样不便近程 yum 命令在装置更新时进行检索

    [root@localhost ~]#yum -y install createrepo
    [root@localhost ~]#createrepo /tmp/all
七、压缩打包本地 rpm 文件
[root@localhost ~]# tar -cvf all.tar /tmp/all
[root@localhost ~]# ls
all.tar              

压缩打包后,下载上传到须要操作应用的主机上,解压放到指定的地位

八、批改线上 repo
  • 留神:编辑 yum 仓库指向文件(文件名必须以 .repo 后缀)

    [root@localhost ~]# vi /etc/yum.repos.d/local.repo
    
    [local]
    name=local
    baseurl=file:///home/tmp/all  #这里填写你解压原来打包的文件的门路
    gpgcheck=0

    写在最初

    本地 yum 源仓库的搭建是常常须要用到的,能够在离线的状况下帮忙咱们装置所须要的软件搭建须要的环境。

本篇转载于:https://mp.weixin.qq.com/s/vg…

正文完
 0