Linux网络服务部署YUM仓库

news/2024/10/18 9:26:08/

目录

一.YUM仓库简介

二.YUM实现过程

三.YUM配置文件

1.主配置文件

2.仓库设置文件

3.日志文件

四.YUM命令详解

1.查询

2.yum安装升级

3.软件卸载

五.YUM搭建仓库的方式

1.搭建本地YUM仓库

2.搭建阿里云仓库(http外网环境搭建)

3.内网环境下http搭建yum仓库

4.内网环境下ftp搭建yum仓库


一.YUM仓库简介

     yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间

二.YUM实现过程

    先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下),当yum客户端利用yum/dnf工具进行安装时包时,会自动下载repodata中的元数据,查询远数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。

yum需要依赖于环境,依赖于服务端和客户端,允许跨网络

yum客户端: 

配置文件

yum服务器

RPM包 (Packages文件夹中)

元数据(repodata文件夹:目录(软件的目录),软件的依赖关系,软件的位置)

仓库类型:

光盘的仓库基本仓库 比较常用的

epel扩展仓库 比较新

三.YUM配置文件

1.主配置文件

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

yum的repo配置文件中可用的变量:
$releasever: 当前OS的发行版的主版本号,如:8,7,6
$arch: CPU架构,如:aarch64, i586, i686,x86_64等
$basearch:系统基础平台;i386, x86_64
$contentdir:表示目录,比如:centos-8,centos-7
$YUM0-$YUM9:自定义变量
2.仓库设置文件

位置:/etc/yum.repos.d/*.repo //yum仓库文件位置

3.日志文件

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

四.YUM命令详解

命令不加关键字加入关键词、软件包、软件包组
yum list显示所有可用包单个的可安装包
yum info显示所有可用包的信息单个具体的信息
yum search\模糊查找所有的相关信息
yum provides\精确查找
yum grouplist显示所有可用包组显示具体的包组
yum groupinfo显示所有的包组具体信息显示具体的包组的具体信息
yum install\安装具体软件包
yum groupinstall\安装具体软件包组
yum update所有软件升级具体软件升级
yum group update所有包组升级具体包组升级
yum remove\卸载具体软件
yum groupremove\卸载具体包组软件
yum history查看当前yum操作历史\
yum history undo加入序号卸载序号里安装的软件\
yum history redo加入序号重新执行序号里的操作\
1.查询

1.1  yum  list   [软件名]

显示可用的安装包,如不加软件名是显示所有的可用包

yum list  *httpd*  //包含httpd的软件包

1.2   yum  info   [软件名]

显示安装包详细信息

1.3   yum  search   <关键词>

根据关键字查找软件安装包,相当于你只知道这个包里的某个关键字会全部给你匹配出来

1.4   yum provides  <关键词>

知道某个命令却不知道具体的包可以用此命令查找

1.5   yum  grouplist  [包组名]

安装包组的查询 不加包组名 就是显示所有(此处例子由于安装了中文环境,无法显示英文包组名称无法直接复制中文使用,建议直接安装英文操作系统)

1.6   yum  groupinfo   [包组名]

不加包组名显示全部

2.yum安装升级

2.1  yum   install   [软件名]

安装软件包,如例子yum install安装http服务

2.2   yum update   

更新包组,可以单个也可以全部 后面加具体包组名称就是单个更新,不加就是全部更新。

但是首先你要有更新的包组库否则也无法更新。

3.软件卸载

3.1  yum  remove  <软件名>

卸载已安装的软件必须加软件名

3.2  yum  history  

查看历史使用记录

五.YUM搭建仓库的方式

(1)本地yum仓库 没有网络的情况下, 光盘

(2)软件仓库的提供方式 FTP服务:ftp://ip地址/站点里路径

(3)HTTP服务:http://域名或者ip地址/站点里的路径

(4)本地目录:file://绝对路径 (file:///mnt 此处第三个/为根目录)

CentOS系统的yum源
#阿里云
https://mirrors.aliyun.com/centos/$releasever/ 
#腾讯云
https://mirrors.cloud.tencent.com/centos/$releasever/ 
#华为云
https://repo.huaweicloud.com/centos/$releasever/ 
#清华大学
https://mirrors.tuna.tsinghua.edu.cn/centos/$releasever/
EPEL的yum源
#阿里云
https://mirrors.aliyun.com/epel/$releasever/x86_64
#腾讯云
https://mirrors.cloud.tencent.com/epel/$releasever/x86_64
#华为云
https://mirrors.huaweicloud.com/epel/$releasever/x86_64
#清华大学
https://mirrors.tuna.tsinghua.edu.cn/epel/$releasever/x86_64
#更新源
http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/ http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/ http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
baseurl=https://mirrors.aliyun.com/epel/$releasever/x86_64https://mirrors.cloud.tencent.com/epel/$releasever/x86_64https://mirrors.huaweicloud.com/epel/$releasever/x86_64https://mirrors.tuna.tsinghua.edu.cn/epel/$releasever/x86_64
1.搭建本地YUM仓库

(1)首先将光驱中的镜像文件进行挂载(先将虚拟机的光盘载入)

[root@localhost mnt]# mount /dev/sr0 /mnt                    //挂载到mnt目录下
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost mnt]# cd /etc/yum.repos.d/                   //进入etc目录下的yum.repos.d
[root@localhost yum.repos.d]# mkdir bak                      //创建bak文件夹
[root@localhost yum.repos.d]# mv *.repo bak/                 //移动源到bak文件夹下

(2)编辑配置文件,新建本地yum仓库


[root@localhost yum.repos.d]# vim local.repo                   //新建并编辑local.repo[local]                                                                            
name=local                       //仓库名
baseurl=file:///mnt              //设置链接地址
gpgcheck=0                       //进入不需验证

(3)清理缓存并安装

[root@localhost yum.repos.d] yum clean all  
[root@localhost yum.repos.d] yum  makecache
[root@localhost yum.repos.d] yum  install  <软件名>
2.搭建阿里云仓库(http外网环境搭建)

(1)切换到 yum.repo.d 目录 将自带的仓库移走

(2)新建aliyun仓库

(3)清理缓存建立元数据

3.内网环境下http搭建yum仓库

由于是内网环境,虚拟机全部设为仅主机模式,(如何设置仅主机模式可参考DHCP原理与配置)无法连接外部网络如果想要下载httpd服务则需要搭建一个本地yum仓库

(1)服务器搭建本地yum仓库

(2)服务端下载http服务

(3)服务端进入/var/www/html/添加挂载目录centos7,将光驱挂载到centos7目录下(也可以将光驱内的所有文件包复制到centos目录下)

(4)关闭防火墙开启http服务

(5)httpd提供网页服务,在客户端搜索服务器的IP地址和共享目录,可以查看到共享的目录

(6)在客户端搭建本地YUM仓库

其余步骤相同

配置文件中

测试安装一个服务

4.内网环境下ftp搭建yum仓库

ftp可以使用内网也可以使用外网,此处演示内网环境, 由于是内网环境,虚拟机全部设为仅主机模式,(如何设置仅主机模式可参考DHCP原理与配置)无法连接外部网络如果想要下载ftp服务则需要搭建一个本地yum仓库

服务器:192.168.240.11

客户端:192.168.240.12

(1)服务端安装vsftp服务

(2)服务端切换到ftp目录下新建的centos7目录

(3)服务端将光驱里的文件包全部拷到centos7里面(先将光驱挂载到 了mnt目录下)

(4)服务端开启相关服务,关闭防火墙和selinux

5.客户端关闭防火墙安装ftp服务

(6)测试ftp服务是否正常

(7)编写客户的本地YUM仓库

[root@localhost yum.repos.d]# vim centos7.repo
[centos7]
name=centos7
baseurl=ftp://192.168.240.11/centos7
enabled=1
gpgcheck=0[other]
name=other
baseurl=ftp://192.168.240.11/other
enabled=1
gpgcheck=0

(8)测试客户端YUM是否正常使用


http://www.ppmy.cn/news/1454972.html

相关文章

文件加密软件排行榜前四名(2024年4大好用的加密软件推荐)

说到文件加密&#xff0c;想必大家都很熟悉&#xff0c;文件加密已经普遍应用&#xff0c;文件加密是一种重要的安全措施&#xff0c;可以确保数据的机密性、完整性和可用性&#xff0c;降低因数据泄露或丢失带来的风险 。 下面小编给大家分享几款常用的加密软件&#xff0c;…

【机器学习第二期】MATLAB实现随机森林法

随机森林(Random Forest, RF) 1 原理1.1 重采样方法(Bootstrap resampling method)1.2 特征重要性方法排列重要性法(Permutation Importance method)2 MATLAB相关函数:TreeBagger3 案例:干旱驱动因子分析3.1 案例说明结果变量(Outcome variable)解释变量类别3.2 基于…

Angular中组件之间的传值

Angular中组件之间的传值 文章目录 Angular中组件之间的传值前言一、父亲向儿子传值二、儿子向父亲传值三、爷爷向孙子传值四、兄弟之间的传值 前言 Angular的组件是构成应用的基础单元&#xff0c;它们封装了HTML模板、TypeScript代码以及CSS样式&#xff0c;以实现特定的功能…

2024年 Java 面试八股文——SpringCloud篇

目录 1.Spring Cloud Alibaba 中的 Nacos 是如何进行服务注册和发现的&#xff1f; 2.Spring Cloud Alibaba Sentinel 的流量控制规则有哪些&#xff1f; 3.Spring Cloud Alibaba 中如何实现分布式配置管理&#xff1f; 4.Spring Cloud Alibaba RocketMQ 的主要特点有哪些&…

windows系统双网卡其中一个网卡访问速度很慢解决办法

电脑双网卡&#xff0c;一个是公司的内网&#xff0c;另一个是外网&#xff0c;而且还是外接的USB网卡&#xff0c;这种情况下&#xff0c;不管USB网卡做内网还是外网&#xff0c;它都很慢。 浏览器打开网页&#xff0c;每个网页都要加载1分钟&#xff0c;十分烦&#xff0c;但…

记录创建项目java version 没有8的问题

问题&#xff1a; 解决方案 java版本选择21&#xff08;21可以兼容jdk8&#xff09; SpringBoot选择3.2.5 进入项目后手动在pom.xml中修改版本

17 内核开发-内核内部内联汇编学习

​ 17 内核开发-内核内部内联汇编学习 课程简介&#xff1a; Linux内核开发入门是一门旨在帮助学习者从最基本的知识开始学习Linux内核开发的入门课程。该课程旨在为对Linux内核开发感兴趣的初学者提供一个扎实的基础&#xff0c;让他们能够理解和参与到Linux内核的开发过程中…

五一假期后,必读的10篇大模型论文

1.同时预测多个 token&#xff1a;更好更快的大型语言模型 目前&#xff0c;GPT 和 Llama 等大型语言模型&#xff08;LLMs&#xff09;都是通过下一个 token 预测损失来训练的。 在这项工作中&#xff0c;来自 Meta FAIR 的研究团队认为&#xff0c;训练语言模型同时预测多个…