searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

天翼云镜像站--yum仓库搭建

2024-10-23 09:47:30
28
0
一、Yum 仓库基本概念
         Yum(Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。它能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。Yum 仓库是一个存储了众多 RPM 软件包以及软件包相关信息(如包名、版本、依赖关系等)的目录结构集合。它可以分为公共仓库和私有仓库。
  • 公共仓库:由软件开发商、Linux 发行版维护者或第三方组织提供,供广大用户免费使用。例如,CentOS 官方的 yum 仓库就包含了大量经过测试和稳定的软件包。
  • 私有仓库:由企业或个人根据自身需求搭建,用于管理内部使用的软件包,可更好地控制软件版本和安全性,满足特定的业务需求。
 
二、常见yum操作指令
  • 软件包安装与升级类:
  • yum install <package1> <package2>...:安装一个或多个软件包。如:yum install wget   安装 wget 工具。
  • yum groupinstall <group-name>:安装软件包组。如:yum groupinstall "Development Tools"  安装开发工具组。
  • yum update:升级系统中所有已安装的软件包到最新版本。
  • yum update <package-name>:升级指定的软件包。
  • yum upgrade:与yum update类似,进行系统软件包的全面升级。
  • 软件包查询类:
  • yum list:列出所有可用的软件包。
  • yum list installed:列出系统中已安装的所有软件包。
  • yum list updates:列出可升级的软件包。
  • yum info <package-name>:显示指定软件包的详细信息。
  • yum provides <command>:查找哪个软件包提供了特定的命令。如:yum provides grep查找提供 grep 命令的软件包。
  • yum search <keyword>:根据关键字查找可用的软件包。
  • 软件包删除与清理类:
  • yum remove <package-name>:删除指定的软件包。
  • yum autoremove:自动删除不再需要的依赖包。
  • yum clean all:清除 Yum 缓存,包括软件包文件、元数据等。
  • 仓库管理类:
  • yum repolist:列出系统中可用的 Yum 仓库。
  • yum repolist all:列出系统中所有的 Yum 仓库,包括启用和禁用的。
  • yum enable <repo-id>:启用指定的 Yum 仓库。
  • yum disable <repo-id>:禁用指定的 Yum 仓库。
  • yum history:查看 Yum 的操作历史记录。
  • yum deplist <package-name>:显示指定软件包的依赖关系列表。
三、搭建 Yum 公共仓库
  1. 安装必要软件
    • 以 CentOS 系统为例,确保系统中安装了httpd(Apache HTTP 服务器)和createrepo工具。可以使用以下命令安装:
 
   sudo yum install httpd createrepo
  1. 准备软件包目录
    • 创建一个目录用于存放软件包,例如/var/www/html/yumrepo。
    • 将需要的 RPM 软件包复制到这个目录中。
  2. 创建仓库元数据
    • 进入软件包目录,执行以下命令创建仓库元数据:
 
   createrepo /var/www/html/yumrepo
  1. 启动 HTTP 服务
    • 启动httpd服务,并设置为开机自启动:
 
   sudo systemctl start httpd
   sudo systemctl enable httpd
  1. 配置客户端
    • 在客户端系统上,编辑/etc/yum.repos.d/目录下的.repo文件,添加如下内容:

四、搭建 Yum 私有仓库
  1. 安装软件
    • 安装docker和docker-compose,以便使用容器化方式搭建私有仓库。安装方法可参考相应的官方文档。
  2. 创建docker-compose.yml文件
    • 在一个合适的目录下创建docker-compose.yml文件,内容如下:
 
   version: '3'
   services:
     registry:
       image: registry:2
       ports:
         - "5000:5000"
       volumes:
         -./data:/var/lib/registry
  1. 启动私有仓库
    • 在该目录下执行以下命令启动私有仓库:
 
   docker-compose up -d
  1. 配置客户端
    • 在客户端系统上,编辑/etc/yum.repos.d/目录下的.repo文件

五、写在最后

问:如果有多个仓库,是否可以设置yum源的优先级设定?

  • 可以设置,但是需要安装插件yum-plugin-priorities。
  • 安装完插件后,只需要在yum源配置文件*.repo里指定优先级即可
  • 比如当你同时有epel仓库,又额外指定了某软件repo仓库,默认epel里的软件版本较低,你可以给自定义的软件仓库添加优先级

问:如果想把从网络源安装的软件包下载到本地方便后续使用,怎么做呢?

  • 只需要开启yum缓存功能即可
  • 通过修改配置文件开启yum缓存功能
0条评论
0 / 1000
达达达
9文章数
0粉丝数
达达达
9 文章 | 0 粉丝
原创

天翼云镜像站--yum仓库搭建

2024-10-23 09:47:30
28
0
一、Yum 仓库基本概念
         Yum(Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器。它能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。Yum 仓库是一个存储了众多 RPM 软件包以及软件包相关信息(如包名、版本、依赖关系等)的目录结构集合。它可以分为公共仓库和私有仓库。
  • 公共仓库:由软件开发商、Linux 发行版维护者或第三方组织提供,供广大用户免费使用。例如,CentOS 官方的 yum 仓库就包含了大量经过测试和稳定的软件包。
  • 私有仓库:由企业或个人根据自身需求搭建,用于管理内部使用的软件包,可更好地控制软件版本和安全性,满足特定的业务需求。
 
二、常见yum操作指令
  • 软件包安装与升级类:
  • yum install <package1> <package2>...:安装一个或多个软件包。如:yum install wget   安装 wget 工具。
  • yum groupinstall <group-name>:安装软件包组。如:yum groupinstall "Development Tools"  安装开发工具组。
  • yum update:升级系统中所有已安装的软件包到最新版本。
  • yum update <package-name>:升级指定的软件包。
  • yum upgrade:与yum update类似,进行系统软件包的全面升级。
  • 软件包查询类:
  • yum list:列出所有可用的软件包。
  • yum list installed:列出系统中已安装的所有软件包。
  • yum list updates:列出可升级的软件包。
  • yum info <package-name>:显示指定软件包的详细信息。
  • yum provides <command>:查找哪个软件包提供了特定的命令。如:yum provides grep查找提供 grep 命令的软件包。
  • yum search <keyword>:根据关键字查找可用的软件包。
  • 软件包删除与清理类:
  • yum remove <package-name>:删除指定的软件包。
  • yum autoremove:自动删除不再需要的依赖包。
  • yum clean all:清除 Yum 缓存,包括软件包文件、元数据等。
  • 仓库管理类:
  • yum repolist:列出系统中可用的 Yum 仓库。
  • yum repolist all:列出系统中所有的 Yum 仓库,包括启用和禁用的。
  • yum enable <repo-id>:启用指定的 Yum 仓库。
  • yum disable <repo-id>:禁用指定的 Yum 仓库。
  • yum history:查看 Yum 的操作历史记录。
  • yum deplist <package-name>:显示指定软件包的依赖关系列表。
三、搭建 Yum 公共仓库
  1. 安装必要软件
    • 以 CentOS 系统为例,确保系统中安装了httpd(Apache HTTP 服务器)和createrepo工具。可以使用以下命令安装:
 
   sudo yum install httpd createrepo
  1. 准备软件包目录
    • 创建一个目录用于存放软件包,例如/var/www/html/yumrepo。
    • 将需要的 RPM 软件包复制到这个目录中。
  2. 创建仓库元数据
    • 进入软件包目录,执行以下命令创建仓库元数据:
 
   createrepo /var/www/html/yumrepo
  1. 启动 HTTP 服务
    • 启动httpd服务,并设置为开机自启动:
 
   sudo systemctl start httpd
   sudo systemctl enable httpd
  1. 配置客户端
    • 在客户端系统上,编辑/etc/yum.repos.d/目录下的.repo文件,添加如下内容:

四、搭建 Yum 私有仓库
  1. 安装软件
    • 安装docker和docker-compose,以便使用容器化方式搭建私有仓库。安装方法可参考相应的官方文档。
  2. 创建docker-compose.yml文件
    • 在一个合适的目录下创建docker-compose.yml文件,内容如下:
 
   version: '3'
   services:
     registry:
       image: registry:2
       ports:
         - "5000:5000"
       volumes:
         -./data:/var/lib/registry
  1. 启动私有仓库
    • 在该目录下执行以下命令启动私有仓库:
 
   docker-compose up -d
  1. 配置客户端
    • 在客户端系统上,编辑/etc/yum.repos.d/目录下的.repo文件

五、写在最后

问:如果有多个仓库,是否可以设置yum源的优先级设定?

  • 可以设置,但是需要安装插件yum-plugin-priorities。
  • 安装完插件后,只需要在yum源配置文件*.repo里指定优先级即可
  • 比如当你同时有epel仓库,又额外指定了某软件repo仓库,默认epel里的软件版本较低,你可以给自定义的软件仓库添加优先级

问:如果想把从网络源安装的软件包下载到本地方便后续使用,怎么做呢?

  • 只需要开启yum缓存功能即可
  • 通过修改配置文件开启yum缓存功能
文章来自个人专栏
zjd的日常
9 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0