Linux软件安装及管理程序

news2024/10/5 19:18:31

Linux安装及管理程序

  • Linux软件安装及管理程序
    • 一、Linux应用程序基础
    • 二、RPM软件包管理工具
      • 2.1、RPM介绍
      • 2.2、RPM命令
    • 三、源码编译安装
    • 四、yum安装

Linux软件安装及管理程序

一、Linux应用程序基础

应用程序与系统命令的关系

角色系统命令应用程序
文件位置般在/bin和/sbin目录中,或为Shell内部指令通常在/usr/bin、/usr/sbin 和/usr/local/bin、/usr/local/sbin目录中
主要用途完成对系统的基本管理工作,例如IP配置工具完成相对独立的其他辅助任务,例如网页浏览器
使用环境一般只在字符操作界面中运行根据实际需要,有些程序可在图形界面中运行
运行格式一般包括命令字、命令选项和命令参数通常没有固定的执行格式,由程序开发者自行定义

典型应用程序的目录结构

文件类型保存目录说明
普通的可执行程序文件/usr/bin所有用户可执行
服务器程序、管理程序文件/usr/sbin只有管理员能执行
应用程序配置文件/etc通过rpm或yum方式安装的应用程序
日志文件/var/log系统日志
应用程序参考文档文件/usr/share/doc关于应用程序的参考文档等数据
应用程序手册页文件/usr/share/man执行文件及配置文件的man手册页

常见的软件包封装类型

文件类型保存目录
RPM软件包扩展名为".rpm",适用于RHEL、CentOS等系统
DEB软件包扩展名为".deb",适用于Ubuntu、Debian等系统
源代码软件包一般为 “.tar.gz”、".tar.bz2"等格式的压缩包
包含程序的原始代码,需要编译安装
附带安装程序的软件包软件包的扩展名不一,以TarBall格式的居多
在软件包中会提供用于安装的可执行程序或脚本文件,如install.sh、setup等
安装时只需运行安装文件就可以根据向导程序的提示完成安装操作

二、RPM软件包管理工具

2.1、RPM介绍

RPM软件包管理器Red-Hat Package Manager

  • 由Red Hat公司提出,被众多L inux发行版所采用
  • 建立统一的文件数据库
  • 详细记录软件包安装、卸载、升级等变化信息
  • 自动分析软件包依赖关系

RPM软件包

  • 软件素材参考:http://www.rpm.org
  • 一般命名格式:
    bash-4.2.46-28.el7.x86_64.rpm
    
    bash:软件名
    4.2.46:版本号
    28.el7:发行的次数	#el7表示centos7/redhat7
    x86_64:硬件平台
    .rpm:扩展名
    

RPM命令的格式

  • rpm命令能够实现几乎所有对RPM软件包的管理功能
  • 执行"man rpm"命令可以获得关于rpm命令的详细帮助信息
  • rpm命令功能
    • 查询、验证RPM软件包的相关信息
    • 安装、升级、卸载RPM软件包
    • 维护重建RPM数据库信息等综合管理操作

2.2、RPM命令

查询已安装的rpm软件信息

rpm -q 软件名			#查询指定软件是否已安装
rpm -qi 软件名			#显示已安装的指定软件的详细信息
rpm -ql 软件名			#显示已安装的指定软件的文件列表
rpm -qc 软件名			#列出已安装的指定软件的配置文件
rpm -qd 软件名			#列出己安装的指定软件的软件包文档所在位置
rpm -qR 软件名			#列出已安装的指定软件的依赖的软件包及文件
rpm -qf 文件或目录		#查询己安装的指定软件属于哪个安装包


rpm - qa						#显示当前系统中以rpm方 式安装的所有软件列表
rpm -qa | grep -i postfix		#查询软件postfix是否已安装

查询未安装的RPM软件包文件中信息

rpm -qpi RPM包文件名			#查询指定软件包的详细信息
rpm -qp1 RPM包文件名			#查询指定软件包的文件列表
rpm -qpc RPM包文件名			#查询指定软件包的配置文件
rpm -qpd RPM包文件名			#查询指定软件包的软件包文档的位置

安装、升级、卸载RPM软件包

  • 格式:

    rpm [选项] RPM包文件
    rpm -ivh RPM软件包
    
  • 常用选项:

    -i:			安装一个新的RPM软件包。
    -U:			升级某个软件包,若未安装过,则进行安装。
     F:			升级某个软件包,若未安装过,则放弃安装。
    -h:			在安装或升级软件包的过程中,以“#"号显示安装进度。
    -V:			显示软件安装过程中的详细信息。
    force:		强制安装某个软件包,比如要安装版本更旧的软件包
    
    -e:卸载指定名称的软件包
    --nodeps:在男装或升级、卸载一个软件包时,不检查与其他软件的依赖关系
    

三、源码编译安装

编译安装过程
在这里插入图片描述

解决软件包依赖关系方法

  • 安装有依赖关系的多个软件时
    • 被依赖的软件包需要先安装
    • 可同时指定多个.rpm包文件进行安装
  • 卸载有依赖关系的多个软件时
    • 依赖其他程序的软件包需要先卸载
    • 可同时指定多个软件名进行卸载
  • 忽略依赖关系
    • 结合“–nodeps”选项,但可能导致软件异常

    注:安装源代码软件包需要编译安装,需要安装支持c和c++程序语言的编译器,如gcc、gcc-c++、make
    如果使用rpm方式安装,则需要先安装多个依赖包,这样会很繁琐,下面推荐可以使用yum方式进行一键安装

四、yum安装

配置本地yum源仓库

mount /dev/cdrom /mnt/		#把光盘挂载到/mnt目录下
cd /etc/yum.repos.d/
mkdir repos.bak
mv *.repo repos.bak

cd /etc/yum.repos.d/
vim local.repo				#创建本地仓库
[local]						#仓库类别
name=local					#仓库名称
baseurl=file:///mnt			#指定URL访问路径为光盘挂载目录
enabled=1					#开启此yum源,此为默认项,可省略
gpgcheck=0					#不验证软件包的签名

yum clean all && yum makecache 			#删除yum缓存并且更新

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下面就可以安装软件了,并且会自动解决依赖关系
在这里插入图片描述
在这里插入图片描述
yum常用的操作命令

yum -y install 软件名			#安装、升级软件包,“-y”选项表示自动确认
yum -y remove 软件名				#卸载软件包,可自动解决其依赖关系
yum -y update 软件名				#升级软件包

yum list			#查询软件包列表
yum list intalled	#查询系统中已安装的软件包

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

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

相关文章

linux系统中实现智能家居的基本方法

大家好,今天主要和大家分享一下,智能家居物联网的基本实现与操作方法。 目录 第一:智能家居基本简介 第二:测试WIFI模块功能 第三:智能家居物联UI界面开发 第四:核心代码的具体实现 第五:最…

【阅读笔记】《重构》 第三四章

第三章 代码的味道 DuplicatedCode(重复代码) 同一个类的两个函数含有相同的表达式两个互为兄弟的子类含有相同表达式两个毫不相干的类出现重复代码 LongMethod(过长函数) 函数不宜过长,函数越长越难理解如果想利用单个类做太多事情,其内往往就会出现…

联合证券|港股再融资“春江水暖” 资本争购热门赛道企业

进入2023年,港股再融资商场有所回暖。到1月18日,已有27家港股上市公司发布拟配售股份(简称“配股”)再融资,募资总额164.01亿港元,较上一年同期增加148.16%。其间,微盟集团的配股再融资吸引了众…

fpga实操训练(lcd测试)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 前面我们测试过vga输出,当时是找了一个老式的显示器来完成的,也就是本身自带vga接口的显示器。但是,现在市面上大部分显示器都是默认支持hdmi接口的。所以说,如果真的想用fpga测…

都说InnoDB好,那还要不要使用Memory引擎?

我在上一篇文章末尾留给你的问题是:两个 group by 语句都用了 order by null,为什么使用内存临时表得到的语句结果里,0 这个值在最后一行;而使用磁盘临时表得到的结果里,0 这个值在第一行? 今天我们就来看看,出现这个问题的原因吧。 内存表的数据组织结构 为了便于分…

如何在SpringBoot项目中访问静态资源

在springboot项目中如果要在不集成templates的情况下访问静态资源需要做以下配置 1.在项目的application.yml文件中做如下配置 spring:profiles:active: devmvc:view:prefix: /suffix: .html 重点在 配置后生成为WebMvcProperties 配置类。该配置类中有一个内部类View Conf…

各式各样图标的特点

笔者近期在翻看各种样式的图标,逛了下 Iconfont、IconFinder 等图标网站,现根据自己的经验,总结了一些图标特点的描述用语 线性/面性/线面组合平面/立体无层次感(或阴影)/有层次感(或阴影)无填…

Oracle强制加了hint实效三种连接方式使用场合判断

开发写了一个语句使用了connect by level函数 SELECT DISTINCT CTMID FROM ( SELECT CTMID, REGEXP_SUBSTR(FLTUSERIDSTR, ‘[^;]’, 1, l) AS userid FROM s_userinfo,(SELECT LEVEL l FROM DUAL CONNECT BY LEVEL<300) b WHERE l < LENGTH(FLTUSERIDSTR) - LENGTH(rege…

链表的算法题

目录 题型一、克隆含有rand指针的链表 笔试&#xff1a;哈希表 面试&#xff1a;不用容器&#xff0c;模拟哈希表的功能 题型二、给一个单链表头节点Head&#xff0c;判断是否构成回文 题型三、将单链表按某值划分为左边小&#xff0c;中间相等&#xff0c;右边大 6个变量…

Allegro如何设置创建Pin Pair的快捷键操作指导

Allegro如何设置创建Pin Pair的快捷键操作指导 在做PCB设计的时候需要做一组信号的等长,需要使用到创建Pin Pair的功能,如下图,如果每个网络都右键去选择添加比较浪费时间,如下图 Allegro支持给创建一个Create Pin Pair的快捷键位 具体操作如下 打开规则管理器选择Tools

单调栈与单调队列

单调栈与单调队列一、单调栈1.1 思路1.2 例题&#xff1a;单调栈二、单调队列2.1 思路2.2 例题&#xff1a;滑动窗口一、单调栈 1.1 思路 单调栈主要解决以下问题&#xff1a; 1️⃣ 寻找下一个更大元素 2️⃣ 寻找前一个更大元素 3️⃣ 寻找下一个更小元素 4️⃣ 寻找前一个…

理性和感性 - 如何对待错误

上次的博客&#xff0c; 我写了一些关于 软件开发中的理性和感性决定 的故事。 不论是感性还是理性&#xff0c;我们的目的就是要把软件交给用户去用&#xff0c; 在软件行业中有这样一句俗话&#xff1a; 当你把产品交给用户的时候&#xff0c;你的学习才刚刚开始。 当然每个团…

【设计模式】结构型模式·桥接模式

学习汇总入口【23种设计模式】学习汇总(数万字讲解体系思维导图) 写作不易&#xff0c;如果您觉得写的不错&#xff0c;欢迎给博主来一波点赞、收藏~让博主更有动力吧&#xff01; 一.概述 将抽象与实现分离&#xff0c;使它们可以独立变化。用组合关系代替继承关系&#xff0c…

华为数字化转型之道 结语 数字化转型的8个成功要素

结语 数字化转型的8个成功要素 华为开展数字化转型的过程中,积累了一些经验和教训,总结起来有如下成功要素。 1. 一把手担责 要做好数字化转型,企业家就要有战略决心、信心、耐心。数字化转型一定是企业“一把手工程”,需要企业家自上而下地推动并在企业内达成广泛共识。…

免费开题报告|基于SpringBoot+Vue的校内跑腿平台

作者主页&#xff1a;编程指南针 作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、掘金特邀作者、多年架构师设计经验、腾讯课堂常驻讲师 主要内容&#xff1a;Java项目、毕业设计、简历模板、学习资料、面试题库、技术互助 收藏点赞不迷路 关注作者有好处 文末获取源…

Android 深入系统完全讲解(29)

MediaMuxer 封装器 MediaMuxer 最多仅支持一个视频 track 和一个音频 track&#xff0c;所以如果有多个音频 track 可以先 把它们混合成为一个音频 track 然后再使用 MediaMuxer 封装到 mp4 容器中。 MediaMuxer 支持输出格式为 MP4&#xff0c;webm 和 3gp. 默认我们就用 mp4.…

产生聚类数据集sklearn.datasets.make_blobs()

【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 产生聚类数据集 sklearn.datasets.make_blobs() [太阳]选择题 以下python代码结果错误的一项是? import matplotlib.pyplot as plt from sklearn.datasets import make_blobs data,labelmak…

统计-参数估计-假设检验-总结二

统计-参数估计-假设检验-总结二参数估计—区间估计三大分布卡方分布(Gamma分布的特例)t分布F分布求估计区间假设检验参数检验拟合优度检验通往 统计-参数估计-假设检验-总结一参数估计—区间估计 以某一范围提供对参数θ\thetaθ的估计。寻找统计量θ1∗(x1,x2,...,xn)\theta…

20230120英语学习

How Animals May Have Conquered Snowball Earth “雪球地球”时期&#xff0c;动物是如何存活的&#xff1f; Planet Earth used to be something like a cross between a deep freeze and a car crusher.During vast stretches of the planet’s history, everything from p…

微信小程序开发尚学堂 介绍 项目结构 组件 喧嚷 事件 模板

一、微信小程序介绍1. 微信小程序介绍微信小程序&#xff0c;简称小程序&#xff0c;是一种不需要下载安装即可使用的应用&#xff0c;它实现了应用”触手可及”的梦想&#xff0c;用户扫一扫或搜一下即可打开应用。说明&#xff1a;小程序是需要下载的&#xff0c;小程序的占用…