部署YUM软件仓库

news2024/11/18 9:48:59

        借助于YUM软件仓库.可以完成安装、卸载、自动升级rpm软件包等任务,能够自动查找并解 决rpm包之间的依赖关系,而无须管理员逐个.手工地去安装每个rpm包,使管理员在维护大量Linux 服务器时更加轻松自如。.特别是在拥有大量Linux主机的本地网络中,构建一台源服务器可以大大缓 解软件安装、升级等对Internet的依赖.

        YUM的前身是YUP(Yellow dog Updater,Yellow dog Linux的软件更新器).最初由TSS公司(Terra Soft Solutions,INC.)使用Python语言开发而成.后来由杜克大学(Duck University)的Linux开发队 伍进行改进,命名为YUM(Yellow dog Updater, Modified).

        要成功使用YUM机制来更新系统和软件,需要有一个包含各种rpm安装包文件及其依赖软件的 软件仓库(repository),提供软件仓库的服务器也称为“源”服务器。在客户机中只要正确指定软 件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件了。

准备网络安装源(服务器端)

        YUM软件仓库通常借助于HTTP或FTP协议来进行发布,这样可以面向网络中的所有客户机提供 软件源服务。为了便于客户机查询软件包,获取依赖关系等信息,在软件仓库中需要提供仓库数据 (repodata),其中收集了目录下所有rpm包的头部信息。

1.准备软件仓库目录

        在CentOS 7系统的安装光盘中,已针对软件目录Packages建立好repodata数据,因此只要简单 地将整个光盘中的内容通过HTTP或FTP进行发布,就可以作为软件仓库了

例如,可以创建 /var/ftp/centos7目录,并确保有足够的可用空间(本例中建议大于5GB),然后将CentOS 7光盘中 的所有数据复制到该目录下。

[root@lgcllc ~]# mount /dev/cdrom /mnt/         //光盘挂载到/mnt/目录
mount: /dev/sr0 写保护,将以只读方式挂载

[root@lgcllc ~]# mkdir -p /var/ftp/centos7
[root@lgcllc ~]# cp -rf /mnt/* /var/ftp/centos7

        对于用户搜集的非CentOS7光盘自带的更多其他软件包(必须包括存在依赖关系的所有安装文 件),除了准备相应的目录之外,还需要手动创建repodata数据文件,这就要用到createrepo 工具(需 要从 CentOS 7光盘中安装)

例如,若已将作为源发布的其他rpm安装包文件存放到/var/ftp/other 目录下,则可执行以下操作为其创建repodata数据。

[root@lgcllc ~]# mkdir /var/ftp/other
[root@lgcllc ~]# cd /var/ftp/other/
[root@lgcllc other]# createrepo -g /mnt/repodata/repomd.xml ./ 

                                                                                //以现有的repodata目录为样板

2.安装并启用vsftpd服务

[root@lgcllc ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-25.el7.x86_64.rpm 
root@lgcllc ~]# systemctl start vsftpd
[root@lgcllc ~]# systemctl enable vsftpd

 访问ftp://192.168.55.123,确保可以查看到已复制到软件仓库目录/var/ftp/centos7下的光盘数据

配置软件仓库位置(客户端)

        在客户机上需要指定至少一个可用的软件仓库,然后才能使用下一节将要介绍的yum工具来下 载、安装软件包,yum 工具使用的软件仓库信息存放在/etc/yum.repos.d目录下扩展名为“.repo” 的文件中,以上一小节的网络安装源为例,典型的仓库配置如下所示。

把/etc/yum.repos.d目录下的所有扩展名为".repo"的文件移动到/opt/
[root@lgcllc ~]# cd /etc/yum.repos.d/
[root@lgcllc yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@lgcllc yum.repos.d]# mv *.repo /opt/
[root@lgcllc yum.repos.d]# ls
[root@lgcllc yum.repos.d]#


[root@lgcllc yum.repos.d]# vim centos7.repo     //新建扩展名".repo"的文件,编辑下列语句

[base]                                                  //仓库类别
name=CentOS 7.3                                         //仓库说明
baseurl=ftp://192.168.55.123/centos7                    //URL访问路径
enabled=1                                               //启用此软件仓库(默认启用)
gpgcheck=1                                              //验证软件包的签名
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7     //GPG公钥文件的位置

[other]
name=Other RPM Packages
baseurl=ftp://192.168.55.123/other
enabled=1
gpgcheck=0                                               //不验证软件包的签名


本机上配置软件仓库位置

        作为临时解决办法之一,实际上也可以使用本地文件夹作为软件仓库。例如,将CentOS7光 盘挂载到/mnt/目录下以后,可以参考以下操作来进行配置,当然,这种方式仅限于在本 机使用。

把/etc/yum.repos.d目录下的所有扩展名为".repo"的文件移动到/opt/
[root@lgcllc ~]# cd /etc/yum.repos.d/
[root@lgcllc yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo
[root@lgcllc yum.repos.d]# mv *.repo /opt/
[root@lgcllc yum.repos.d]# ls
[root@lgcllc yum.repos.d]#


[root@lgcllc yum.repos.d]# vim local.repo     //新建扩展名".repo"的文件,编辑下列语句

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

使用yum工具管理软件包 

1. yum list——查询软件包列表

        直接执行“yum list”命令可以获得系统中的软件安装情况,也可以查询软件仓库中可用的软件 包列表,其中子命令 list表示列表查看。

若执行“yum list installed”命令,则表示只列出系统中已安装的软件包;

若执行“yumlist available" 命令,则表示只列出软件仓库中可用(尚未安装)的软件包;

若执行‘yum list updates命令,则表示只列出可以升级版本的软件包。

2. yum info——查询软件包的描述信息

        当需要查看某个软件包的描述信息时,可以执行‘yum info软件包名”,其中子命令 info表示获 取信息。例如,执行以下操作可以查看软件包httpd的信息。 

3.yum search——查询指定的软件包

         当需要根据某个关键词来查找相关的软件包时,可以执行‘yum search关键词”.默认仅根据软 件包名称和描述信息进行搜索;若执行‘yum search all关键词”,可以扩大搜索范围。

例如,执行 以下操作将搜索软件仓库并列出与“httpd”相关的软件包。

安装、升级、卸载软件包

        使用yum工具安装、升级软件包.分别通过子命令install,update来完成,操作对象为指定的软 件包名(可以有多个).执行操作时会自动检查并解决软件包之间的依赖关系,期间会提示用户按Y 键确认安装或升级操作,若希望自动确认,可以在yum命令后添加“-y”选项。

例如,执行以下操 作将从软件仓库下载并安装net-snmp软件包,并自动解决其依赖关系,

[root@lgcllc ~]# yum -y install net-snmp

         使用yum工具卸载软件包时,通过子命令remove来完成,卸载操作通过软件仓库也可以完成。

例如,执行以下操作将卸载autofs软件包,并自动解决其依赖关系。

[root@lgcllc ~]# yum -y remove autofs

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

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

相关文章

PYTHON入门级游戏开发:宇宙飞船游戏两万字详析

手讲解超详细python入门游戏项目‘打外星飞船’手把(一) 由于内容比较多,这里会分为五篇文章来讲解,从页面的创建、飞船控制、射击、外星人创建、射杀外星人五片来展开。 做一个窗口和设置响应用户 import sysimport pygame&qu…

Android 13 - Media框架(28)- ACodec(五)

前面几节我们了解了OMXNodeInstance是如何处理setPortMode、allocateBuffer、useBuffer的,这一节我们再回到ACodec,来看看 ACodec start 的其他部分。 我们首先来回顾一下,ACodec start 的状态切换以及处理的事务,我们用一张不太准…

23、Qt使用fftw3.3.5

一、下载 FFTW Installation on Windows 二、使用fftw 新建一个Qt项目,把“fftw3.h”和“libfftw3-3.dll”两个文件拷贝到项目目录下 在.pro中添加如下代码 LIBS -L$$PWD/ -llibfftw3-3 右击项目名称,选择“添加现有文件”,选择“fftw3.h…

【Echarts】使用echarts和echarts-wordcloud生成词云图

一、下载echarts和echarts-wordcloud 地址:https://download.csdn.net/download/qq_25285531/88663006 可直接下载放在项目中使用 二、词云数据 词云数据是对象的格式,可以从后端获取,这里以下面数据为例 $list3 array(array(name >…

《当初恋撞上人生》

《当初恋撞上人生》是很久以前起早的一个作品,然而断断续续、伤伤感感一直没写下去,最近打开看了一下,总算概述还完整,暂且贴出来也好。不想哪天一改,失了原本初心与色彩。 简章如下: 《初恋撞上人生》简述…

视频批量转码:一键转换多个视频mp4格式到FLV视频

在数字媒体时代,视频格式的多样性给处理工作带来了诸多不便。满足不同的播放需求,经常要视频从一种格式转换为另一种格式。其中,将mp4格式转换为FLV格式的需求很常见。现在一起来看下云炫AI智剪如何高效的将视频批量转码方法,一键…

CSS 文字弹跳效果

鼠标移过去 会加快速度 <template><div class"bounce"><p class"text" :style"{animationDuration: animationDuration}">欢迎使用UniApp Vue3&#xff01;</p></div> </template><script> export d…

运动轨迹仿真

重型运载火箭轨迹/总体参数一体化优化方法 硬核推导火箭运动方程&#xff0c;并用python仿真实现 rocket-simulation:MATLAB-火箭仿真软件 MatRockSim:Matlab 火箭飞行模拟器 【开源】飞鹰一号探空火箭——箭体设计、制造回顾与仿真对比 偏航角&#xff0c;滚动角&#xf…

HOJ 项目部署-前端定制 默认勾选显示标签、 在线编辑器主题和字号大小修改、增加一言功能 题目AC后礼花绽放

# 项目拉取地址&#xff1a; https://gitee.com/himitzh0730/hoj.git # 切换到hoj-vue目录执行以下命令 #安装依赖 npm install #运行服务 npm run serve #修改代码后构建项目到dist文件夹&#xff0c;到服务器docker-compose.yml中修改hoj-frontend文件映射即可 npm run build…

FPGA-AMBA协议、APB协议、AHB规范、AXI4协议规范概述及它们之间的关系

FPGA-AMBA协议、APB协议、AHB协议、AXI&#xff14;协议规范概述 笔记记录&#xff0c;AMBA协议、APB协议、AHB规范、AXI&#xff14;协议规范概述&#xff0c;只是概述描述&#xff0c;具体详细的协议地址传输、数据传输等内容将在下一章节详细说明。 文章目录 FPGA-AMBA协议…

自动化测试工程师怎样能规划好自己的职业生涯?

确定职业目标&#xff1a;首先&#xff0c;自动化测试工程师需要明确自己的职业目标&#xff0c;是希望在测试领域深入发展&#xff0c;还是希望向其他方向转型。如果希望在测试领域深入发展&#xff0c;可以专注于自动化测试技术的不断提升&#xff0c;以及测试管理的相关技能…

python3下载手机安卓版,python下载手机版最新

大家好&#xff0c;小编为大家解答python3下载手机安卓版的问题。很多人还不知道python下载手机版最新&#xff0c;现在让我们一起来看看吧&#xff01; 1、先去python官网下载python3的源码包&#xff0c;网址&#xff1a;https://www.python.org/ 1)进去之后点击导航栏的Down…

生成超清分辨率视频,南洋理工开源Upscale-A-Video

大模型在生成高质量图像方面表现出色,但在生成视频任务中&#xff0c;经常会面临视频不连贯、图像模糊、掉帧等问题。 这主要是因为生成式抽样过程中的随机性,会在视频序列中引入无法预测的帧跳动。同时现有方法仅考虑了局部视频片段的时空一致性,无法保证整个长视频的整体连贯…

物联网协议Coap之Californium CoapServer解析

目录 前言 一、CoapServer对象 1、类对象定义 2、ServerInterface接口 3、CoapServer对象 二、CoapServer服务运行分析 1、CoapServer对象实例化 1.1 调用构造方法 1.2 生成全局配置 1.3 创建Resource对象 1.4-1.8、配置消息传递器、添加CoapResource 1.9-1.12 创建线…

C# ASP.NET 实验室 检验中心 医疗LIS源码

LIS系统能够自动处理大量的医学数据&#xff0c;包括样本采集、样本处理、检测分析、报告生成等。它能够快速、准确地进行化验检测&#xff0c;提高医院的运营效率。LIS系统还提供了丰富的数据分析功能&#xff0c;能够对医院化验室的业务流程进行全面、细致的监控。 LIS系统优…

Hooked协议掀起WEB3新浪潮

随着区块链技术和加密货币的兴起&#xff0c;币圈已经成为全球范围内的一个热门领域。在这个充满机遇与挑战的行业中&#xff0c;Hook机制正逐渐成为一种重要的技术手段&#xff0c;为投资者、开发者以及相关机构提供了更多的选择和可能性。本文将详细介绍币圈中的Hook机制&…

Qt/C++音视频开发61-多屏渲染/一个解码渲染到多个窗口/画面实时同步

一、前言 多屏渲染就是一个解码线程对应多个渲染界面&#xff0c;通过addrender这种方式添加多个绘制窗体&#xff0c;我们经常可以在展会或者卖电视机的地方可以看到很多电视播放的同一个画面&#xff0c;原理应该类似&#xff0c;一个地方负责打开解码播放&#xff0c;将画面…

【每日一坑】高Q电感的“SRF”是什么?

先上截图 SRF Self-Resonant Frequency 自我共振频率 电感器中端子电极与绕组导体等之间存在微小的分布容量&#xff0c;因此在特定频率下会发生共振。 此时的频率称为自我共振频率&#xff0c;超过自我共振频率时&#xff0c;电感器将无法发挥其功能。 在为高频电路或高频…

图解集线器、中继器、交换机、网桥、路由器、光猫到底有啥区别?

集线器、中继器、交换机、网桥、光猫这些都是网络设备&#xff0c;但它们在功能、工作层次、数据传输方式、带宽占用方式等方面存在差异 集线器 集线器的英文称为“Hub”。“Hub”是“中心”的意思&#xff08;就像是GitHub&#xff09;&#xff0c;集线器的主要功能是对接收…

张江智荟毁约offer

毕业8年后&#xff0c;找工作被国企歧视学历&#xff01;已经收到了offer&#xff0c;在入职前一周被通知要撤回offer&#xff0c;拒绝录用&#xff0c;理由居然是他们只要本科211以上的人 这是我今天&#xff08;2023-12-26&#xff09;亲身经历的事&#xff0c;听说过面试前…