Linux的rpm命令和yum命令详解

50 篇文章 3 订阅
36 篇文章 10 订阅

今天讲一下如何在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格式的居多;在压缩包内提供已经编译好的执行程序文件,解开压缩包后的文件即可直接使用

四、RPM简介

4.1RPM概述

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

  • 由Red Hat公司提出, 被众多Linux发行版所采用
  • 建立统一的文件数据库
  • 详细记录软件包安装、卸载、升级等变化信息
  • 自动分析软件包依赖关系
  • 保持各应用程序在一个协调、有序的整体环境中允许

RPM软件包获取途径:

  • RPM软件包软件素材参考:http://www.rpm.org

  • RPM软件包一般命名格式:bash-4.1.2.-28.el6.x86_64.rpm

4.2RPM命令概述

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

五、查询RPM软件包信息

5.1查询已安装的RPM软件信息

格式:rpm -q[子选项][软件名]
  • 常用选项

    选项功能
    -qa当亲系统已安装的软件包查询
    -qi查看已安装的指定软件的详细信息 --info
    -ql查看已安装的指定软件包在当前系统中安装的所有目录 --list
    -qc查看已安装的指定软件的配置文件
    -qd列出已安装的指定软件的软件包文档所在位置
    -qR列出已安装的指定软件的依赖的软件包及文件
    -qf反向查看已安装的指定的文件或目录属于哪个安装包 --file
    -qF查询已安装的指定软件属于哪个安装包

    例如:
    1.安装软件
    # rpm -hvi dejagnu-1.4.2-10.noarch.rpm
    警告:dejagnu-1.4.2-10.noarch.rpm: V3 DSA 签名:NOKEY, key ID db42a60e
    准备…
    ########################################### [100%]
    2.显示软件安装信息
    # rpm -qi dejagnu-1.4.2-10.noarch.rpm

5.2挂载与解挂载

mount:挂载,你的包在你的光驱里并没有放在系统中,光盘的包只有先挂载在光盘到我的系统

什么是挂载:将硬件,比如光盘、光驱等,挂载在目录上使用,变成文件

unmount:解挂载,跟着硬件设备走,不在挂在的文件下
语法内容:

 - mount [-hV] mount -a [-fFnrsvw] [-t vfstype] mount [-fnrsvw] [-o
 - options [,...]] device | dir mount [-fnrsvw] [-t vfstype] [-o   
 - options] device dir

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

格式: rpm -qp[子选项] rpm包文件 
  • 常用选项
选项说明
-qpi查询指定软件包的详细信息
-qpl查询指定软件包的准备要安装的所有目录及文件列表
-qpc查询指定软件包的配置文件
-qpd查询指定软件包的软件包文档的位置

六、安装、升级、卸载RPM包

基本格式:
rpm [选项]  RPM软件包
rpm -ivh   RPM软件包       #安装软件包,install
rpm -evh   RPM软件包       #卸载软件包
  • 常用选项
选项说明
-i安装一个新的RPM软件包。
-U升级某个软件包,若未安装过,则进行安装。
-F升级某个软件包,若未安装过,则放弃安装。
-h在安装或升级软件包的过程中,以“#”号 显示安装进度。
-v显示软件安装过程中的详细信息。
- -force强制安装某个软件包,比如要安装版本更旧的软件包
-e卸载指定名称的软件包
- -nodeps在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系

七、维护RPM数据库

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

    基本格式:
    rpm --rebuilddb      			#法一
    rpm --initdb					#法二
    
    
  2. 导入验证公钥
    在没有导入用于数字签名验证的公钥文件之前,安装光盘中的一 部分RPM软件包时会报错。需要向RPM数据库中导入位于光盘根目录下的公钥文件。

    基本格式:
    mount /dev/cdrom /mnt/				 		#先挂载cdrom
    rpm --import  /mnt/RPM-GPG-KEY-CentOS-7		#导入公钥
    
    

    八、解决软件包依赖关系的方法

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

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

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

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

8.3忽略依赖关系

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

九、yum安装

yun是rpm的升级版,可以把依赖关系都装了

[root@yxp Packages]# cd /etc/yum.repos.d/
[root@yxp yum.repos.d]# ls

yum 语法
yum [options] [command] [package ...]
options:可选,选项包括-h(帮助),-y(当安装过程提示选择全部为 "yes"),
-q(不显示安装的过程)等等。
command:要进行的操作。
package:安装的包名。
  1. 切换到/etc/yum.repos.d

  2. 移走yum.repos.d的源文件 //新建一个文件夹

  3. 新建以.repo结尾的文件

  4. 然后编辑文件 vim centos.repo

  5. name=local
    baseurl=file:///mnt
    enabled=1
    gpgcheck=0

  6. yum repolist

  7. yun clean all

  8. yum install

. 切换到/etc/yum.repos.d

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MagnumOvO

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值