当前位置: 首页 > news >正文

Linux 配置YUM源(FTP方式获取软件源、使用阿里云yum源、同时使用本地源与在线源)YUM获取安装包并生成YUM软件仓库

YUM介绍

YUM(yellow dog updater modified)

基于RPM包构建的软件更新机制

自动解决依赖关系

yum软件仓库集中管理软件包

RPM软件包的来源

  • centos发布的RPM包集合
  • 第三方组织发布的RPM包集合
  • 用户自定义的RPM包集合

软件仓库的提供方式

  • FTP服务:baseurl=ftp://......
  • HTTP服务:baseurl=http://.......
  • 本地目录:baseurl= file://....... 

YUM源配置

 FTP方式获取软件源(配置yum源)

本地目录配置yum源在之前的博客中已经演示

        这里展示一下FTP配置方式

安装ftp服务

yum install vsftpd
systemctl start vsftpd

在ftp目录中创建centos7文件夹,用于存放从系统光盘印象中复制的软件包文件

cd /var/ftp
mkdir centos7mount /dev/sr0 /mnt #挂载系统光盘
ls /mnt #查看光盘文件
#软件包就位于Packages文件夹中 repodata为yum仓库索引表(依赖关系等)
#并且存在GPGkey[RPM-GPG-KEY-CentOS-7]可供调用
cp -r /mnt/* centos7 #拷贝光盘文件到cd /var/ftp/centos7

文件目录结构:

创建/etc/yum.repos.d/ftp.repo yum库文件

cd /etc/yum.repos.d
mkdir bak
mv *.repo bakvim ftp.repo[ftp]name=ftpbaseurl=ftp://192.168.80.101/centos7    #ftp服务默认路径从/var/ftp开始 绝对路径相应为/var/ftp/centos7enabled=1gpgcheck=1 #开不开gpg检查都可以 此处开启 下面跟上gpykey位置gpgkey=ftp://192.168.80.101/centos7/RPM-GPG-KEY-CentOS-7yum clean all && yum makecache

 此时可将本yum配置文件传递给其他主机使用

scp ftp.repo 192.168.80.102:`pwd`
yum clean all && yum makecache

若出现,关闭防火墙记得systemctl stop firewalld

  

直接使用阿里云的yum配置文件从阿里云获取yum软件仓库(将yum替换为国内源)

wget -O /etc/yum.repo.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/CentOS-7.repo
#或者
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
​
yum clean all && yum makecache

同时使用本地源与网络源

使用本地源速度更快,而使用网络源版本更新。可以通过安装yum-plugin-priorities插件同时使用本地源与网络源,文体两开花

安装yum-plugin-priorities插件

yum install -y yum-plugin-priorities.noarch

编辑ftp.repo配置文件添加优先级

yum install -y epel-release 
#安装在线源扩展包 等会测试用的nginx需要用扩展源才能下载
#生成/etc/yum.repos.d/epel.repo​​​​​​​vim /etc/yum.repos.d/ftp.repopriority=1 #✨添加优先级 越小越优先
#从/etc/yum.repos.d/epel.repo扩展源拷贝配置,添加在下方[epel]name=Extra Packages for Enterprise Linux 7 - $basearch# It is much more secure to use the metalink, but if you wish to use a local mirror# place its address here.#baseurl=http://download.example/pub/epel/7/$basearchmetalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch&infra=$infra&content=$contentdirfailovermethod=priorityenabled=1gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7priority=2  #✨添加优先级

将无关的配置移除以便测试

mv *.repo bak
mv bak/ftp.repo . 
#将所有repo文件除了刚刚设置的ftp.repo都移入bak文件夹,以免生效
[root@xue yum.repos.d]# ls
bak  ftp.repo    #文件夹结构应该是这样

  开启插件(默认已经启动)

vim /etc/yum/pluginconf.d/priorities.conf[main]enabled = 1  #默认已经启动

测试

yum install -y httpd #本地源有的,使用本地源
yum install -y nginx #本地源没有,使用在线源


通过yum获取软件安装包,并且创建依赖关系表以生成软件仓库

1 通过安装完后查找缓存获取软件安装包

 yum缓存位置

yum clean all清除的缓存正是这里

cd /var/cache/yum/x86_64/7/

修改yum配置文件,修改缓存设置

若要安装完软件缓存不被清空,修改keepcache=1 

vim /etc/yum.confcachedir=/var/cache/yum/$basearch/$releasever #缓存位置keepcache=1  #保存缓存

安装mariadb数据库并查找缓存中安装包

yum install -y mariadb mariadb-server #安装
find /var/cache/yum/x86_64/7/ -name "*.rpm" #查找缓存中安装包cd /var/cache/yum/x86_64/7/
mkdir pkgs                    #将找到的安装包全部移动到pkgs文件夹中方便查看
find /var/cache/yum/x86_64/7/ -name "*.rpm" -exec cp {} pkgs/ \;

  

2 通过yum命令获取软件安装包

使用yum install -y --downloadonly

cd /optmkdir pkg
yum install -y --downloadonly tomcat --downloaddir=/opt/pkg
#yum仅下载tomcat安装包 不安装 下载到/opt/pkgls pkg #查看

使用yumdownloader

cd /optmkdir package
yumdownloader --destdir=/opt/package httpd --resolve
# --resolve 同时下载依赖包ls package#查看

  

 

createrepo 创建依赖关系表以生成软件仓库

将刚刚下载的多个安装包执行createrepo目录,会生成依赖关系表。这时软件包文件夹才能作为yum仓库使用。

createrepo ./pkg #刚刚下载软件包的目录
ls pkg #查看 会生成一个repodata依赖关系表

 

相关文章:

Linux 配置YUM源(FTP方式获取软件源、使用阿里云yum源、同时使用本地源与在线源)YUM获取安装包并生成YUM软件仓库

YUM介绍 YUM(yellow dog updater modified) 基于RPM包构建的软件更新机制 自动解决依赖关系 yum软件仓库集中管理软件包 RPM软件包的来源 centos发布的RPM包集合第三方组织发布的RPM包集合用户自定义的RPM包集合 软件仓库的提供方式 FTP服务:…...

Java版工程行业管理系统源码-专业的工程管理软件-提供一站式服务

Java版工程项目管理系统 Spring CloudSpring BootMybatisVueElementUI前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个)项目显示…...

养老保障金查询系统【GUI/Swing+MySQL】(Java课设)

系统类型 Swing窗口类型Mysql数据库存储数据 使用范围 适合作为Java课设!!! 部署环境 jdk1.8Mysql8.0Idea或eclipsejdbc 运行效果 本系统源码地址:https://download.csdn.net/download/qq_50954361/87700421 更多系统资源库…...

国考省考行测:词句理解,词的对象指代,就近原则,主语一致法,语意语境分析上下文找出指代含义

国考省考行测:词句理解,词的对象指代,就近原则,主语一致法,语意语境分析上下文找出指代含义 2022找工作是学历、能力和运气的超强结合体! 公务员特招重点就是专业技能,附带行测和申论,而常规国…...

部署YUM仓库

部署YUM仓库 YUM概述软件仓库的提供方式RPM软件包的来源FTP源的配置方法本地源配置方法在线源配置方法本地源和在线源一起使用的方法数据包缓存方法 自己配置本地yum源时需要使用createrepo来生成依赖关系库 YUM概述 YUM(Yellow dog Updater Modified) 基于RPM包构建的软件更…...

SpringBoot框架(邮件发送Mail|持久层框架JPA|Extra前后端分离跨域处理|接口管理Swagger)这一篇就够了(超详细)

🙈作者简介:练习时长两年半的Java up主 🙉个人主页:老茶icon 🙊 ps:点赞👍是免费的,却可以让写博客的作者开兴好久好久😎 📚系列专栏:Java全栈,计…...

chatGPT对话R语言

文章目录 R语言介绍R语言基本语法R语言常用函数有哪些R语言数据结构向量矩阵数组和列表数组列表 数据框因子 R如何导入数据如何在R语言中导出数据?R语言图形绘制描述性统计描述统计也可以这样来计算 统计推断配对设计t检验样本均数和总体均数t检验两(独立…...

代码随想录--字符串--替换空格题型

①这道题可以直接申请一个临时数组,然后遍历字符串,是空格则加入20%,最后再把临时数组转化为字符串。 怎么把一个数组转化为字符串? 如数组arry[], string newstr new string(arry,0,arry.size()-1); return newstr; 而且临时数…...

Spring JDBC和事务控制

目录 Spring JDBC 和 事务控制主要内容Spring 整合 JDBC 环境构建项目添加依赖坐标添加 jdbc 配置文件编写 spring 配置文件配置数据源C3P0 数据源配置DBCP 数据源配置 模板类配置Spring JDBC 测试 (入门)创建指定数据库创建数据表使用 JUnit 测试JUnit …...

【音视频第16天】详解STUN协议

一个webRTC传输协议搞得自己云里雾里的。现在主动攻克一下。先看看STUN协议。好,我们开始吧 目录 1.讲讲什么是NAT?2.NAT有啥问题?3.四种NAT类型4.STUN Server5.TURN ServerSTUN和TURN的实现:什么是STUN?为什么需要ST…...

C++算法初级11——01背包问题(动态规划2)

C算法初级11——01背包问题(动态规划2) 文章目录 C算法初级11——01背包问题(动态规划2)问题引入0-1背包问题分析0-1背包问题的形式化分析优化 问题引入 辰辰采药 辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大…...

Python 库大全(下)

格式化输出 模块 reprlib 提供了一份定制的 repr(),用于简洁 地展示各种大的或者多层嵌套的容器变量: >>> import reprlib >>> reprlib.repr(set(\supercalifragilisticexpialidocious\)) "{\a\, \c\, \d\, \e\, \f\, \g\, ...…...

如何用链表实现LRU缓存淘汰算法

链表学习 一、 缓存1.1缓存介绍1.2 缓存策略 二、链表结构2.1 单链表2.2 循环链表2.3 双向链表2.4 双向循环链表2.5 链表与数组性能对比 三、如何基于链表实现LRU缓存淘汰算法 一、 缓存 1.1缓存介绍 缓存是一种提高数据读取性能的技术,在硬件设计、软件开发中都有…...

【01】数据结构与算法基础-数据、数据元素、数据项和数据对象 | 数据类型和抽象数据类型 | 抽象数据类型的表示和C++实现

目录) 0.数据结构的研究内容1.数据、数据元素、数据项和数据对象1.1数据1.2数据元素(Data element)和数据项1.3数据项1.4数据对象1.5数据结构(Data Structure)1.6逻辑结构的种类1.7存储结构的种类2.数据类型和抽象数据类型2.1数据类型(Data Type)2.2抽象数据类型(Abstract …...

PHP匿名类的使用场景有哪些?PHP匿名类怎么用?有什么好处?PHP匿名类如何在运行时动态生成?

以下是一些使用匿名类的场景: 2. 简单的工厂模式:当需要在运行时动态创建一些简单的对象时,可以使用匿名类替代创建不必要的类定义和文件。 function createGreeter($name) {return new class($name) {private $name;public function __cons…...

【并发基础】一篇文章带你彻底搞懂Java线程中断的底层原理——interrupt()、interrupted()、isInterrupted()

目录 〇、Java线程中断与阻塞的区别 0.1 线程中断 0.2 线程阻塞 一、线程的中断 二、中断方法 2.1 void interrupt() 2.1.1 可中断的阻塞 2.1.2 不可中断的阻塞 2.1.3 实践案例 2.2 boolean isInterrupted() 2.3 boolean interrupted() 2.4 代码案例 三、源码分析…...

【c语言】函数的数据传递原理 | 数组传入函数方法

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; 给大家跳段街舞感谢支持&#xff01;ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ…...

vue3源码(3)——computed

Vue3中的computed底层源码主要是通过使用Proxy对象来实现的。下面是对Vue3中computed底层源码的详细解读&#xff1a; 在Vue3中&#xff0c;computed的实现是通过使用createComputed函数来创建的。createComputed函数接收两个参数&#xff1a;getter和setter。 在createComput…...

数学建模第七天:数学建模算法篇之插值及MATLAB实现

目录 一、前言 1、引例 2、拟合定义 3、拟合与插值的关系 二、拟合 1、线性最小二乘法求解 ①思路 ②解法 2、MATLAB对线性最小二乘拟合的实现 ①函数说明 ②求解例题 3、MATLAB实现非线性曲线拟合 ①lsqcurvefit函数 ②代码求解 4、MATLAB实现非线性最小二乘拟…...

RUST 每日一省:生命周期作用域

生命周期 一个变量的生命周期就是它从创建到销毁的整个过程。 作用域 我们声明的每个变量都有作用域。作用域其实是变量和值存在的环境。作用域是由一对花括号表示的。例如&#xff0c;使用块表达式会创建一个作用域&#xff0c;即任何以花括号开头和结尾的表达式。此…...

FastAPI 2.0 + LLM流式输出全栈方案,含OpenAI兼容层、前端SSE重连策略、服务端背压控制(仅限内部技术白皮书级实录)

第一章&#xff1a;FastAPI 2.0 异步 AI 流式响应教程概览FastAPI 2.0 原生强化了对异步流式响应&#xff08;StreamingResponse&#xff09;的支持&#xff0c;为构建低延迟、高吞吐的 AI 接口&#xff08;如大语言模型推理、语音合成、实时图像生成&#xff09;提供了坚实基础…...

【Java外部函数性能优化黄金法则】:20年JVM专家亲授JNI/FFM调优的7大致命误区与3步极速修复方案

第一章&#xff1a;Java外部函数优化的演进脉络与性能本质Java平台对外部函数调用&#xff08;Foreign Function & Memory API&#xff0c;即JEP 454/464/471/472&#xff09;的演进&#xff0c;标志着JVM从“纯Java世界”迈向系统级互操作的新纪元。其性能本质并非单纯降低…...

Windows ISO制作与补丁集成自动化工具实战指南:从手动操作到批量部署的效率革命

Windows ISO制作与补丁集成自动化工具实战指南&#xff1a;从手动操作到批量部署的效率革命 【免费下载链接】Win_ISO_Patching_Scripts Win_ISO_Patching_Scripts 项目地址: https://gitcode.com/gh_mirrors/wi/Win_ISO_Patching_Scripts 在数字化时代&#xff0c;系统…...

Excel 根据A列标签拆分为多个列数据

举例&#xff1a;如下图所示将AB列内容拆分为红色框内的格式方便绘制图表Sub SplitCategoriesToColumns()Dim ws As WorksheetDim lastRow As LongDim startRow As LongDim dict As ObjectDim keyOrder As New CollectionDim i As Long, j As LongDim key As VariantDim val As…...

Phi-4-mini-reasoning Chainlit协作功能:多人审阅、批注与推理结果共享

Phi-4-mini-reasoning Chainlit协作功能&#xff1a;多人审阅、批注与推理结果共享 1. 模型概述 Phi-4-mini-reasoning是一个基于合成数据构建的轻量级开源模型&#xff0c;专注于高质量、密集推理的数据处理能力。作为Phi-4模型家族的一员&#xff0c;它经过专门微调以提升数…...

无损视频剪辑效率全攻略:5分钟掌握革新性剪辑技术

无损视频剪辑效率全攻略&#xff1a;5分钟掌握革新性剪辑技术 【免费下载链接】lossless-cut The swiss army knife of lossless video/audio editing 项目地址: https://gitcode.com/gh_mirrors/lo/lossless-cut 你是否曾因视频剪辑软件的漫长渲染过程而错失发布良机&a…...

思源宋体TTF:开源字体选型与商业价值指南

思源宋体TTF&#xff1a;开源字体选型与商业价值指南 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 你是否曾为商业项目的字体授权成本而困扰&#xff1f;是否在寻找既能满足专业设计…...

renren-fast-vue系统配置中心使用指南:灵活配置与动态切换

renren-fast-vue系统配置中心使用指南&#xff1a;灵活配置与动态切换 【免费下载链接】renren-fast-vue renren-fast-vue基于vue、element-ui构建开发&#xff0c;实现renren-fast后台管理前端功能&#xff0c;提供一套更优的前端解决方案。 项目地址: https://gitcode.com/…...

Peroxidase-conjugated AffiniPure Goat Anti-Human IgG:高酶活,低背景,精准定量人源抗体

在现代生命科学研究中&#xff0c;抗体是实现特定分子识别和信号检测的核心工具。其中&#xff0c;二抗作为连接一抗与检测系统的重要桥梁&#xff0c;其特异性和灵敏度直接影响实验结果的准确性与可靠性。Peroxidase-conjugated AffiniPure Goat Anti-Human IgG, Fcγ Fragmen…...

Claude Code 源码泄露深度剖析,Anthropic AI 编程助手的架构全解密

2026年3月31日&#xff0c;整个AI开发圈被一条消息炸开了锅。安全研究员Chaofan Shou&#xff08;推特账号Fried_rice&#xff09;在Anthropic官方发布的npm包中&#xff0c;意外发现了一个暴露的.map文件&#xff0c;正是这个看似不起眼的文件&#xff0c;直接泄露了Claude Co…...