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

Linux操作系统--软件包管理(保姆级教程)

RPM软件包的管理

大多数linux的发行版本都是某种打包系统。软件包可以用来发布应用软件,有时还可以发布配置文件。他们比传统结构的.tar和.gz存档文件有几个优势。如它们能让安装过程尽可能成为不可分割的原子操作。
软件包的安装程序会备份它们改动过的文件。如果发现新安装软件包破坏了系统上的什么地方,可以卸载它,恢复原本的状态。
RPM(RedHat package manger)由RH公司发行的打包方式
软件的打包方式有以下几种:
1、RPM方式
2、源代码压缩方式
3、二进制文件压缩包方式

查询RPM包

格式:rpm -q [其他选项] [软件名称]
其它选项:
a  //表示显示当前系统中安装的所有RPM包
f  文件名(全路径)  //表示查找指定文件所属的RPM包
i  软件包名称  //表现显示包的用途
l  软件包名称  //表示显示RPM包文件
如下实例:
rpm -q bind在这里插入图片描述
我们通过命令查看bind包的详细信息,比如这个包的名字,以及相关的信息。
rpm -qa 
在这里插入图片描述
这里会列出很多此操作系统以及安装了的RPM包。
rpm -qf /etc/name.conf
在这里插入图片描述
查找指定文件所属的RPM包
rpm -qi bind
在这里插入图片描述
这里会显示出这个RPM包的详细信息以及用途。
rpmm -pl bind
在这里插入图片描述
这里就显示出与RPM包相关的文件。

RPM包名称格式

软件名称-版本号-发行号.安装平台.rpm
举例
在这里插入图片描述
软件包名称为bind、版本号(9.11.4)、发行号为26、硬件平台(x86_64)。其安装简单之极,登录为根用户,然后在shell下执行下面相关命令即可。

RPM包的安装方式

很多时候,我们在linux操作系统中下载一个应用的时候,都是系统自己帮我们安装好。但是在有的时候,我们需要自己去拷贝或者下载一个安装包,这个时候就需要我们RPM包的安装方式了。
1、普通安装使用最多的安装方式,采用一般的安装参数。安装当前目录下的xplns-elm-3.3.1-1.i386.rpm
#rpm -ivh xplns-elm-3.3.1-1.i386.rpm
这里的参数中
-i 安装
-v 显示附件信息
-h 用#显示安装进度
2、测试安装用户对安装不很确定时可以先使用该种安装方式测试安装,不真正安装。若无错误信息显示在真正安装。
#rpm -i --test xplns-elm-3.3.1-1.i386.rpm
参数
-i 安装
–test 测试
3、强制安装强制安装软件,忽略软件包依赖性以及文件的冲突。若对软件包的依赖性很清楚,而且确实要忽视文件的冲突,可以选择强制安装。
#rpm -i --force xplns-elm-3.3.1-1.i386.rpm
参数
-i 安装
-v 显示附件信息
-h 用#显示安装进度
–test 表示强制的意思
当然我们在安装某些安装包的时候,还有其他详细选项。
除了我们刚才以及提到的test和force还有
–prefix //指定安装路径。
–nodeps //忽略包之间的依赖关系

升级软件包

格式:#rpm -Uvh [详细选项] 软件包名称
说明:-Uvh表示升级安装且显示安装进度(U一定要大写,Linux下严格区分大小写)
实例:rpm -Uvh bind-10.1-1.i386.rpm
可以使用-U来安装软件包
软件包的升级时执行卸载旧版本软件和安装新版本
软件两个过程。RPM会先备份老文件再安装新文件。
实例,我后面补上。

卸载软件包

格式:#rpm -e [详细选项] 软件名称
说明:-e表示卸载软件包
实例:
rpm -e bind
rpm -e nfs-utils
在这里插入图片描述

归档/压缩文件

很多时候,我们都有在Linux操作系统中做开发的时候,当我们写了很多代码很多程序的时候,这个时候我们需要将这些代码(程序)进行归档或者压缩的时候,这个时候就需要我们使用下面的命令进行完成任务。
tar(tape archiving program),最早是一个磁盘归档程序。
tar命令用于文件的打包,可以将若干文件和目录打包成一个文件,既利于文件管理,也方便压缩和文件的网络传输。
tar可以为文件和目录创建档案。利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件或者向档案加入新的文件。
tar命令格式
命令格式
tar 主选项 [辅助选项] 文件或目录
常用主选项
-A, --catenate, --concatenate:将若干个tar文件合成一个tar文件
-c, --create:创建一个新的tar文件
-d, --diff, --compare:比较tar文件或文件系统的不同之处。
–delete:从tar文件中删除文件,但不能把磁带文件删除
-r, --append:在tar文件尾部追加文件。
-t, --list:显示tar文件内容
-u, --extra, get:从tar文件中提出文件。
-Z:使用gzip压缩/解压文件
案例讲解
tar -cfv gone.tar./*
c创建tar
f指明创建文件
v显示处理详细过程
./*表示把当前目录下内容打包成gong.tar
tar -tf gone.tar
t表示显示gone.tar中包含哪些文件
tar -xvf gone.tar
x表示从tar文件中提取文件
tar -rf gone.tar myfile
在tar文件尾部追加文件
16

相关文章:

Linux操作系统--软件包管理(保姆级教程)

RPM软件包的管理 大多数linux的发行版本都是某种打包系统。软件包可以用来发布应用软件,有时还可以发布配置文件。他们比传统结构的.tar和.gz存档文件有几个优势。如它们能让安装过程尽可能成为不可分割的原子操作。 软件包的安装程序会备份它们改动过的文件。如果…...

【uniapp】HBuilderx中uniapp项目运行到微信小程序报错Error: Fail to open IDE

HBuilderx中uniapp项目运行到微信小程序报错Error: Fail to open IDE 问题描述 uniapp开发微信小程序,在HBuilderx中运行到微信开发者工具时报错Error: Fail to open IDE 解决方案 1. 查看微信开发者工具端服务端口是否开放 打开微信开发者工具选择&#xff1…...

Rust详解日志

详解日志 相比起监控,日志好理解的多:在某个时间点向指定的地方输出一条信息,里面记录着重要性、时间、地点和发生的事件,这就是日志。 注意,本文和 Rust 无关,我们争取从一个中立的角度去介绍何为日志 日…...

某麦网自动刷新抢票脚本——手机端(高级版)

某麦网自动刷新抢票脚本——电脑端 小白操作-抵制黄牛–需要更好用更高级关注获取 如何用Python自动抢大麦网演出票? 在数字化时代,购票已经成为我们生活的一部分,无论是音乐会、话剧、体育赛事还是各种展览,抢票几乎成了一项“…...

【MySQL】(基础篇十八) —— 触发器

触发器 本文学习什么是触发器,为什么要使用触发器以及如何使用触发器,还介绍创建和使用触发器的语法。 MySQL语句在需要时被执行,存储过程也是如此。但是,如果你想要某条语句(或某些语句)在事件发生自动执…...

[19] Opencv_CUDA应用之 基于形状的对象检测与跟踪

Opencv_CUDA应用之 基于形状的对象检测与跟踪 形状可以用作全局特征检测具有不同形状的物体,可以是直线、多边形、圆形或者任何其他不规则形状利用对象边界、边缘和轮廓可以检测具有特定形状的对象本文将使用Canny边缘检测算法和Hough变换来检测两个规则形状,即线和圆1. Cann…...

【Echarts】散点图 制作 气泡 类型图表

目录 需求主要代码效果展示注 需求 需参照设计图画出对应图表 主要代码 /**** 数据 ****/ this.dataList [...Array(8).keys()].map((item) > {return {ywlxmc: 业务类型 (item 1),sl: item > 4 ? 50 : 70} })/**** 气泡样式 ****/ const styleList [{offset: [56…...

深入理解Spring Boot的启动过程

深入理解Spring Boot的启动过程 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天,让我们一起深入探讨Spring Boot的启动过程。Spring Boot作为一…...

【深度学习】卷积神经网络CNN

李宏毅深度学习笔记 图像分类 图像可以描述为三维张量(张量可以想成维度大于 2 的矩阵)。一张图像是一个三维的张量,其中一维代表图像的宽,另外一维代表图像的高,还有一维代表图像的通道(channel&#xff…...

游戏AI的创造思路-技术基础-深度学习(3)

继续填坑,本篇介绍深度学习中的长短期记忆网络~~~~ 目录 3.3. 长短期记忆网络(LSTM) 3.3.1. 什么是长短期记忆网络 3.3.2. 形成过程与运行原理 3.3.2.1. 细胞状态与门结构 3.3.2.2. 遗忘门 3.3.2.3. 输入门 3.3.2.4. 细胞状态更新 3.…...

贪心算法练习题(2024/6/24)

1K 次取反后最大化的数组和 给你一个整数数组 nums 和一个整数 k ,按以下方法修改该数组: 选择某个下标 i 并将 nums[i] 替换为 -nums[i] 。 重复这个过程恰好 k 次。可以多次选择同一个下标 i 。 以这种方式修改数组后,返回数组 可能的最…...

大厂程序员上班猝死成常态?

大家好,我是瑶琴呀,拥有一头黑长直秀发的女程序员。 近日,连续看到大厂程序员猝死、低血糖晕倒的新闻,同为程序员感到很难受。互联网加班成常态这是既定事实,尤其在这个内卷严重、经济不景气的环境中,加班…...

深度学习 —— 1.单一神经元

深度学习初级课程 1.单一神经元2.深度神经网络3.随机梯度下降法4.过拟合和欠拟合5.剪枝、批量标准化6.二分类 前言 本套课程仍为 kaggle 课程《Intro to Deep Learning》,仍按之前《机器学习》系列课程模式进行。前一系列《Keras入门教程》内容,与本系列…...

Android 12.0 通知发送过程源码分析-Framework

以下NotificationManagerService简称 NMS 1. 通知的发送: NotificationManager.notify(int id, Notification notification) 开始. 源码路径: /frameworks/base/core/java/android/app/NotificationManager.java/***发布通知以显示在状态栏中。 如果通知带有* 相同的 ID 已被…...

提防远程攻击:了解正向 Shell 和反向 Shell 确保服务器安全

前言 在当今网络安全形势日益复杂的环境中,了解正向 Shell 和反向 Shell 的工作原理和使用场景,对于保护你的服务器免受远程攻击至关重要。本文不仅深入解析这两种常见的远程控制技术,还将提供有效的防护建议,帮助你提升服务器的…...

RabbitMQ中CorrelationData 与DeliveryTag的区别

在RabbitMQ中,CorrelationData是一个用于封装业务ID信息的类,它主要在消息确认机制中发挥作用。以下是关于CorrelationData在RabbitMQ中的详细作用: 封装业务ID信息: 当发送消息时,可以将业务ID信息封装在Correlation…...

数据恢复篇:如何在Android上恢复删除的短信

如果您不小心删除了Android设备上的短信并想要检索它们,则可以尝试以下方法: 如何在Android上恢复删除的短信 检查您的备份: 如果您之前备份了Android设备,则可以从备份中恢复已删除的短信。检查您设备的内部存储空间或 Google 云…...

花了大几万的踩坑经验!宠物空气净化器哪个牌子好:希喂、小米、有哈PK

我的闺蜜最近向我大吐苦水,自从家里养了猫之后,她发现家里的空气质量大不如前。宠物的浮毛和排泄物的气味在空气中飘散,让她非常怀念以前没有养猫时家里清新的呼吸环境。她觉得这些漂浮的毛发和异味大大降低了居家的舒适度。 还引起了身体上…...

查普曼大学团队使用惯性动捕系统制作动画短片

道奇电影和媒体艺术学院是查普曼大学的知名学院,同时也是美国首屈一指的电影学院之一,拥有一流电影制作工作室。 最近,道奇学院的一个学生制作团队接手了一个项目,该项目要求使用真人动作、视觉效果以及真人演员和CG角色之间的互动…...

vue 代理

一、常用的发送一个ajax请求: 1、xhr new XMLHttpRequest(),真正开发中不常用 2、jq,jq主要功能是获取dom,周边才是请求接口 3、axios(大名鼎鼎的) axios.get("url").then(response>{},error>{} )4、…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...

【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具

第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习

禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

Android第十三次面试总结(四大 组件基础)

Activity生命周期和四大启动模式详解 一、Activity 生命周期 Activity 的生命周期由一系列回调方法组成,用于管理其创建、可见性、焦点和销毁过程。以下是核心方法及其调用时机: ​onCreate()​​ ​调用时机​:Activity 首次创建时调用。​…...

佰力博科技与您探讨热释电测量的几种方法

热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...

Java编程之桥接模式

定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

七、数据库的完整性

七、数据库的完整性 主要内容 7.1 数据库的完整性概述 7.2 实体完整性 7.3 参照完整性 7.4 用户定义的完整性 7.5 触发器 7.6 SQL Server中数据库完整性的实现 7.7 小结 7.1 数据库的完整性概述 数据库完整性的含义 正确性 指数据的合法性 有效性 指数据是否属于所定…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

django blank 与 null的区别

1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是,要注意以下几点: Django的表单验证与null无关:null参数控制的是数据库层面字段是否可以为NULL,而blank参数控制的是Django表单验证时字…...

pycharm 设置环境出错

pycharm 设置环境出错 pycharm 新建项目,设置虚拟环境,出错 pycharm 出错 Cannot open Local Failed to start [powershell.exe, -NoExit, -ExecutionPolicy, Bypass, -File, C:\Program Files\JetBrains\PyCharm 2024.1.3\plugins\terminal\shell-int…...