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

软件包的管理

概念

在早期Linux系统中,要想在Linux系统中安装软件只能采取编译源码包的方式进行安装,所以早期安装软件是一件非常困难、耗费耐心的事情,而且大多数服务程序仅提供源代码,还需要运维人员编译后自行解决软件之间的依赖关系。所以在早期对Linux的运维人员技术能力要求非常高,而还需要有良好的耐心。

在经过一段时间的发展,RedHat公司推出了一款软件包管理器(RPM,为Linux系统的软件安装提供了便捷的服务,它可以实现像windows系统中的控制面板那样,建立统一的数据库,祥细记录软件信息,并能够自动分析依赖关系,使运维人员的工效率大大提高。即使有了RPM能够帮助用户查询软件之间的依赖关系,但问题还是需要运维人员自己来解决,而有些大型软件可能与数十个程序有依赖关系,在这种情况下安装软件依然是很繁锁,所以又出现了一款新的软件,即YUM软件仓库(DNF),而款软件的出现大大的降低了安装难度和复杂度。YUM软件仓库不但可以根据用户的要求分析出所需的软件包及其相关的依赖关系,而且还可以自动从服务器下载软件包并安装到系统。

RPM软件安装

安装语法:rpm 参数 软件名

常用参数: 

RPM安装软件包名称解释: 

 

  • 以.rpm格式发布的软件里面封装的都是经过编译过的二进制形式的软件,可以直接安装。
  • .rpm格式的文件又称为rpm软件包,简称rpm包

查询系统中已安装的所有rpm软件包

  • rpm -qa:查询系统中已安装的所有rpm软件包。
  • rpm -qa | wc -l:统计安装的rpm软件包个数。
  • rpm -qa | more:能够分页显示安装的软件包。

案例:使用 RPM 管理 telnet-server 软件包

1.telnet是什么

Telnet是teletype network的缩写,专业的说,Telnet是Internet上远程登录的一种程序;它可以让您的电脑通过网络登录到网络另一端的电脑上,甚至还可以存取那台电脑上的文件。

2.有什么用

Telnet服务器软件是我们最常用的远程登录服务器软件,是一种典型的客户机/服务器模型的服务,它应用Telnet协议来工作。那么,什么是Telnet协议?它都具备哪些特点呢?

Telnet是位于OSI模型的第7层---应用层上的一种协议,是一个通过创建虚拟终端提供连接到远程主机终端仿真的TCP/IP协议。这一协议需要通过用户名和口令进行认证,是Internet远程登陆服务的标准协议。应用Telnet协议能够把本地用户所使用的计算机变成远程主机系统的一个终端。它提供了三种基本服务:

Telnet定义一个网络虚拟终端为远程系统提供一个标准接口。客户机程序不必详细了解远程系统,他们只需构造使用标准接口的程序;

Telnet包括一个允许客户机和服务器协商选项的机制,而且它还提供一组标准选项; 

Telnet对称处理连接的两端,即Telnet不强迫客户机从键盘输入,也不强迫客户机在屏幕上显示输出。

3.可以用来干什么

Telnet 远程主机名

用户就会看到远程主机的欢迎信息或登录标志。在Windows系统中,用户将以具有图形界面的Telnet客户端程序与远程主机建立Telnet连接。

Telnet pingIP+端口号查看网络是否通常

1.查看是否安装有telnet

2.挂载光盘

3.安装telnet:进入到Packages文件夹

[root@localhost ~]#  rpm -qa |grep telnet
[root@localhost ~]# mkdir /mnt/cdrom
[root@localhost ~]# mount /dev/sr0 /mnt/cdrom
mount: /dev/sr0 写保护,将以只读方式挂载
mount: /dev/sr0 已经挂载或 /mnt/cdrom 忙/dev/sr0 已经挂载到 /run/media/root/CentOS 7 x86_64 上/dev/sr0 已经挂载到 /mnt/cdrom 上
[root@localhost ~]# cd /mnt/cdrom
[root@localhost cdrom]#  ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL
[root@localhost cdrom]# cd Packages
[root@localhost Packages]# ls telnet-*.rpm
telnet-0.17-66.el7.x86_64.rpm  telnet-server-0.17-66.el7.x86_64.rpm
[root@localhost Packages]# rpm -ivh telnet-0.17-66.el7.x86_64.rpm  telnet-server-0.17-66.el7.x86_64.rpm
准备中...                          ################################# [100%]
正在升级/安装...1:telnet-server-1:0.17-66.el7      ################################# [ 50%]2:telnet-1:0.17-66.el7             ################################# [100%][root@localhost Packages]# telnet 192.168.222.130 3306
Trying 192.168.222.130...
Connected to 192.168.222.130.
Escape character is '^]'.
N
5.7.40-log`,eEfV'ÿ!EnJ8\M.Fmysql_native_passwordConnection closed by foreign host.
[root@localhost Packages]# [root@localhost Packages]# netstat -n6
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
[root@localhost Packages]# 

Yum软件仓库安装     

yum软件仓库中的RPM软件包可以是由红帽官方发布的,也可以是由第三方发布的,当然也可以自己编写。Yum软件仓库的拓扑结构图如下所示:

Yum软件仓库     语法:yum [参数]     

常用参数:

 

 

配置软件安装仓库

方法一:配置本地yum仓库

1.挂载光驱:

[root@localhost ~]# mount /dev/cdrom /mnt/cdrom
mount: /dev/sr0 写保护,将以只读方式挂载
mount: /dev/sr0 已经挂载或 /mnt/cdrom 忙/dev/sr0 已经挂载到 /run/media/root/CentOS 7 x86_64 上/dev/sr0 已经挂载到 /mnt/cdrom 上
[root@localhost ~]# 

2.切换到存放yum仓库配置文件的目录,找到配置文件(/etc/yum.repos.d/redhat.repo) 

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost 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  CentOS-x86_64-kernel.repo
[root@localhost yum.repos.d]# 

 3.先备份下原来的配置文件

[root@localhost yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.bak
[root@localhost yum.repos.d]# ls
CentOS-Base.repo      CentOS-CR.repo         CentOS-fasttrack.repo  CentOS-Sources.repo  CentOS-x86_64-kernel.repo
CentOS-Base.repo.bak  CentOS-Debuginfo.repo  CentOS-Media.repo      CentOS-Vault.repo
[root@localhost yum.repos.d]# 

4.使用vim编辑器,打开配置文件,进行配置文件编辑:文件格式如下:

5.重新缓存信息

[root@localhost yum.repos.d]# yum clean all

6. 检查是否可以安装软件

[root@localhost yum.repos.d]# rpm -qa | grep vsftpd
[root@localhost yum.repos.d]# yum install vsftpd

方法二:配置网络yum仓库(阿里云yum源)

[root@localhost ~]# mv /etc/yum.repos.d /etc/yum.repos.d.bak
[root@localhost ~]# mkdir /etc/yum.repos.d
[root@localhost ~]# vim /etc/yum.repos.d/CentOS.repo # yum源的名称
[CentOS]
#描述信息
name=CentOS_DVD
#安装包位置
baseurl=file:///mnt/cdrom
#是否启动
enabled=1
#是否检查验证文件
gpgcheck=0[root@localhost ~]# mkdir /mnt/cdrom 
[root@localhost ~]# mount /dev/sr0 /mnt/cdrom 
[root@localhost ~]# yum clean all 
[root@localhost ~]# yum makecache --网络镜像源
[root@localhost network-scripts]# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo  
[root@localhost network-scripts]# yum makecache 
[root@localhost network-scripts]# cd /etc
[root@localhost etc]# ls yum.repos.d.bak/ 
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo    CentOS-Vault.repo
CentOS-CR.repo    CentOS-fasttrack.repo  CentOS-Sources.repo  CentOS-x86_64-kernel.repo
[root@localhost etc]# cp yum.repos.d.bak/CentOS-Base.repo yum.repos.d/CentOS_Base.rep   
[root@localhost etc]# cd yum.repos.d
[root@localhost yum.repos.d]# ll
总用量 12
-rw-r--r--. 1 root root 1664 9月  18 23:46 CentOS_Base.rep
-rw-r--r--. 1 root root 2523 9月   4 2022 CentOS-Base.repo
-rw-r--r--. 1 root root  190 9月  18 23:06 CentOS.repo
[root@localhost yum.repos.d]# sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \-e 's|^#baseurl=http://mirror.centos.org/centos|baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos|g' \-i.bak \/etc/yum.repos.d/CentOS_Base.repo[root@localhost yum.repos.d]# yum makecache

1.yun仓库的作用:管理系统中的rpm程序包

2. yum特点:安装程序简单方便;易用;减少公网带宽资源占用

3、yum仓库类型:

  

相关文章:

软件包的管理

概念 在早期Linux系统中,要想在Linux系统中安装软件只能采取编译源码包的方式进行安装,所以早期安装软件是一件非常困难、耗费耐心的事情,而且大多数服务程序仅提供源代码,还需要运维人员编译后自行解决软件之间的依赖关系。所以…...

常见入门级进销存系统合集

进销存系统是企业管理中不可或缺的一环,它们可以帮助企业有效管理库存、销售和采购等关键业务。然而,对于初创企业和小型企业来说,选择一个合适的进销存系统可能是一项挑战。在这篇文章中,我们将探讨入门级和资深级进销存系统之间…...

爬虫逆向实战(32)-某号店登录(RSA、补环境、混淆)

一、数据接口分析 主页地址:某号店 1、抓包 通过抓包可以发现登录接口是/publicPassport/login.do 2、判断是否有加密参数 请求参数是否加密? 通过查看“载荷”模块可以发现,有三个加密参数:username、password、captchaTok…...

正则表达式学习和高级用法

以下所有的验证都在 在线验证 1. 起始符 / 正则表达式的起始符2. 限定符 匹配前面的子表达式**1次或多次**。例如,zo 能匹配 "zo" 以及"zoo",但不能匹配 "z"。等价于 {1,}。 ? 匹配前面的子表达式**0次或1次**。例如…...

C# Onnx Yolov8 Fire Detect 火焰识别,火灾检测

效果 项目 代码 using Microsoft.ML.OnnxRuntime.Tensors; using Microsoft.ML.OnnxRuntime; using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using Syste…...

线程安全问题

目录 一、线程安全 二、线程安全问题 三、线程安全 1.同步代码块 2.同步方法 3.Lock锁 3.1常用方法: 3.2 死锁 3.3 练习: 四、生产者和消费者(线程通信问题) 一、线程安全 如果有多个线程在同时运行,而这些…...

【力扣每日一题】2023.9.18 打家劫舍Ⅲ

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 今天是打家劫舍3,明天估计就是打家劫舍4了。 今天的打家劫舍不太一样,改成二叉树了,不过规则没有变&…...

Docker基础学习

Docker 学习目标: 掌握Docker基础知识,能够理解Docker镜像与容器的概念 完成Docker安装与启动 掌握Docker镜像与容器相关命令 掌握Tomcat Nginx 等软件的常用应用的安装 掌握docker迁移与备份相关命令 能够运用Dockerfile编写创建容器的脚本 能够…...

esbuild中文文档-路径解析配置项(Path resolution - Alias、Conditions)

文章目录 路径解析配置项 Path resolution别名 Alias条件解析 Conditionsconditions是如何工作的 结语 哈喽,大家好!我是「励志前端小黑哥」,我带着最新发布的文章又来了! 老规矩,小手动起来~点赞关注不迷路&#xff0…...

您的应用存在隐藏最近任务列表名称的行为,不符合华为应用市场审核标准

最近各家应用市场,唯独华为审核被拒了。。理由是您的应用存在隐藏最近任务列表名称的行为,不符合华为应用市场审核标准。 根据华为给出的视频,app在任务队列(也就是俗称的安卓多任务管理后台)不显示应用名。因为我们ap…...

Spring的 webFlux 和 webMVC

看到一个测评文章,并发在300的时候webMVC 和 webFlux的处理能力不相上下, 当并发达到3000的时候, webFlux明显优于webMVC, 有图有真相, 我信了. webMVC 是 one-request-one thread 堵塞模式, flux是非阻塞模式, 是spring家族系列…...

【洛谷算法题】P5706-再分肥宅水【入门1顺序结构】

👨‍💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5706-再分肥宅水【入门1顺序结构】🌏题目描述🌏输入格式…...

android studio环境搭建让你的开发之旅更加简单

示例示例Android Studio环境搭建:下载并安装Android Studio:从官网下载Android Studio,然后双击安装文件,按照提示进行安装,安装完成之后,可以在桌面上找到Android Studio的快捷方式。 Android Studio环境…...

Java面试_并发编程_线程基础

Java面试_并发编程_线程基础 线程基础线程和进程的区别(出现频率: 3⭐)并行和并发的区别(出现频率: 2⭐)线程的创建(出现频率: 4⭐)线程的状态(出现频率: 4⭐)让线程按顺序执行(出现频率: 3⭐)notify()和notifyAll()有什么区别(出现频率: 2⭐)wait方法和sleep方法的区别(出现频…...

基于Java的高校实习管理系统设计与实现(亮点:实习记录、实习打分、实习作业,功能新颖、老师没见过、当场唬住!)

高校实习管理系统 一、前言二、我的优势2.1 自己的网站2.2 自己的小程序(小蔡coding)2.3 有保障的售后2.4 福利 三、开发环境与技术3.1 MySQL数据库3.2 Vue前端技术3.3 Spring Boot框架3.4 微信小程序 四、功能设计4.1 主要功能描述 五、系统主要功能5.1…...

傅里叶变换

傅里叶变换常用于缺陷检测项目,对于一些背景偏暗,对比度不明显的场景,傅里叶变换可以起到提升对比度的效果。傅里叶变换从频域角度来处理,对于一些图像像素尺寸大的图像,算法时间往往时间达到1s以上,对于一…...

Vue Grid Layout -️ 适用Vue.js的栅格布局系统,在vue3+上使用

文章目录 1、官网简介2、在vue3中使用1)、需要导入vue3支持的版本插件2)、在mian.js里引入:3)、在组件中使用 3、layout布局的计算逻辑4、 gridLayout 的属性 该栅格系统目前对 vue2 的支持是最好的,vue3 是需要用插件支持的,会在小节详细讲解…...

Electron(v26.2.1)无法加载React Developer Tools(v4.28.0)

一开始按照electron官网上的 开发者工具扩展 教程设置React Developer Tools时,重启项目后并没有按照预期成功加载React Developer Tools,而且控制台报错: Permission scripting is unknown or URL pattern is malformed.查了下原因是因为Re…...

网站降权的康复办法(详解百度SEO数据分析)

随着搜索引擎算法的不断升级,很多网站在SEO优化过程中遭遇到降权的情况。如果您的网站也遭遇到了类似的问题,不必惊慌失措。本文将为您详细介绍网站降权恢复的方法,包括百度SEO数据分析、网站收录少的5个原因、网站被降权的6个因素以及百度SE…...

非对称加密、解密原理及openssl中的RSA示例代码

一、【原理简介】非对称加密 非对称加密,也被称为公钥加密,其中使用一对相关的密钥:一个公钥和一个私钥。公钥用于加密数据,私钥用于解密数据。公钥可以公开分享,而私钥必须保密。 密钥生成: 当一个用户或设备希望使用…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...

GC1808高性能24位立体声音频ADC芯片解析

1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率&#xff0c…...

网站指纹识别

网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)

考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...

计算机基础知识解析:从应用到架构的全面拆解

目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...

Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?

Pod IP 的本质与特性 Pod IP 的定位 纯端点地址:Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址(如 10.244.1.2)无特殊名称:在 Kubernetes 中,它通常被称为 “Pod IP” 或 “容器 IP”生命周期:与 Pod …...