[Linux] yum仓库相关

一、yum仓库

1.1 yum简介

yum 是一种基于 RPM 软件包(Red-Hat Package Manager 的缩写)的软件更新机制,可自动解决软件包之间的依赖关系。这就解决了日常工作中花费大量时间寻找安装包的问题。 为什么会出现依赖 linux 本身就有简化系统的优势,因为在安装操作系统时,你并没有为安装软件编译所有的库和包 在安装操作系统时,会显示软件包依赖关系。 通过存储库和客户端,yum 可以安装在两台机器上,因为 yum 可以存储在两台机器上,即整个 yum 由两部分组成,所以 yum 可以安装在两台机器上。因此,yum 可以存储在两台服务器上。它也可以托管在一台服务器上。它可以由官方服务提供,也可以由第三方(如国内的阿里云或搜狐云)或非营利组织(如学校)提供。官方来源通常是国外的,下载速度肯定有限,手动换成国内云可以大大提高下载速度。

1.2 如何实现安装

首先客户端发送下载软件请求,会根据文件配置找到仓库位置,然后从服务端下载元信息,客户端会根据元信息找到软件的具体位置,最后从服务端下载到客户端。

二、yum配置文件及使用命令

2.1 主配置文件

文件位置:/etc/yum.conf //主配置文件

[main]
cachedir=/var/cache/yum/$basearch/$releasever //yum下载的RPM包的缓存目录 $basearch表示系统架构 $releasever表示系统版本
keepcache=0  //是否保留缓存,0代表不保存1代表保存
debuglevel=2   //调试级别
logfile=/var/log/yum.log  //日志文件位置
exactarch=1  //是否允许不同版本的RPM包安装
obsoletes=1  //是否允许旧版本运行
gpgcheck=1   //验证密钥
plugins=1    //是否允许插件
installonly_limit=5  //允许几个内核
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
          

 2.2 日志文件

文件位置:/var/log/yum.log

2.3 仓库设置文件

位置:/etc/yum.repos.d

2.4 yum命令

命令解释
yum list显示所有可用包,包名支持通配符
yum info显示包的信息
yum search ftp模糊查找,查找包含"ftp"字符的所有安装包
yum provides ftp精确查找,查找这个命令来自哪个包
yum history查看yum的所有操作
yum history undo反悔卸载已经安装的软件(配合序号使用)
yum history redo重新执行安装软件步骤(配合序号使用)
2.4.1 查询
yum list (软件名)

yum search (关键字)

yum info (软件名)

yum provides (关键字)

2.4.2 安装与升级
yum -y install (软件名)

2.4.3 卸载 
yum remove (软件名)  卸载已安装的软件必须加软件名

yum history
yum history redo 5

三、搭建yum仓库

3.1 搭建本地yum仓库

第一步:关闭防火墙 核心防护,挂载光盘 

systemctl stop firewalld
setenforce 0
mount /dev/sr0   /mnt

第二步:切换到主配置文件夹,创建一个备份文件夹,把官方源移动到备份文件夹中

cd /etc/yum.repos.d
mkdir bak
mv *.repo bak

第三步:创建一个本地仓库文件

vim local.repo

 第四步:清理缓存和建立元数据

yum clean all && yum makecache

 3.2 搭建网络源仓库(阿里 华为 腾讯 清华源等)

    和搭建本地源一样的步骤

systemctl stop firewalld
setenforce 0
mount /dev/sr0   /mnt
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim wangluo.repo
yum clean all && yum makecache

3.3 ftp方式搭建云仓库

第一步:服务端安装vstfp服务

服务端
yum -y install vsftpd
systemctl start vstfpd
mkdir kunkun
mount /dev/sr0  /var/ftp/kunkun

第二步:服务端切换到 ftp目录下新建一个kunkun目录  

客户端
systemctl  stop firewalld
setenforce 0
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim ftp.repo
yum clean all && yum makecache

 3.4 http方式搭载云仓库

服务端
systemctl stop firewalld
setenforce 0
yum -y install httpd
systemctl start httpd
mount /dev/sr0 /var/www/html

客户端
systemctl  stop firewalld
setenforce 0
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim http.repo
yum clean all && yum makecache

 

 3.5 自建元信息

mount /dev/sr0 /mnt
mkdir /data
mkdir /data/test
mkdir /data/test/packages
mv /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm  /data/test
cd /data/test
mv /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm  packages
cd ..
createrepo -v test
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
vim tree.repo
yum clean all
yum makecache
yum install tree -y

卸载之前安装的软件 

 重新安装

3.6 升级内核

yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm
//生成仓库文件
//内核库默认关闭打开就可以了
yum repolist all
vim elrepo.repo
yum list *kernel*
yum install kernel-lt.x86_64 -y

 

重启就可以选择内核

 

 3.7 离线安装软件

思路:先在一台可以联网的主机下载软件依赖包放在指定目录,打包,在无网环境想要安装只需解包安装相应的包即可

mkdir /data
yum install nginx --downloadonly --downloaddir=/data/
--downloadonly  #只下载相关包默认至某一目录
--downloaddir=绝对目录路径  #下载到某一目录  
cd /data
ls
cd /etc/yum.repos.d
mkdir bak
mv *.repo bak
cd /data
yum -y install nginx(安装肯定失败,根据提示安装对应依赖包再尝试)

 

 

去创建的目录查看不是最小化安装会少包,我这里就是) 

安装直接用yum装就行 

总结:

1. 学会部署yum仓库的方式,可以进行不同场景的运用

2. 本地yum源和在线源可以安装在同一个repo文件中,设置好优先级,就可以正常使用

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言之break continue详解

C语言之break continue 文章目录 C语言之break continue1. break 和 continue2. while语句中的break和continue2.1break和continue举例 3. for语句中的break和continue3.1break和continue举例 1. break 和 continue 循环中break和continue 在循环语句中,如果我达到…

为什么要写测试用例,测试用例写给谁看?

“为什么要编写测试用例,测试用例写给谁看”,这个问题看似简单,但却涵盖了一系列复杂的考虑因素,并不太好回答。 为了向各位学测试的同学们解释清楚“为什么编写测试用例是至关重要的”,我将通过以下3个方面进行展开&…

修改YOLOv5的模型结构第二弹

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 | 接辅导、项目定制🚀 文章来源:K同学的学习圈子 上节说到了通过修改YOLOv5的common.py来修改模型的结构,修改的是模块的内…

【图解算法】- 异位词问题:双指针+哈希表

一 - 前言 介绍:大家好啊,我是hitzaki辰。 社区:(完全免费、欢迎加入)日常打卡、学习交流、资源共享的知识星球。 自媒体:我会在b站/抖音更新视频讲解 或 一些纯技术外的分享,账号同名&#xff…

代码随想录算法训练营第23天|669. 修剪二叉搜索树 108.将有序数组转换为二叉搜索树 538.把二叉搜索树转换为累加树

JAVA代码编写 669. 修剪二叉搜索树 给你二叉搜索树的根节点 root ,同时给定最小边界low 和最大边界 high。通过修剪二叉搜索树,使得所有节点的值在[low, high]中。修剪树 不应该 改变保留在树中的元素的相对结构 (即,如果没有被移除&#x…

企业是否需要单独一套设备管理系统?

在现代企业中,设备管理是一个至关重要的环节。随着科技的不断进步和信息化的发展,企业对设备管理的要求也越来越高。为了提高设备管理的效率和准确性,许多企业开始考虑是否需要单独一套设备管理系统。本文将从设备管理系统的介绍、和其他系统…

腾讯云服务器怎么买便宜?腾讯云服务器优惠链接

现在,让我们一起探索如何在腾讯云服务器上购买便宜的云服务器吧! 首先,我们来看看都有哪些便宜的腾讯云服务器值得我们入手吧! 首先是轻量2核2G3M服务器,只需要一年88元就能轻松拥有,对于刚开始接触云服务…

linux查看pcie速率

先通过lspci命令查找pcie对应设备编号,如下图中为01:00.0 再通过以下命令查找上一步编号对应设备带宽信息,如下图中为8GT/s lspci -n -s 01:00.0 -vvv | grep --color Width

简单解决网页的验证码

翻到一个网站,展开需要验证码,而验证码需要关注微信公众号,懒得弄,所以有了这篇文章 首先,先看一下F12中的网络(Network),发现并没有使用网络动态验证 那么这个验证码必定是写在资源文件中的 在确定按钮上看到如下元素监听(Event Listeners) 进入打断点 成功断下 单步跟到…

数据库常见面试题

存储引擎 InnoDB(默认) 存储引擎的对比 MYISAM被MangoDB替代了 MEMORY被Redis替代了 索引 是一种高效获取数据的数据结构 索引结构 二叉树,红黑树(都不合适) B树 插入超过5个数,会从中间分裂 B树 …

苍穹外卖项目笔记(2)

1 Nginx 反向代理和负载均衡 1.1 概念 【Tips】可以看到前端请求地址和后端接口地址并不匹配,这里涉及到 nginx 反向代理 ,就是将前端发送的动态请求由 nginx 转发到后端服务器 使用 nginx 作反向代理的好处: 提高访问速度(在请…

时间序列预测中的4大类8种异常值检测方法(从根源上提高预测精度)

一、本文介绍 本文给大家带来的是时间序列预测中异常值检测,在我们的数据当中有一些异常值(Outliers)是指在数据集中与其他数据点显著不同的数据点。它们可能是一些极端值,与数据集中的大多数数据呈现明显的差异。异常值可能由于…

Linux系统下安装go

目录 下载go安装包解压包并安装添加环境变量验证是否安装成功 下载go安装包 官网地址:go 解压包并安装 复制好包的下载链接后使用下面命令进行安装: curl -O https://storage.googleapis.com/golang/go1.11.1.linux-amd64.tar.gz mkdir -p ~/installe…

结构体数组保存进二进制文件的简单做法

作者:朱金灿 来源:clever101的专栏 为什么大多数人学不会人工智能编程?>>> 最近面临这样一个需求:以比较节省存储空间的存储一组坐标点到文件,要求程序能够跨平台读写这种文件。思考了一下,比较…

Kafka学习笔记(一)

目录 第1章 Kafka概述1.1 消息队列(Message Queue)1.1.1 传统消息队列的应用场景1.1.2 消息队列的两种模式 1.2 定义 第2章 Kafka快速入门2.1 安装部署2.1.1 集群规划2.1.2 jar包下载2.1.3 集群部署 2.2 Kafka命令行操作 第3章 Kafka架构深入3.1 Kafka工…

23111704[含文档+PPT+源码等]计算机毕业设计springboot办公管理系统oa人力人事办公

文章目录 **软件开发环境及开发工具:****功能介绍:****实现:****代码片段:** 编程技术交流、源码分享、模板分享、网课教程 🐧裙:776871563 软件开发环境及开发工具: 前端技术:jsc…

实例解释遇到前端报错时如何排查问题

前端页面报错: 1、页面报错500,首先我们可以知道是服务端的问题,需要去看下服务端的报错信息: 2、首先我们查看下前端是否给后端传了id: 我们可以看到接口是把ID返回了,就需要再看下p_id是什么情况了。 3、我们再次请…

【C++】多线程的学习笔记(3)——白话文版(bushi

前言 好久没有继续写博客了,原因就是去沉淀了一下偷懒了一下 现在在学网络编程,c的多线程也还在学 这一变博客就讲讲c中的Condition Variable库吧 Condition Variable的简介 官方原文解释 翻译就是 条件变量是一个对象,它能够阻止调用…

腾讯云服务器秒杀什么时候开始?腾讯云服务器秒杀时间

腾讯云服务器秒杀什么时候开始呢?我们一起来揭晓答案! 腾讯云服务器秒杀活动即日起至2023-11-30 23:59:59,每日0点限量秒杀。这意味着,每一天的开始,你都有机会抢到心仪的服务器。秒杀活动入口:https://te…

面试题-3

1.说一下原型链 原型就是一个普通对象,它是为构造函数实例共享属性和方法,所有实例中引用原型都是同一个对象 使用prototype可以把方法挂载在原型上,内存值保存一致 _proto_可以理解为指针,实例对象中的属性,指向了构造函数的原型(prototype) 2.new操…