什么是yum源?如何对其进行配置?

news2024/10/5 12:52:50

哈喽,大家好呀!这里是码农后端。今天来聊一聊Linux下的yum源及其配置相关的内容。简单来说,yum源就相当于一个管理软件的工具,可以想象成一个很大的仓库,里面存放着各种我们所需要的软件包及其依赖。

e60f9d4d3f4d5c08422bbc7df22d80a1.jpeg

一、Linux下软件包的管理

1、软件安装方式

1)RPM包管理

需要单独解决依赖问题。

2)YUM包管理

需要有网络及YUM仓库的支持,会自动联网下载软件,自动解决依赖

3)源码安装

安装过程较复杂,但定制性很强。

2、源码安装的配置过程

在Linux系统中,源码安装一共分为三步(三步走):

1)配置过程(配置软件的安装路径)

2)编译过程(把软件由源代码编译成可以安装的程序)

3)安装过程(把编译后的程序进行安装)

# 配置 && 编译 && 安装
./configure && make && make install

3、源码安装配置过程详解

配置过程体现了较强的定制型,而非编译安装

# 进入软件源码包
cd 软件源码包
# 配置
# ./configure [选项]
# 查看选项帮助
./configure --help
# 最常用的选项
--prefix=... Directories to put files in /usr/local 软件家目录
# 其他
--bindir=... $prefix/bin    命令的目录
--etcdir=... $prefix/etc    配置文件的目录 httpd => /etc/httpd/httpd.conf
--mandir=... $prefix/share/man man  文档路径
--locale=... $prefix/share/locale   语言编码
...

4、编译过程详解

make

在Linux操作系统中,make主要功能就是将其他语言的源代码打包成Linux可以识别安装的程序。编译过程需要一个gcc或gcc++软件(开发工具)的支持!

5、安装过程

make install

6、源码安装软件的卸载

# 第一步:进入到源码的安装包中(以axel-2.4为例)
cd axel-2.4
# 删除软件的安装包等程序
make uninstall  
# 卸载编译与配置过程 
make distclean    
# 第二步:删除软件的目录(举例目录为 /opt/axel)
rm -rf /opt/axel

二、YUM源概述

1、yum源作用

作用:软件包管理器,类似360的软件管家。

de2d9ab80dd81c0c2d8a458a0fea43b6.jpeg

2、yum源优点

三种软件安装方式回顾:

1)RPM安装(下载软件、单独安装、需要解决依赖关系)

2)源码安装(下载软件的源码包,解压,进入目录=>配置+编译+安装)

3)yum源:可以理解为rpm软件包管理的升级版

优点:能够解决软件包之间的依赖关系,提高运维人员的工作效率。

注:yum源底层还是基于RPM进行软件安装操作的,所以yum安装软件后,也可以通过 rpm -qa |grep 软件名称  来查询软件包是否已安装。

3、yum源分类

3.1 本地yum源

yum仓库在本地(系统光盘/镜像文件) =>  不需要网络的支持

3.2 网络yum源

yum仓库不在本地,在远程。

1)国内较知名的网络源(aliyun源,163源,腾讯源,知名大学开源镜像等)

阿里源:https://opsx.alibaba.com/mirror

网易源:http://mirrors.163.com/

腾讯源:https://mirrors.cloud.tencent.com/

清华源:https://mirrors.tuna.tsinghua.edu.cn/

2)国外较知名的网络源(centos源、redhat源等)

3)特定软件相关的网络源(Nginx、MySQL、Zabbix等)

4、本机yum源备份(重要)

第一步:使用cd命令切换到/etc/yum.repos.d目录

cd /etc/yum.repos.d/

第二步:对所有的仓库文件(以.repo结尾)进行备份

tar -zcf repo.tar.gz *.repo

第三步:删除所有的以.repo结尾的仓库文件

rm -rf *.repo

ea42ed70bec785f35ed8c50227a7f3ec.png

三、本地YUM源配置

1、本地YUM配置

1)方式1:使用光盘镜像作为YUM源仓库

2)方式2:下载很多软件,使用软件包作为YUM源仓库

2、使用光盘镜像作为YUM源仓库

第一步:在VMware系统中装载CentOS7.6系统的光盘镜像

90940cf0b84a080609303b2df49c74a4.png

第二步:把光盘挂载到某个目录下

# 回到家目录
cd ~
# 清空 mnt目录
rm -rf /mnt/*
# 以只读的方式将光驱挂载到 mnt目录上
mount -o ro /dev/sr0 /mnt
# 挂载完成后,使用 lsblk列出块设备的信息(这里查询挂载点的信息)
lsblk

# 选项说明:
-o :挂载方式,ro(readonly) =>代表以只读的方式进行挂载
              rw(read/write)=>代表以读写的方式进行挂载

b9fdb0e7c8e5a90662c6ec713312d41b.png

卸载或解挂可以使用 umount /mnt

第三步:把光盘挂载添加到开机启动文件中

# 7版本中,需要先给文件增加一个可执行权限
chmod +x /etc/rc.local
# 把挂载命令追加到开机启动文件中
echo 'mount -o ro /dev/sr0 /mnt' >> /etc/rc.local

注:/etc/rc.local,属于系统的开机启动文件。系统启动后,会自动加载并执行该文件

第四步:编写本地YUM仓库文件

# 进入默认目录
cd /etc/yum.repos.d/
# 创建一个以*.repo结尾的文件,名称任意
vim local.repo

[local]
name=local yum
baseurl=file:///mnt
gpgcheck=0
enabled=1

注:file://本地协议路径,后面跟仓库的具体路径

配置完成后,运行以下命令让其生效:

# 清除所有缓存
yum clean all
# 重新给本地仓库建立缓存
yum makecache
# 列出所有仓库信息
yum repolist all

重点:yum仓库的标准格式:

1)[仓库标识名称],名称任意,在一个文件中可以拥有多个标识

2)name=仓库名称 

3)baseurl=仓库的路径,支持多种格式,file://本地路径,ftp://,http:// 或 https:// 

4)gpgcheck=gpg密钥,值可以是0(代表不检测),1(代表检测,如果是1,下方还要定义一个gpgkey=密钥连接) 

5)enabled=是否启动当前仓库,值可以0,也可以是1(默认为1,代表启动仓库)

第五步:测试本地YUM仓库是否可用

yum install httpd -y

3、man 5扩展

背景:在Linux系统中,给定一个配置文件,如何查询这个文件中每一个选项的作用?

# 以前我们使用的是 man命令
man 命令

扩展:man 5 配置文件名称

man 5 yum.conf

四、网络YUM源配置

1、网络YUM源的分类

1)使用比较知名平台的YUM源(阿里云、腾讯、清华)

2)有些特定软件(如Nginx、MySQL、Zabbix等)需要根据官网文档自定义网络YUM源

2、知名平台的YUM源

阿里源:https://opsx.alibaba.com/mirror

腾讯源:https://mirrors.cloud.tencent.com/

网易源:http://mirrors.163.com/

清华源:https://mirrors.tuna.tsinghua.edu.cn/

百度搜索 => 腾讯源 mirror镜像源

举例:使用腾讯mirror镜像源

1)备份系统旧配置文件

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

2)获取对应版本的CentOS-Base.repo 到/etc/yum.repos.d/目录

以CentOS7为例:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo

3)更新缓存

yum clean all
yum makecache

3、扩展:EPEL源配置

什么是EPEL源?

EPEL是对官网源的一个扩展。

CentOS-Base.repo文件 => 基础源(官方自带的YUM源)

epel.repo文件 => 扩展源,是对官方YUM源的一个补充

yum install epel-release -y

eg:会跑的小火车就是在epel源中

yum install sl -y
sl

d010f47b3fed65ed2e229eaf5f092997.jpeg

4、特定软件的YUM源配置

如特殊的几个软件,Nginx、MySQL、Zabbix

Nginx:http://www.nginx.org

MySQL:https://www.mysql.com/ 

Zabbix:https://www.zabbix.com/

以安装nginx为例:

1)找到官方文档,配置YUM源,写入到以下文件中(repo文件)

# 切换到默认yum目录
cd /etc/yum.repos.d
# 新建并编辑配置文件(名称任意)
vim nginx.repo

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

2)清理缓存:

yum clean all
yum makecache

3)安装Nginx:

yum install nginx -y

五、自建YUM源仓库

1、缓存安装软件包

什么时候需要缓存软件?

  1. 下次还需要安装相同版本的软件包

  2. 由于网络原因导致网络安装非常慢,将软件包缓存下来,配置本地仓库

2、如何缓存软件安装包

# 打开配置文件
vim /etc/yum.conf

04230f951b86c1b670d5ab6abc4b0f0d.png

3、把软件及依赖软件全部下载到某个路径

1)只下载不安装:

yum install --downloadonly --downloaddir=保存路径 软件名称

eg:下载samba软件及依赖软件

# 创建一个文件夹用于保存文件
mkdir /soft
# 下载samba及依赖软件
yum install --downloadonly --downloaddir=/soft samba

4、自定义YUM仓库

第一步:在系统中安装制作仓库的软件createrepo

yum install createrepo -y

第二步:把/soft文件夹做成一个本地的自建仓库

createrepo /soft

第三步:在/etc/yum.repos.d目录中创建一个soft.repo的仓库

cd /etc/yum.repos.d/

vim soft.repo
[soft]
name=soft yum
baseurl=file:///soft
gpgcheck=0
enabled=1

第四步:清理缓存+重建缓存

yum clean all
yum makecache

好了,以上就是今天这篇文章的全部内容了。如果你想及时看到我的文章,只需做这几个动作:点星标、点在看(包括赞)、评论、分享,我就会经常出现在您的常读列表,后面更新都会提醒。感谢大家的关注和支持,祝大家生活美满,学业有成,事业蒸蒸日上!

往期精彩文章推荐(点击下方蓝字即可阅读!)

往期推荐

Linux有哪些常用的高级扩展命令?

腾讯元宝,它来了!!

2分钟带你快速了解与网络相关的硬件有哪些?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1891033.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL:保护数据库

保护数据库 1. 用户1.1 创建用户1.2 查看用户1.3 删除用户1.4 修改密码 2. 权限2.1 授予权限2.2 查看权限2.3 撤销权限 之前都是介绍本地数据库而你自己就是数据库的唯一用户,所以不必考虑安全问题。但实际业务中数据库大多放在服务器里,你必须妥善处理好…

git提交实战

以新项目为例,如何在新项目新分支提交代码。 1.查看文件所在位置 git init 2.克隆项目到本地并完成身份配置 3.将需要新增的文件放到指定目录路径下 4.进入新克隆的文件 cd XXX 5.切换分支 git checkout XXX 6.标红者即为新提交的文件 git status 7.加入 git …

研发驱动 再谱新篇丨美格智能南通研发中心正式成立

近日,美格智能全资设立的众格智能技术(南通)有限公司,正式在江苏省南通市紫琅科技城揭牌成立,此举也标志着继上海、西安、深圳之后,美格智能研发力量布局再谱新篇:美格智能南通研发中心正式成立…

液压传动知识

绪论 工作原理 依靠运动者的液体的压力能传递动力液体在受调节、控制状态下工作,液压传动和控制同等重要液压传动以液体为工作介质 液压系统组成 动力元件:机械能转换为液体压力能。液压泵控制元件:对液体流动方向、压力、流量进行控制或…

Flask框架下图像的base64编码接收和解码流程

一、Flask简介 Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。它可以很好地结合MVC模式进行开发,开发人员分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或We…

39. 自由空间光通信中光学天线的设计

设计要求如下: 设计一接收光学天线,满足以下技术要求: 焦距:f60mm,D/f1/1.2,视场角2w0.1,激光波长:λ0.850μm,激光漂移波长:0.848~0.852μm。 光学特性特…

基于物品的协同过滤算法

预估用过户对候选物品的兴趣 计算物品相似度 召回通道 快速做召回条件

Empire Lupin One

信息收集: nmap存活: nmap端口: nmap服务: nmap漏扫: 访问 robots.txt 文件发现目录: 源码: web: 源码并没有藏东西, 用wfuzz发现新页面: icex64 在创建ss…

redis主从复制哨兵模式集群管理

主从复制: 主从复制是高可用Redis的基础,哨兵和集群都是在主从复制基础上实现高可用的。主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷:故障恢复无法自动化;写操作无法负载均衡&…

ROS学习笔记(18):建图与定位(2)

0.前言 上文提到现在的我们已经进入到了SLAM领域的学习,会涉及到大量专业知识,作为一个自学的大三(好吧也快大四了)萌新并不能保证每次文章的专业性和准确性,所以,本人推荐大家能自己去查阅一些相关书籍和…

2024护网整体工作预案示例

目录 第1章 HW整体工作工作部署 1.1 工作组织架构 1.2 各部门工作职责 1.3 演练期间工作机制 1.3.1 工作汇报机制 1.3.2 应急响应机制 第2章 系统资产梳理整改 2.1 敏感信息梳理整改 2.2 互联网资产发现 2.3 第三方供应商梳理 2.4 业务连接单位梳理 第3…

医疗器械FDA | 医疗器械软件如何做源代码审计?

医疗器械网络安全测试https://link.zhihu.com/?targethttps%3A//www.wanyun.cn/Support%3Fshare%3D24315_ea8a0e47-b38d-4cd6-8ed1-9e7711a8ad5e 医疗器械源代码审计是一个确保医疗器械软件安全性和可靠性的重要过程。以下是医疗器械源代码审计的主要步骤和要点,以…

keil5 Cannot reset target Shutting down debug session 报错解决办法

1.现象 使用GD32下载代码时,突然出现Cannot reset target Shutting down debug session的提示。如下图: 以及: 以前使用GD32都没遇到过这种问题,看了很多其他人的解决办法也不好使,换了stm32的板子去下载又没有这种问…

jdk17卸载后换jdk1.8遇到的问题

过程: 1、找到jdk17所在文件夹,将文件夹进行删除。(问题就源于此,因为没删干净) 2、正常下载jdk1.8,按照网上步骤配置环境变量,这里我参考的文章是: http://t.csdnimg.cn/Svblk …

揭秘:学校教室采用数码管同步时钟的原因-讯鹏电子钟

在学校的教室里,我们常常会看到数码管同步时钟的身影。究竟是什么原因让它成为学校教室的宠儿呢?让我们一同来探究其中的奥秘。 数码管同步时钟具有极高的准确性。对于学校这样一个对时间管理要求严格的场所,准确的时间是保障教学秩序的基石。…

英国皇家物理学会(IOP)数据库简介及个人获取IOP文献的方法

一、英国皇家物理学会(IOP)简介 英国皇家物理学会(IOP)成立于1873年,IOP现有科技期刊75种,具有较高的科研水平,还与多个世界知名的学协会合作出版,包括:中国物理学会、欧洲物理学会、德国物理学会、日本应用物理学会、欧洲光学学会、国际计量…

[数据结构] --- 树

1 树的基本概念 1.1 树的定义 树是n(n>0)个结点的有限集。当 n 0 时,称为空树。在任意一棵树非空树中应满足: (1) 有且仅有一个特定的称为根 (root) 的结点; (2) 当 n > 1 时,其余结点可分为m(m>0)个互不相交的有限集…

未来已来:揭秘20篇自动驾驶顶会顶刊,开启智能交通新纪元!

【自动驾驶】是近年来在深度学习领域中备受关注的一项技术,它通过整合传感器数据、计算机视觉和机器学习算法,实现车辆的自主导航和决策。自动驾驶技术已经在路径规划、环境感知和车辆控制等多个领域取得了显著成果,其独特的方法和有效的表现…

笛卡尔乘积算法js实现

全因子实验设计( DOE) :指所有因子的所有水平的所有组合都至少进行一次实验,可以估计所有的主效应和所有的各阶交互效应。 笛卡尔乘积:指在数学中,两个集合X和Y的笛卡尔积(Cartesian product),…

如何在TechNow招聘顶尖AI工程师

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…