当前位置: 首页 > news >正文

linux笔记(yum本地源仓库搭建)

一、准备工作

安装必要的软件包

在大多数 Linux 发行版中,Yum 已经默认安装。如果系统中没有安装,可以根据发行版的包管理器进行安装。

准备本地源文件

可以是光盘镜像(如果是从光盘安装系统),或者是已经下载好的系统安装包。

二、挂载光盘(如果使用光盘镜像作为源)

创建挂载点

   mkdir /mnt/cdrom

挂载光盘

   mount /dev/cdrom /mnt/cdrom/AppStream

如果不是使用物理光盘,而是光盘镜像文件(例如 .iso 文件),可以使用以下命令挂载(假设镜像文件路径为 /path/to/your_iso_file.iso):

   mount -o loop /path/to/your_iso_file.iso /mnt/cdrom

三、配置 Yum 本地源

备份原始的 Yum 配置文件(可选,但建议)

   cp /etc/yum.repos.d/* /etc/yum.repos.d/backup/

创建本地源配置文件

使用文本编辑器创建一个新的 .repo 文件,例如 /etc/yum.repos.d/local.repo,内容如下:

   [local]

   name=Local Yum Repository

   baseurl=file:///mnt/cdrom/AppStream

   enabled=1

   gpgcheck=0

解释:

[local]:这是仓库的标识,可以自定义。

name:仓库的名称,用于描述该仓库。

baseurl:指定源的路径,file:// 表示本地文件系统,/mnt/cdrom/AppStream 是我们挂载光盘或镜像文件的目录。

enabled:设置为 1 表示启用该仓库。

gpgcheck:设置为 0 表示不检查 GPG 签名

  1. BaseOS 中的软件依赖
    • 内核相关依赖
      • 内核模块:BaseOS 包含了各种内核模块,这些模块是操作系统内核功能的扩展。例如,网络驱动模块(如e1000e用于英特尔以太网网卡驱动)、文件系统驱动模块(如ext4文件系统相关模块)等。当安装需要特定网络功能或者存储功能的软件时,会依赖这些内核模块。
      • 内核工具:如kmod工具,用于管理内核模块的加载和卸载。其他软件如果需要动态加载或卸载内核模块,会依赖这个工具。
    • 系统库依赖
      • C 标准库(glibc):这是 Linux 系统中最基本的库之一,几乎所有的软件都间接或直接依赖它。它提供了诸如内存管理、字符串处理、文件 I/O 等基本功能。许多编程语言运行时环境(如 C、C++)和系统工具都依赖 glibc 来实现基本的功能操作。
      • 系统安全库(如 OpenSSL):用于加密、解密、数字证书等安全相关的操作。软件如果涉及网络通信的安全(如 HTTPS 协议的实现)、用户认证等功能,会依赖 OpenSSL 库。
      • 系统配置库(如 libconfig):一些软件需要读取和解析系统配置文件,例如/etc目录下的各种配置文件,就可能依赖像 libconfig 这样的库来进行配置文件的读取和处理。
    • 基本命令行工具依赖
      • 文件和目录操作工具(如cpmvrm:这些工具的共享库是许多脚本和自动化工具依赖的基础。例如,一个用于备份文件的脚本可能会依赖cp命令的功能来复制文件,而cp命令本身的运行依赖于 BaseOS 中的文件系统操作相关的库。
      • 文本处理工具(如grepsedawk:在处理日志文件、配置文件等文本文件时,很多软件会调用这些工具或者依赖它们的功能。例如,日志分析软件可能会依赖grep来过滤特定的日志记录。
  2. AppStream 中的软件依赖
    • 开发工具依赖
      • 编程语言运行时和编译器:如 Python、Java 的运行时环境(python3java - openjdk)以及对应的编译器。当开发和运行 Python 或 Java 程序时,软件会依赖这些运行时环境提供的库和工具。例如,一个基于 Django(Python web 框架)开发的网站应用程序,会严重依赖 Python 运行时环境及其相关的库。
      • 代码编辑器和集成开发环境(IDE):像vimemacs等文本编辑器或者更复杂的 IDE(如EclipseIntelliJ IDEA)的软件依赖。例如,开发 Java 程序可能会依赖Eclipse的相关插件和库来进行代码编辑、调试和构建。
    • 图形化软件依赖
      • 图形库(如 GTK+、Qt):许多图形化应用程序依赖这些图形库来构建用户界面。例如,GIMP(图像编辑软件)依赖 GTK + 库来实现其图形界面的显示和交互功能。而Qt库则被许多跨平台的软件(如VLC媒体播放器)使用,用于在不同操作系统上提供一致的图形界面体验。
      • 桌面环境组件(如 GNOME、KDE):如果安装的软件是基于特定桌面环境开发的,会依赖桌面环境的相关组件。例如,一个 GNOME 桌面环境下的小工具软件会依赖 GNOME 的库来实现与桌面环境的集成,如在系统托盘显示图标、与 GNOME 的主题风格保持一致等。
    • 服务器和网络应用程序依赖
      • Web 服务器软件(如httpdnginx:它们有自己的一套依赖关系,包括配置文件解析库、网络通信库等。例如,httpd依赖apr(Apache Portable Runtime)库来实现跨平台的运行和高效的网络通信功能。
      • 数据库服务器(如mariadbpostgresql:数据库软件依赖大量的库来实现数据存储、查询、事务处理等功能。例如,mariadb依赖系统的存储库来实现数据在磁盘上的存储,还依赖网络通信库来处理客户端的连接请

四、测试 Yum 本地源

清除 Yum 缓存

yum clean all

生成新的缓存

yum makecache

尝试安装软件包

例如,安装一个常用的软件包,如 tree:

   yum install tree

如果能够正常安装,说明 Yum 本地源仓库搭建成功

相关文章:

linux笔记(yum本地源仓库搭建)

一、准备工作 安装必要的软件包 在大多数 Linux 发行版中,Yum 已经默认安装。如果系统中没有安装,可以根据发行版的包管理器进行安装。 准备本地源文件 可以是光盘镜像(如果是从光盘安装系统),或者是已经下载好的系…...

K8S系列-Kubernetes网络

一、Kubernetes网络模型 ​ Kubernetes网络模型设计的一个基础原则是:每个Pod都拥有一个独立的IP地址,并假定所有Pod都在一个可以直接连通的、扁平的网络空间中,不管它们是否运行在同一个Node(宿主机)中,都…...

Excel 对数据进行脱敏

身份证号脱敏:LEFT(A2,6)&REPT("*",6)&RIGHT(A2,6) 手机号脱敏:LEFT(B2,3)&REPT("*",5)&RIGHT(B2,3) 姓名脱敏:LEFT(C2,1)&REPT("*",1)&RIGHT(C2,1) 参考: excel匹配替换…...

OJ-1014田忌赛马

示例1: 输入 11 8 20 10 13 7 输出 1 示例2: 输入 11 12 20 10 13 7 输出 2 示例3: 输入 1 2 3 4 5 6 输出 6 解题思路: 问题的关键在于调整数组a的顺序,使得尽可能多的a[i] > b[i]。为了达到最优结果,我们可以采用贪心的策…...

Excel重新踩坑3:条件格式;基本公式运算符;公式中的单元格引用方式;公式菜单栏其他有用的功能说明;

0、前言:以下内容是学习excel公式的基础内容。 1、需求:将表格特定区域中数值大小大于等于30,小于等于80的单元格,颜色填充为红色,大于80的,颜色填充为黄色。 新建规则之后也可以通过该功能清除规则。 2、基…...

【AI知识点】FAISS如何提高检索效率?

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】 FAISS(Facebook AI Similarity Search) 是一个高效的相似度搜索库,专门设计用于处理大规模的向量检索任务,尤其是在稠密向量的检索中表现出色。FAISS 能够显著提高检索效率…...

【Git】Gitlab进行merge request的时候,出现待合并分支合并了主分支的问题的解决

最近在公司开始用merge request进行代码合并了。 然后不知道为啥,如果待合并分支(A)进行merge request到主分支(B)的时候,如果A和B有冲突,然后我在gitlab上使用页面进行冲突的解决,比…...

jetson nano ubuntu20.04安装ros-Noetic

jetson nano ubuntu20.04 安装ros-Noetic 一. 初始准备nano连接wifinano网络配置二. 查看系统版本三. 开始安装1. 移除不需要的 amd64 架构2. 配置软件源3.安装 ROS Melodic`4. 解决 rosdep update报错`一. 初始准备 nano连接wifi nano网络配置 二. 查看系统版本 lsb_relea…...

【数据结构与算法】走进数据结构的“时间胶囊”——栈

大家好,我是小卡皮巴拉 文章目录 目录 引言 一.栈的基本概念 1.1 定义 1.2 特性 1.3 基本操作 二.栈的实现方式 2.1 顺序栈 2.2 链栈 三.顺序栈的实现 定义顺序栈的结构 初始化 入栈 检查栈是否为空 出栈 销毁 四.链栈的实现 定义链栈的结构 初始…...

伺服增量式和绝对式的本质区别?

伺服增量式和绝对式的本质区别? 增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。以转动时输出脉冲,通过计数设备来知道其位置,当编码器不动或停电时&#xff0c…...

应对 .DevicData-X-XXXXXXXX 勒索病毒:防御与恢复策略

引言 随着信息技术的快速发展,网络安全问题愈发严峻。勒索病毒作为一种恶性网络攻击手段,已成为企业和个人面临的重大威胁之一。尤其是 .DevicData-X-XXXXXXXX 勒索病毒,其通过加密用户数据并勒索赎金,给受害者带来了巨大的经济损…...

【代码随想录——数组——二刷】

数组 1. 二分查找(704) 给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。 1.1 二分法的第一种写法 我们定义 target 是在…...

spring-boot(4)

1.VueRouter安装与使用 2.状态管理VueX 3. 4. 5. 6....

深度学习模型:原理、架构与应用

深度学习(Deep Learning)是机器学习中的一个分支,基于人工神经网络的发展,尤其是多层神经网络的研究,使其在语音识别、图像处理、自然语言处理等领域取得了显著进展。深度学习的核心是通过大量数据的训练,学习到数据的内在结构和模式,并且具备自动从复杂的输入中提取特征…...

玩客云Armbian安装Casaos

#armbian安装docker apt install docker.io #armbian判断docker是否正常运行 systemctl status docker #查看版本 docker version #安装casaos方式一 wget -qO- https://get.casaos.io | bash #安装casaos方式二 curl -fsSL https://get.casaos.io | bash...

redis过期提醒

文章目录 redis过期提醒 redis过期提醒 有一次看redis的配置文件发现一个notify-keyspace-events配置,注释里边长篇大论的,那我得看看这是干啥的,看完注释内容,发现不得了了,redis竟然还有过期提醒的功能 接下来得大…...

AnaTraf | 提升网络性能:深入解析网络关键指标监控、TCP重传与TCP握手时间

AnaTraf 网络性能监控系统NPM | 全流量回溯分析 | 网络故障排除工具 在当今的数字化时代,网络的稳定性和性能对企业的运营效率至关重要。无论是内部通信、应用程序的运行,还是对外提供服务,网络都发挥着关键作用。对于网络工程师或IT运维人员…...

黑盒测试和白盒测试的具体方法(附加实际应用中的技巧和注意事项)

黑盒测试的具体方法 黑盒测试有多种具体的方法,以下是几种常见的黑盒测试技术: 等价类划分 定义:将输入数据划分为若干等价类,每个等价类中的数据被认为是等效的。目的:减少测试用例数量,同时覆盖所有可…...

基于ssm的小区物业管理系统

文未可获取一份本项目的java源码和数据库参考。 题目简介: 我国物权法的颁布以及经济的快速发展进一步提升了社区居民对物业服务和物业管理的要求,特别是对于社区安全、社区停车以及社区维修等各个方面提出了更为严格的要求。在这种背景下社区物业必须…...

4本SCI/SSCI期刊更名,10月WOS更新!速看!

期刊动态 2024年10月科睿唯安期刊目录更新 2024年10月22日,科睿唯安更新了WOS期刊目录,此次更新,期刊被编辑除名11本,停止出版1本,4本更名,停产1本,新增63本。 剔除期刊 11本期刊被剔 Enginee…...

Qwen3-ASR-0.6B作品集:Qwen3-ForcedAligner-0.6B时间戳精度图谱

Qwen3-ASR-0.6B作品集:Qwen3-ForcedAligner-0.6B时间戳精度图谱 你有没有想过,一段语音里的每个字、每个词,甚至每个音节,是在哪个精确的时间点被说出来的?这听起来像是电影后期制作里的黑科技,但现在&…...

苹果设备激活锁终极解锁指南:5步免费绕开iOS 15-16的iCloud限制

苹果设备激活锁终极解锁指南:5步免费绕开iOS 15-16的iCloud限制 【免费下载链接】applera1n icloud bypass for ios 15-16 项目地址: https://gitcode.com/gh_mirrors/ap/applera1n 还在为忘记Apple ID密码而无法使用自己的iPhone或iPad而烦恼吗?…...

MySQL解析器的性能优化:从理论到实践

MySQL解析器的性能优化:从理论到实践 引言 作为一名在数据深渊里捞了十几年 Bug 的女码农,我见过太多因为解析器性能问题导致的数据库瓶颈。在 MySQL 数据库中,解析器的性能直接影响 SQL 语句的处理速度和系统的整体性能。今天,我…...

果实采摘机械手的设计【论文+CAD图纸+Creo三维+外文文献翻译】

果实采摘机械手作为现代农业装备领域的重要创新,其核心作用在于解决传统人工采摘效率低、劳动强度大、成本高等问题。通过机械结构与控制系统的协同设计,该设备可模拟人手抓取动作,精准完成果实识别、定位、采摘及收集全流程,显著…...

避坑指南:Unreal导航网格NavMesh生成与Agent属性设置的5个常见误区

Unreal引擎导航系统避坑指南:NavMesh生成与Agent配置的5个关键误区 在Unreal引擎中构建可靠的AI寻路系统时,许多开发者常陷入相似的陷阱。当AI角色频繁卡在门槛边缘、拒绝攀爬斜坡或选择匪夷所思的绕路路线时,问题往往不在于代码逻辑&#xf…...

VMware 虚拟机 Kali Linux 光标消失?五步实操攻略轻松找回

在 VMware Workstation Pro 中运行 Kali Linux 时,不少用户会遇到 “光标隐形” 的棘手问题 —— 系统可正常操作,但光标一进入虚拟机窗口就消失。这一现象多由硬件兼容性、驱动配置或增强工具缺失导致,并非硬件故障。本文整合社区实测有效方…...

C++实战:高精度阶乘算法的实现与优化

1. 为什么我们需要高精度阶乘算法? 当你第一次学习编程时,可能会用循环或递归来实现阶乘计算。比如用C写个简单的for循环,轻松计算出5! 120。但当你尝试计算20!时,事情就开始变得有趣了——你会发现结果完全不对,甚至…...

IntelliJ IDEA 安装与环境配置指南(2026 最新)

IntelliJ IDEA 是 Java 开发首选 IDE,社区版免费开源、旗舰版功能更全;IDE 内置 JBR 运行环境,开发 Java 项目需单独配置 JDK。以下是完整安装与配置流程。 一、安装前准备 1. 系统要求(2026 官方) 表格 配置项最低…...

接口测试--Day5

Pytest是一个流行的测试框架,广泛应用于单元测试、集成测试和功能测试。它具有简单、灵活、可扩展的特点,提供了丰富的功能和插件儿生态系统,它简化了测试的编写和组织拍,通过丰富的功能和简洁的语法,让测试变得容易灵…...

电视盒子播放视频总出错?TVBoxOSC让所有格式文件流畅播放

电视盒子播放视频总出错?TVBoxOSC让所有格式文件流畅播放 【免费下载链接】TVBoxOSC TVBoxOSC - 一个基于第三方项目的代码库,用于电视盒子的控制和管理。 项目地址: https://gitcode.com/GitHub_Trending/tv/TVBoxOSC 你是否遇到过电视盒子播放视…...