Linux 应用程序基础,rpm、yum使用

Linux应用程序基础

与系统命令的关系

在这里插入图片描述

目录结构

在这里插入图片描述

常见的几个软件包封装类型

在这里插入图片描述

RPM包管理工具

RPM软件包管理器

Red-Hat Package Manager

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

RPM软件包

  • 软件素材参考:http://www.rpm.org
  • 一般命名格式:bash-4.2.46-28.e17.x86_64.rpm
    • 28:发布次数
    • x86_64 :硬件平台
    • .rpm :扩展名

命令的格式

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

查询rpm软件包信息

查询已安装的软件信息

  • 命令:rpm -q【子选项】【软件名】
  • 常用选项
命令作用
rpm -q查询指定软件是否已安装
rpm -qi显示已安装的指定软件的详细信息
rpm -ql显示已安装的指定软件的文件列表
rpm -qc列出已安装的指定软件的配置文件
rpm -qd列出已安装的指定软件的软件包文档所在位置
rpm -qR列出已安装的指定软件的依赖的软件包及文件
rpm -qF查询已安装的指定软件属于哪个安装包
rpm -qa 不加文件显示当前系统中所有以rpm方式安装的软件列表
rpm -qa 丨 grep -i查询指定的软件是否安装
模板
  • rpm -q tree
    查询tree是否已安装
    在这里插入图片描述
  • rpm -qi
    显示tree的详细信息
    在这里插入图片描述
  • rpm -ql
    显示tree的文件列表
    在这里插入图片描述
  • rpm -qd
    tree软件包文档所在位置
    在这里插入图片描述
  • rpm -qR
    tree依赖的软件包及文件
    在这里插入图片描述
  • rpm -qF
    查询tree属于哪个安装包
    在这里插入图片描述
  • rpm -qa | grep -i tree
    查询tree是否已经安装
    在这里插入图片描述

查询rpm软件包文件中的信息

  • 命令:rpm -qp【子选项】rpm包文件
  • 常用选项
命令作用
rpm -qpi查询指定软件包的详细信息
rpm -qpl查询指定软件包的文件列表
rpm -qpc查询指定软件包的配置文件
rpm -qpd查询指定软件包的软件包文档的位置

安装、升级、卸载

  • 命令
    rpm -【选项】rpm包文件
  • 常用选项
命令作用
-i安装一个新的rpm软件包
-U升级某个软件包,若未安装过,则进行安装
-F升级某个软件包,若未安装过,则放弃安装
-h在安装或升级软件包的过程中,以"#"号显示安装进度
-v显示软件安装过程中的详细信息
- -force强制安装,比如要安装版本更旧的包
-e卸载指定名称的软件包
- -nodeps在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系

维护rpm数据库

重建rpm数据库

当rpm数据库发生损坏,可通过重建rpm数据库修复

  • rpm - -rebuilddb
  • rpm - -initdb

导入验证公钥

在没有导入用于数字签名验证的公钥文件之前,安装光盘中的一部分RPM软件包时会报错。需要向RPM数据库中导入位于光盘根目录下的公钥文件

mount /dev/sr0 /mnt/
rpm --import /mnt/RPM-GPG-KEY-CentOS-7

dev/sr0 :光盘镜像

解决软件包依赖方法

安装有依赖关系的多个软件时

  • 被依赖的软件包需要先安装
  • 可同时指定多个 .rpm 包文件进行安装

卸载有依赖关系的多个软件时

  • 依赖其他程序的软件包需要先卸载
  • 可同时指定多个软件名进行卸载

忽略依赖关系

  • 结合"- -nodeps"选项,但可能导致软件异常

yum

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

准备工作

配置本地yum源仓库

  • mount /dev/cdrom /mnt/
    • 把光盘挂载到mnt目录下
    • dev:光盘
  • cd /etc/yum. repos.d/
  • mkdir repos.bak
    • 创建新的目录
  • mv *.repo repos.bak
    • 把repo文件移动到新目录下

编辑新建的repo文件

  • cd /etc/ yum. repos .d/
    进入目录
  • vim cc666.repo
    文件名需要用.repo结尾,名字自定
  • [cc666]
    仓库类别
  • name=cc666
    仓库名称
  • baseurl=file:///mnt
    指定URL访问路径为光盘挂载目录
    file://代表的是访问路径格式
    /mnt代表目录
  • enabled=1
    开启此yum源,此为默认项,可省略
  • gpgcheck=0
    不验证软件包的签名

yum clean all && yum makecache
删除yum缓存并更新
&&表示前面命令执行成功再执行后面,不成功不执行,且的命令

演示

  • 先编辑文件
    在这里插入图片描述
  • 删除yum缓存并更新
    在这里插入图片描述

常用的操作命令

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

模板

  • yum -y instal dhcp
    在这里插入图片描述
命令作用
yum list installed查询系统中已安装的软件包
yum list available查询仓库中尚未安装的软件包
yum list updates查询可以升级版本的软件包
命令作用
yum info查询软件包的描述信息
yum search [all]根据某个关键词来查找相关的软件包
yum whatprovides查询命令属于哪个软件包

模板

  • yum -info dhcp 查询dhcp信息
    在这里插入图片描述

  • yum whatprovides dhcp 查询dhcp属于哪个软件包
    在这里插入图片描述

编译安装的过程

  • tar解包
    tar zxvf/jxvf xxx. tar.gz/xxx. tar.bz2 -C 目标路径

  • 配置软件模块(安装路径、开启或关闭模块功能、管理服务进程的用户设定)
    ./configure --prefix=目标路径(此软件安装到哪里去)

  • 编译 (将源代码转换为可执行的程序)
    make

  • 安装
    make install

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值