RHCE(RHCSA复习:npm、dnf、源码安装实验)

news2025/3/17 11:24:25

七、软件管理

7.1 rpm 安装

7.1.1 挂载

[root@localhost ~]# ll /mnt
total 0
drwxr-xr-x. 2 root root 6 Oct 27 21:32 hgfs

[root@localhost ~]# mount /dev/sr0 /mnt   #挂载
mount: /mnt: WARNING: source write-protected, mounted read-only.
[root@localhost ~]# 

[root@localhost ~]# ll /mnt    #挂载后再次查看,里面是 ISO 镜像的内容
total 44
drwxr-xr-x. 1 root root  2048 Oct 25  2023 AppStream
drwxr-xr-x. 1 root root  2048 Oct 25  2023 BaseOS
drwxrwxr-x. 1 root root  2048 Oct 25  2023 EFI
-r--r--r--. 1 root root  8154 Oct 25  2023 EULA
-r--r--r--. 1 root root  1455 Oct 25  2023 extra_files.json
-r--r--r--. 1 root root 18092 Oct 25  2023 GPL
drwxrwxr-x. 1 root root  2048 Oct 25  2023 images
drwxrwxr-x. 1 root root  2048 Oct 25  2023 isolinux
-r--r--r--. 1 root root   103 Oct 25  2023 media.repo
-r--r--r--. 1 root root  1669 Oct 25  2023 RPM-GPG-KEY-redhat-beta
-r--r--r--. 1 root root  3682 Oct 25  2023 RPM-GPG-KEY-redhat-release

AppStream、BaseOS:rpm包的所在目录,是 Red Hat 系列操作系统中的软件仓库分类

7.1.2创建/rpm目录,将/mnt下的仓库拷贝到/rpm下

#新建一个目录,将AppStream、BaseOS拷贝
[root@localhost ~]# mkdir /rpm   
[root@localhost ~]# cp /mnt/AppStream/ /rpm/ -r

#拷贝需要时间,因此要新建一个xshell连接该虚拟机,将BaseOS也拷贝过来
[root@localhost ~]# cp /mnt/BaseOS/ /rpm/ -r

将AppStream、BaseOS作为仓库,供后面的DNF来使用

7.1.3 查看/rpm下的信息

[root@localhost ~]# ll /rpm       #列出位于 /rpm 目录下的文件和子目录的详细信息。
total 0
drwxr-xr-x. 4 root root 38 Mar 15 11:40 AppStream
drwxr-xr-x. 4 root root 38 Mar 15 11:41 BaseOS

[root@localhost ~]# tree /rpm    #以树状图的形式列出指定目录( /rpm)下的所有文件和子目录,以及它们的嵌套层次。

7.1.4 切换路径到/rpm/BaseOS/Packages/,查看后发现有大量的软件包

[root@localhost ~]# cd /rpm/BaseOS/
[root@localhost BaseOS]# ll   #/rpm/BaseOS下有两个包Packages、repodata
total 92
drwxr-xr-x. 2 root root 61440 Mar 15 11:41 Packages
drwxr-xr-x. 2 root root  4096 Mar 15 11:41 repodata
[root@localhost BaseOS]# cd Packages/
[root@localhost Packages]# ll
total 1310536
-r--r--r--. 1 root root     84797 Mar 15 11:41 accel-config-3.5.3-2.el9.i686.rpm
-r--r--r--. 1 root root     81657 Mar 15 11:41 accel-config-3.5.3-2.el9.x86_64.rpm
-r--r--r--. 1 root root     54604 Mar 15 11:41 accel-config-libs-3.5.3-2.el9.i686.rpm
-r--r--r--. 1 root root     54176 Mar 15 11:41 accel-config-libs-3.5.3-2.el9.x86_64.rpm

7.1.5 如果我们要安装zsh-5.8-9.el9.x86_64.rpm包,则使用下面的命令

root@localhost Packages]# rpm -i zsh-5.8-9.el9.x86_64.rpm
#-i:这个选项表示你想要安装一个新的 RPM 包。它告诉 rpm 命令执行安装操作。

[root@localhost Packages]# rpm -qa | grep zsh
#查询系统中所有已安装的 RPM 包,并过滤出名称中包含 "zsh" 的包。
#-qa 中的 -q 表示查询模式,而 -a 则表示所有包。

7.1.6 删除该包

[root@localhost Packages]# rpm -e zsh
#-e:卸载

7.2 dnf 本地安装

7.2.1 切换路径到/etc/yum.repos.d/,清空仓库,为演示dnf安装做准备

[root@localhost Packages]# cd  /etc/yum.repos.d/                             #cd /etc/yum.repos.d/:这一步将当前工作目录更改到 /etc/yum.repos.d/,这是存放 YUM(Yellowdog Updater, Modified)仓库配置文件的目录。
[root@localhost yum.repos.d]# ll
total 8
-rw-r--r--. 1 root root 358 Nov  2 10:02 redhat.repo
-rw-r--r--. 1 root root 113 Nov  2 10:00 rpm.repo
[root@localhost yum.repos.d]# rm -rf *
[root@localhost yum.repos.d]# ll
total 0
[root@localhost yum.repos.d]# cd

[root@localhost ~]# dnf install http -y
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

Error: There are no enabled repositories in "/etc/yum.repos.d", "/etc/yum/repos.d", "/etc/distro.repos.d".
#该错误表明 DNF/YUM 在尝试查找软件包进行安装时,未能找到任何已启用的软件仓库。这通常是因为 /etc/yum.repos.d/ 目录中没有任何有效的 .repo 文件,正如之前命令中所做的那样清空了该目录。

在这里插入图片描述

注意:前面还有步骤:7.1.1、7.1.2

7.2.2 定义仓库bendi.repo,一般在/etc/yum.repos.d/目录下

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
total 4
-rw-r--r--. 1 root root 358 Mar 15 15:58 redhat.repo
[root@localhost yum.repos.d]# vim bendi.repo
[root@localhost yum.repos.d]# cat bendi.repo
[baseos]
name=baseos
baseurl=/rpm/BaseOS
gpgcheck=0
[appstream]
name=appstream
baseurl=/rpm/AppStream
gpgcheck=0

7.2.3 安装

[root@localhost ~]# dnf install httpd -y
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

baseos                                                      133 MB/s | 2.0 MB     00:00    
appstream                                                   150 MB/s | 6.5 MB     00:00    
Dependencies resolved.
============================================================================================
 Package                    Architecture   Version                  Repository         Size
============================================================================================
Installing:
 httpd                      x86_64         2.4.57-5.el9             appstream          52 k
#软件包名                     架构信息        具体版本                  从 appstream 仓库安装                    

7.3 dnf网络仓库安装

7.3.1 删除bendi.repo,为网络安装做准备

[root@localhost yum.repos.d]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
total 8
-rw-r--r--. 1 root root 113 Mar 15 16:24 bendi.repo
-rw-r--r--. 1 root root 358 Mar 15 15:58 redhat.repo
[root@localhost yum.repos.d]# rm -rf bendi.repo

在这里插入图片描述

注意:前面还有步骤:7.1.1、7.1.2,然后将本地仓库换成下文中的网络仓库

7.3.2 编写网络仓库

[root@localhost yum.repos.d]# vim wangluo.repo
[root@localhost yum.repos.d]# cat wangluo.repo
[baseos]
name=baseos
baseurl=http://47.108.86.156/rhel9.0/x86_64/dvd/BaseOS/
gpgcheck=0
[appstream]
name=appstream
baseurl=http://47.108.86.156/rhel9.0/x86_64/dvd/AppStream
gpgcheck=0

#http://47.108.86.156/rhel9.0/x86_64/dvd/BaseOS/和http://47.108.86.156/rhel9.0/x86_64/dvd/AppStream是网络连接,
#baseurl:这个参数指定了软件仓库的 URL 地址。在这个例子中,baseurl 设置为http://47.108.86.156/rhel9.0/x86_64/dvd/BaseOS/ 和 http://47.108.86.156/rhel9.0/x86_64/dvd/AppStream/,这意味着 DNF 将从这个远程服务器上下载所需的软件包。

7.3.3 查看网络仓库

[root@localhost yum.repos.d]# cd
[root@localhost ~]# dnf repolist    #列出所有已启用的仓库,意味着 DNF 可以从这些仓库下载和安装软件包。
Updating Subscription Management repositories.
Unable to read consumer identity

This system is not registered with an entitlement server. You can use subscription-manager to register.

repo id                                       repo name
appstream                                     appstream
baseos                                        baseos
#repo id:仓库的唯一标识符,在你的配置文件中对应于方括号内的名称,例如 [baseos] 和 [appstream]。
#repo name:仓库的描述性名称,对应于 .repo 文件中的 name 字段。

7.3.4 下载

[root@localhost ~]# dnf install vsftpd -y

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

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

相关文章

Mybatis3 调用存储过程

1. 数据库MySQL,user表 CREATE TABLE user (USER_ID int NOT NULL AUTO_INCREMENT,USER_NAME varchar(100) NOT NULL COMMENT 用户姓名,AGE int NOT NULL COMMENT 年龄,CREATED_TIME datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,CREATED_BY varchar(100) NOT NUL…

HiPixel开源AI驱动的图像超分辨率的原生macOS 应用程序,使用 SwiftUI 构建并利用 Upscayl 强大的 AI 模型

一、软件介绍 文末提供程序和源码下载 HiPixel是一个开源程序基于SwiftUI构建的macOS原生应用程序,用于AI驱动的图像超分辨率,并利用Upscayl的强大AI模型。 二、软件特征 具有 SwiftUI 界面的原生 macOS 应用程序使用 AI 模型进行高质量图像放大通过 G…

缓存和客户端数据存储体系(Ark Data Kit)--- 应用数据持久化(首选项持久化、K-V、关系型数据库)持续更新中...

Core File Kit做怎删改查操作不便,用Ark Data Kit。 功能介绍 ArkData (方舟数据管理)为开发者提供数据存储、数据管理和数据同步能力,比如联系人应用数据可以保存到数据库中,提供数据库的安全、可靠以及共享访问等管…

本地部署OpenManus及原理介绍

概述: 最近Minaus特别火,随后开源社区就有项目尝试复刻Minaus,项目名称为OpenManus,原理是用推理模型为决策者,将我们输入的问题进行分解后调用本地工具执行。 OpenManus安装: 本人在Ubuntu桌面版本上安装…

高效手机检测:视觉分析技术的优势

在当今社会,手机已成为人们日常生活和工作中不可或缺的工具。然而,在某些特定场合,如考场、工作场所等,手机的使用却可能带来负面影响。因此,如何有效监测和防止在这些场合偷用手机的行为,成为了一个亟待解…

Spring Boot配置类原理、Spring Boot核心机制理解,以及实现自动装置的底层原理

目的:从底层源码角度分析 Spring Boot 配置类以及自动装载的底层原理 文章目录 1. Spring Boot 配置类实现自动装载1.1 @Configuration注解1.2 @Configuration 注解完成 bean 注入流程图1.3 @ConfigurationProperties注解赋值2. Spring Boot的核心机制:自动装配2.1 @SpringBo…

01-Canvas-使用fabric初始

fabric官网&#xff1a; https://fabric5.fabricjs.com/demos/ 创建画布并绘制 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-sca…

树莓派 连接 PlutoSDR 教程

在树莓派5上安装PlutoSDR&#xff08;ADALM-Pluto&#xff09;的驱动程序&#xff0c;主要需要安装相关的库和工具&#xff0c;以便与PlutoSDR通信&#xff0c;比如libiio和libad9361&#xff0c;并确保系统能够识别设备。由于树莓派5运行的是基于Linux的系统&#xff08;通常是…

Git使用(二)--如何配置 GitHub 远程仓库及本地 Git 环境

在日常的开发过程中&#xff0c;使用版本控制工具 Git 是一个非常重要的技能&#xff0c;特别是对于管理和协作开发。通过 GitHub&#xff0c;我们可以轻松地进行代码版本管理和共享。这篇博客将带您一步步学习如何配置 Git 环境并将本地仓库与 GitHub 远程仓库连接起来。 一、…

在Pycharm配置conda虚拟环境的Python解释器

〇、前言 今天在配置python解释器时遇到了这样的问题 经过一下午自行摸索、上网搜寻后&#xff0c;终于找到的解决的方案&#xff0c;遂将该方法简要的记录下来&#xff0c;以备后用&#xff0c;并希望能帮助到有同样问题或需求的朋友:) 我所使用的软件的版本如下&#xff0c;假…

零基础keil:设置注释快捷键

1.打开快捷键设置&#xff1a; 在Keil中&#xff0c;选择菜单栏中的“Settings”&#xff0c;然后选择“Shortcuts”来打开快捷键设置界面。 2.选择注释命令&#xff1a; 在快捷键设置界面中&#xff0c;找到与注释相关的命令&#xff0c;如“Comment Selection”&#xff0…

Java中关于Optional的 orElse 操作,以及 orElse 与 orElseGet 的区别

文章目录 1. 大概说明2. 详细分析2.1 .orElse 操作2.2 .orElse 的作用&#xff1a;避免空指针异常2.3 为什么要用&#xff1f;2.4 orElseGet如何使用2.5 orElse和orElseGet的区别 1. 大概说明 这篇文章的目的是为了说明&#xff1a; orElse 如何使用orElseGet 如何使用两者的…

TCP/IP协议中三次握手(Three-way Handshake)与四次挥手(Four-way Wave)

TCP/IP协议中三次握手&#xff08;Three-way Handshake&#xff09;与四次挥手&#xff08;Four-way Wave&#xff09; 一、TCP三次握手&#xff08;Three-way Handshake&#xff09;二、TCP四次挥手&#xff08;Four-way Wave&#xff09;三、常见问题解答总结为什么三次握手不…

python学智能算法(八)|决策树

【1】引言 前序学习进程中&#xff0c;已经对KNN邻近算法有了探索&#xff0c;相关文章链接为&#xff1a; python学智能算法&#xff08;七&#xff09;|KNN邻近算法-CSDN博客 但KNN邻近算法有一个特点是&#xff1a;它在分类的时候&#xff0c;不能知晓每个类别内事物的具…

【QT:控件】

目录 控件状态&#xff1a;​编辑 geometry : window frame windowlcon: qrc机制 qrc的使用方式&#xff1a; window opacity cursor font: ToolTip focusPolicy: styleSheet: 按钮类控件&#xff1a; PushButton: 给按钮添加图标&#xff1a; 给按钮添加快捷键…

Python(最新版)集成开发环境PyCharm下载安装详细教程

Python 下载和安装 1.进入Python官网 Download Python | Python.org&#xff0c;点击Downloads&#xff0c;这里以Windows为例 2.选择下载Python 3.13.2 Windows 64位的版本。注意&#xff1a;不能在Windows 7 或更早的版本上使用。 3.打开文件&#xff0c;会自动出现安装界…

uniapp 实现的步进指示器组件

采用 uniapp 实现的一款步进指示器组件&#xff0c;展示业务步骤进度等内容&#xff0c;对外提供“前进”、“后退”方法&#xff0c;让用户可高度自定义所需交互&#xff0c;适配 web、H5、微信小程序&#xff08;其他平台小程序未测试过&#xff0c;可自行尝试&#xff09; 可…

大模型-提示词调优

什么是提示词 提示词&#xff08;Prompt&#xff09;在大模型应用中扮演着关键角色&#xff0c;它是用户输入给模型的一段文本指令 。简单来说&#xff0c;就是我们向大模型提出问题、请求或描述任务时所使用的文字内容。例如&#xff0c;当我们想让模型写一篇关于春天的散文&a…

继承知识点—详细

一&#xff1a;普通写法 package extend_;public class Extends01 {public static void main(String[] args) {Pubil pubil new Pubil();pubil.name"小明";pubil.age18;pubil.testing();pubil.setScore(60);pubil.showInfo();System.out.println("-----------…

设备管理VTY(Telnet、SSH)

实验目的&#xff1a;物理机远程VTY通过telnet协议登录AR1,ssh协议登录AR2和sw 注意配置Cloud1&#xff1a; 注意&#xff01;&#xff01;博主的物理机VMnet8--IP&#xff1a;192.168.160.1&#xff0c;所以AR1路由0/0/0端口才添加IP&#xff1a;192.168.160.3&#xff0c;每个…