【Linux网络】详解使用http和ftp搭建yum仓库,以及yum网络源优化

目录

一、回顾yum的原理

1.1yum简介

yum安装的底层原理:

yum的好处:

二、学习yum的配置文件及命令

1、yum的配置文件

2、yum的相关命令详解

3、yum的命令相关案例

三、搭建yum仓库的方式

1、本地yum仓库建立

2、通过http搭建内网的yum仓库

3、通过ftp搭建内网的yum仓库

4、创建本地的国内的网络源


一、回顾yum的原理

1.1yum简介

yum是一个基于RPM包(是Red-Hat Package Manager红帽软件包管理器的缩写)构建的软件更新机制,能够自动解决软件包之间的依赖关系。解决了日常工作中的大量查找安装依赖包的时间 为什么会有依赖关系的发生 因为linux本身就是以系统简洁为自身优势,所以在安装操作系统的时候并没有将所有的库文件以及编译软件包进行安装,所以在linux操作系统上进行软件安装的时候会出现软件包依赖的情况。yum由仓库和客户端组成,也就是整个yum由两部分组成,所以yum可以存放在两台服务器上。也可以存放在一台服务器上。可以有官方来提供服务,也可以由第三方来提供,比如国内的阿里云,搜狐云,还有一些非盈利组织比如学校等。官方的源一般在国外,下载速度肯定有限,手动更改成国内的云可以大幅提升下载速度。

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安装的底层原理:

之前有博客专门详细讲解了rpm、yum、编译安装:详解三大安装方式的原理和使用情况

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

服务器:

  • RPM包 (Packages文件夹中)

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

yum的好处:

与rpm相比,能解决依赖关系

二、学习yum的配置文件及命令

1、yum的配置文件

[root@localhost]# /etc/yum.conf
[main]
cachedir=/var/cache/yum/$basearch/$releasever //yum下载的RPM包的缓存目录 $basearch代表硬件架构 $releasever系统版本比如7
keepcache=0                                   //是否保存缓存  0代表不保存,1代表保存
debuglevel=2                                  //调试级别了解即可
logfile=/var/log/yum.log					 // 日志文件位置
exactarch=1								     //是否允许不同版本的rpm安装
obsoletes=1									//update 的一个参数是否可以允许旧版本的运行	
gpgcheck=1                                  //验证秘钥
plugins=1                                   //是否允许插件1代表可以
installonly_limit=5                         //保存几个内核 5代表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-releaseyum的repo配置文件中可用的变量:
$releasever: 当前OS的发行版的主版本号,如:8,7,6
$arch: CPU架构,如:aarch64, i586, i686,x86_64等
$basearch:系统基础平台;i386, x86_64
$contentdir:表示目录,比如:centos-8,centos-7
$YUM0-$YUM9:自定义变量

yum的日志存放位置/var/log/yum.log

2、yum的相关命令详解

yum命令学习不加关键字添加关键字或者包名,举例
yum  list查看有哪些如yum list http 表示与其相关的包,可以跟包名,跟包组
yum info显示所有可用包的信息可以用通配符模糊匹配
yum search不可以模糊查找与这个相关的软件包
yum provides不可以精确查找这个包来源于哪个yum服务端
yum history查看当前yum操作历史/
yum history undo 数字加入序号卸载序号里安装的软件(可以卸载干净)/
yum history redo 数字加入序号重新执行序号里的操作/
yum remove  软件包卸载不干净
yum install -y --downloadonly --downloaddir=/opt bind只下载不安装,将bind以及相关的依赖关系都下载到/opt目录下

3、yum的命令相关案例

3.1yum list(支持通配符)

3.2yum info (支持通配符)

3.3yum search 模糊查询软件包

3.4yum provides 软件包 精确查询哪些yum库可提供vsftpd的软件包

如果精确查找匹配不到,可以添加通配符“*/软件名”

3.5 yum history的使用(undo 编号反悔,redo编号,再次执行)

3.6 yum install -y --downloadonly --downloaddir=/opt bind(举例)

三、搭建yum仓库的方式

软件仓库的提供方式

FTP服务:ftp://ip地址/站点里路径

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

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

1、本地yum仓库建立

这里有详解操作,不演示了

2、通过http搭建内网的yum仓库

第一步:关闭防火墙和安全机制,安装httpd服务

第二步:挂载光盘镜像至httpd服务端(/var/www/html)并启动服务

第三步:备份网络yum源,手写http.repo配置文件

[root@localhost ~]#cd /etc/yum.repos.d/
[root@localhost yum.repos.d]#ls
CentOS-Base.repo  CentOS-CR.repo  CentOS-Debuginfo.repo  CentOS-fasttrack.repo  CentOS-Media.repo  CentOS-Sources.repo  CentOS-Vault.repo
[root@localhost yum.repos.d]#mkdir bak
[root@localhost yum.repos.d]#mv *.repo bak
[root@localhost yum.repos.d]#ls
bak
[root@localhost yum.repos.d]#vim http.repo1 [http]2 name=http3 baseurl=http://192.168.20.18/   ##指明httpd服务端的位置,也是yum服务端的位置,光盘镜像挂载点4 gpgcheck=0[root@localhost yum.repos.d]#ls
bak  http.repo
[root@localhost yum.repos.d]#yum clean all && yum makecache 

第四步:验证结果

3、通过ftp搭建内网的yum仓库

第一步:关闭防火墙和安全机制,安装httpd服务

第二步:挂载光盘镜像至FTP服务端(/var/ftp/自定义目录如centos7)

第三步:备份网络yum源,手写ftp.repo配置文件

1 [ftp]2 name=ftp3 baseurl=ftp://192.168.20.10/centos74 gpgcheck=0

第四步:验证结果

4、创建本地的国内的网络源

[root@localhost yum.repos.d]#vim total.repo
[base]
name=base
baseurl=https://mirror.tuna.tsinghua.edu.cn/centos/7/os/x86_64/https://mirrors.aliyun.com/centos/7/os/x86_64/https://repo.huaweicloud.com/centos/7/os/x86_64/https://mirrors.cloud.tencent.com/centos/7/os/x86_64/
gpgcheck=0[epel]
name=epel
baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=0[root@localhost yum.repos.d]#yum clean all && yum makecache 
已加载插件:fastestmirror, langpacks
正在清理软件源: base epel
Cleaning up everything
Maybe you want: rm -rf /var/cache/yum, to also free up space taken by orphaned data from disabled or removed repos
Cleaning up list of fastest mirrors
已加载插件:fastestmirror, langpacks
base                                                                                          | 3.6 kB  00:00:00     
epel                                                                                          | 4.7 kB  00:00:00     
(1/10): epel/group_gz                                                                         |  99 kB  00:00:00     
(2/10): base/group_gz                                                                         | 153 kB  00:00:01     
(3/10): base/filelists_db                                                                     | 7.2 MB  00:00:04     
(4/10): base/primary_db                                                                       | 6.1 MB  00:00:04     
(5/10): epel/prestodelta                                                                      |  994 B  00:00:00     
(6/10): base/other_db                                                                         | 2.6 MB  00:00:09     
(7/10): epel/filelists_db                                                                     |  12 MB  00:00:12     
(8/10): epel/primary_db                                                                       | 7.0 MB  00:00:09     
(9/10): epel/other_db                                                                         | 3.4 MB  00:00:00     
(10/10): epel/updateinfo                                                                      | 1.0 MB  00:00:13     
Determining fastest mirrors* base: repo.huaweicloud.com* epel: mirrors.aliyun.com
元数据缓存已建立
[root@localhost yum.repos.d]#

 

四、总结

可以查看一些官方网址,也是提供了镜像的下载方式

 如阿里镜像官网:阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区 (aliyun.com)

 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RabbitMQ消息的可靠性

RabbitMQ消息的可靠性 一 生产者的可靠性 生产者重试 有时候由于网络问题,会出现连接MQ失败的情况,可以配置重连机制 注意:SpringAMQP的重试机制是阻塞式的,重试等待的时候,当前线程会等待。 spring:rabbitmq:conne…

Java读写Jar

Java提供了读写jar的类库Java.util.jar,Java获取解析jar包的工具类如下: import java.io.File; import java.io.IOException; import java.net.URL; import java.net.URLClassLoader; import java.util.Enumeration; import java.util.HashMap; import …

你知道什么是SaaS吗?

你知道什么是SaaS吗? 云服务架构的三个概念 PaaS 英文就是 Platform-as-a-Service(平台即服务)PaaS,某些时候也叫做中间件。就是把客户采用提供的开发语言和工具(例如Java,python, .Net等)开…

我叫:选择排序【JAVA】

1.我是个啥子?? 选择式排序:属于内部排序法,从欲排序的数据中,按指定的规则选出某一元素,再依规定交换位置后达到排序的目的。 2.我的思想 基本思想:第一次从arr[0]~arr[n-1]中选取最小值,与arr[0]交换,第…

单张图像3D重建:原理与PyTorch实现

近年来,深度学习(DL)在解决图像分类、目标检测、语义分割等 2D 图像任务方面表现出了出色的能力。DL 也不例外,在将其应用于 3D 图形问题方面也取得了巨大进展。 在这篇文章中,我们将探讨最近将深度学习扩展到单图像 3…

Transformer中WordPiece/BPE等不同编码方式详解以及优缺点

❤️觉得内容不错的话,欢迎点赞收藏加关注😊😊😊,后续会继续输入更多优质内容❤️ 👉有问题欢迎大家加关注私戳或者评论(包括但不限于NLP算法相关,linux学习相关,读研读博…

C++基础从0到1入门编程(三)

系统学习C 方便自己日后复习,错误的地方希望积极指正 往期文章: C基础从0到1入门编程(一) C基础从0到1入门编程(二) 参考视频: 1.黑马程序员匠心之作|C教程从0到1入门编程,学习编程不再难 2.系统…

ubuntu下载conda

系统:Ubuntu18.04 (1)下载安装包 wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh 报错错误 403:Forbidden 解决方法 wget -U NoSuchBrowser/1.0 https://mirrors.tuna.tsingh…

Jmeter做接口测试

1.Jmeter的安装以及环境变量的配置 Jmeter是基于java语法开发的接口测试以及性能测试的工具。 jdk:17 (最新的Jeknins,只能支持到17) jmeter:5.6 官网:http://jmeter.apache.org/download_jmeter.cgi 认识JMeter的目录&#xff1…

【Web】Ctfshow SSRF刷题记录1

核心代码解读 <?php $url$_POST[url]; $chcurl_init($url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $resultcurl_exec($ch); curl_close($ch); ?> curl_init()&#xff1a;初始curl会话 curl_setopt()&#xff1a;会…

【力扣面试经典150题】(链表)K 个一组翻转链表

题目描述 力扣原文链接 给你链表的头节点 head &#xff0c;每 k 个节点一组进行翻转&#xff0c;请你返回修改后的链表。 k 是一个正整数&#xff0c;它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍&#xff0c;那么请将最后剩余的节点保持原有顺序。 你不能只…

【Python数据结构与算法】——(线性结构)精选好题分享,不挂科必看系列

&#x1f308;个人主页: Aileen_0v0&#x1f525;系列专栏:<<Python数据结构与算法专栏>>&#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 时间复杂度大小比较 1.time complexity of algorithm A is O(n^3) while algorithm B is O(2^n). Which o…

CentOS 7 安装CMake指定版本3.21.2

背景&#xff1a;今天在CentOS 7 电脑上安装C 日志框架SpdLog-1.12.0&#xff0c;提示如下错误信息&#xff1a; [rootlocalhost build]# cmake .. && make -j CMake Error at CMakeLists.txt:3 (cmake_minimum_required):CMake 3.10...3.21 or higher is required. …

OSI参考模型

目录 一. OSI参考模型的各层功能二. 网络排错三. 网络安全四. 实体、协议、服务和服务访问点SAP五. TCP IP体系结构 一. OSI参考模型的各层功能 \quad \quad \quad \quad 我们首先来看应用层实现的功能 每个字段的各种取值所代表的意思 \quad \quad 比如要保存的文件内容是ab…

DAC实验(DAC 输出三角波实验)(DAC 输出正弦波实验)

DAC 输出三角波实验 本实验我们来学习使用如何让 DAC 输出三角波&#xff0c;DAC 初始化部分还是用 DAC 输出实验 的&#xff0c;所以做本实验的前提是先学习 DAC 输出实验。 使用 DAC 输出三角波&#xff0c;通过 KEY0/KEY1 两个按键&#xff0c;控制 DAC1 的通道 1 输出两种…

论文速览 Arxiv 2023 | DMV3D: 单阶段3D生成方法

注1:本文系“最新论文速览”系列之一,致力于简洁清晰地介绍、解读最新的顶会/顶刊论文 论文速览 Arxiv 2023 | DMV3D: DENOISING MULTI-VIEW DIFFUSION USING 3D LARGE RECONSTRUCTION MODEL 使用3D大重建模型来去噪多视图扩散 论文原文:https://arxiv.org/pdf/2311.09217.pdf…

SQL SERVER 2008安装教程

SQL SERVER 2008安装教程 本篇文章介绍了安装SQL Server 2008企业版的软硬件配置要求&#xff0c;安装过程的详细步骤&#xff0c;以及需要注意的事项。 安装步骤 (1). 在安装文件setup.exe上&#xff0c;单击鼠标右键选择“以管理员的身份运行”&#xff0c;如下图所示&#…

某60区块链安全之不安全的随机数实战一

区块链安全 文章目录 区块链安全不安全的随机数实战一实验目的实验环境实验工具实验原理实验内容攻击过程分析合约源代码漏洞EXP利用 不安全的随机数实战一 实验目的 学会使用python3的web3模块 学会以太坊不安全的随机数漏洞分析及利用 实验环境 Ubuntu18.04操作机 实验工…

基于深度学习的恶意软件检测

恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞&#xff0c;例如可以被劫持的合法软件&#xff08;例如浏览器或 Web 应用程序插件&#xff09;中的错误。 恶意软件渗透可能会造成灾难性的后果&#xff0c;包括数据被盗、勒索或网…

【Go学习之 go mod】gomod小白入门,在github上发布自己的项目(项目初始化、项目发布、项目版本升级等)

参考 Go语言基础之包 | 李文周的博客Go mod的使用、发布、升级 | weiGo Module如何发布v2及以上版本1.2.7. go mod命令 — 新溪-gordon V1.7.9 文档golang go 包管理工具 go mod的详细介绍-腾讯云开发者社区-腾讯云Go Mod 常见错误的原因 | walker的博客 项目案例 oceanweav…