RPM常用命令以及组合使用场景

本文分享自天翼云开发者社区RPM常用命令以及组合使用场景》,作者:邬祥钊

 

 

当涉及到管理基于 Red Hat 系的 Linux 系统时,RPM (Red Hat Package Manager) 是一个常用的软件包管理器。以下是一些常用的 RPM 命令以及它们的组合使用场景:

常用命令:

1. rpm -ivh package.rpm :安装一个新的软件包,其中 "-i" 代表安装,"-v" 表示显示详细信息,"-h" 显示进度条。

2. rpm -Uvh package.rpm :升级一个已有的软件包,其中 "-U" 代表升级,其余参数与上述相同。

3. rpm -e package_name :删除一个软件包,其中 "-e" 代表卸载。

4. rpm -qa :列出系统上所有已安装的软件包。

5. rpm -q package_name :查询指定软件包是否已经安装,或者查看一个已安装软件包的版本号。

6. rpm -qi package_name :查询关于某个软件包的信息,如作者、描述、依赖等。

7. rpm -ql package_name :列出一个软件包安装的文件列表。

8. rpm -qf file_path :查找某个文件属于哪个软件包。

9. rpm -q --provides package_name :查询该包提供的内容。

10. yum install package_name :使用 Yum 包管理器安装软件包,其中 "install" 为安装命令。

11. yum update package_name :使用 Yum 包管理器更新已有软件包,其中 "update" 为更新命令。

12. yum remove package_name :使用 Yum 包管理器删除软件包,其中 "remove" 为删除命令。

 

进阶命令:

1. rpm2cpio package.rpm | cpio -idvm : 将 RPM 包解压并将其中的文件提取到当前目录下,可以方便地查看软件包中的文件和目录结构。

2. yum list available package_name : 列出所有可用的软件包,包括未安装的,与指定的软件包名称相似的软件包列表。

3. rpm -qa --last : 列出所有已安装软件包,按照最近安装或更新时间排序。

4. rpm -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n' : 列出所有已安装软件包的名称、版本号和架构。

5. rpm --verify package_name : 验证软件包的完整性并列出可能存在问题的文件。

6. rpm -i --test package.rpm : 模拟软件包的安装过程,检查是否有依赖项问题或其他错误。

7. rpm -Uvh --force package.rpm : 强制安装软件包,即使存在版本冲突或其他问题。

8. rpm -Uvh --oldpackage package.rpm : 降级软件包为旧版本,并覆盖当前版本。

9. rpm -e --nodeps package_name : 卸载软件包,忽略其依赖项。

10. rpm -qa | grep package.rpm: 检查是否安装某软件包。

11. yum history : 列出所有 Yum 包管理器操作的历史记录,可以查看安装、升级和删除操作的详细信息。

12. yum provides */文件或命令:文件或者命令属于哪个包提供,即使未安装该包也能查询。如下图显示未安装mysql但可以查询到mysqld.service是由该包提供

RPM常用命令以及组合使用场景

 

组合使用场景:

1. 安装软件包并解决依赖关系: rpm -ivh package.rpm && yum install -y dependency

2. 列出一个软件包及其文件列表的详细信息: rpm -qi package_name | grep -iE 'name|version|release' && rpm -ql package_name

3. 删除软件包及其依赖: yum remove --autoremove package_name

4. 验证所有已安装软件包的完整性并列出可能存在问题的文件: rpm -Va | awk '{ if($NF != "c") print }'

5. --queryformat参数实现自定义查询

这里提一下rpm的--queryformat参数,使用这个参数可以实现自定义的字段信息查询,如下:

对于一个包我们使用rpm -qi可以得到如下信息

RPM常用命令以及组合使用场景 

如果我们想要其中过的Version或者License或者其他任何想要的字段信息,我们可以使用这个参数进行提取,如下

RPM常用命令以及组合使用场景 

因此,我们可以通过这个参数进一步实现批量的参数提取等功能,而不需要单独对字段写脚本进行判断与裁剪。

 

总之,RPM 是 Linux 系统中常用的软件包管理器之一。掌握这些命令以及它们的组合使用场景能够使更加高效地管理和维护系统以及解决软件安装过程中遇到的问题。通过深入了解 RPM 命令和选项的功能,可以更好地理解和应用软件包管理工具来满足特定需求。

原文链接:https://www.cnblogs.com/developer-tianyiyun/p/17359108.html

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:RPM常用命令以及组合使用场景 - Python技术站

(0)
上一篇 2023年4月27日
下一篇 2023年4月27日

相关文章

  • 红帽(RedHat8) RHEL8.0系统安装步骤图文教程(小白都会)

    RedHat 8.0系统安装步骤图文教程 如果你是一位新手,或者想要学习RedHat 8.0系统如何安装,那么这篇教程将会帮助到你。本文将详细讲述RedHat 8.0操作系统的安装过程,附有图片及说明,每个细节都会一一讲解。 准备环境 在进行RedHat8.0系统的安装之前,我们需要先准备好一些必备的环境,具体如下: RedHat 8.0镜像文件,可以从Re…

    Linux 2023年5月24日
    00
  • [linux] C语言Linux系统编程-做成守护进程

    守护进程: 必须是init进程的子进程,运行在后台,不与任何控制终端相关联。 通过以下步骤成为守护进程 1.调用fork()创建出来一个新的进程,这个新进程会是将来的守护进程 2.在新守护进程的父进程中,调用exit(),为了守护进程的爷爷进程确认父进程结束 3.在新守护进程中,调用setsid(),使得该进程有一个新的进程组和新的会话,保证了该进程不与控制…

    Linux 2023年4月13日
    00
  • Ubuntu 16.04 64位中搭建Node.js开发环境教程

    下面我将详细讲解“Ubuntu 16.04 64位中搭建Node.js开发环境教程”的完整攻略。 1. 安装Node.js 1.1 添加Node.js官方源 要安装Node.js,我们首先需要添加一个可以让我们安装最新版本Node.js的源。 在终端中执行以下命令: curl -sL https://deb.nodesource.com/setup_14.x…

    Linux 2023年5月24日
    00
  • Ansible部署K8s集群的方法

    请看下面的详细攻略。 概述 Ansible是一款自动化IT操作工具,可以用它来管理和部署K8s集群。在使用Ansible部署K8s集群时,通常可以包含以下步骤: 准备工作环境:安装Ansible软件和其他必要的工具以及配置SSH连接。 准备K8s集群主机:为每个节点安装Docker、配置节点IP地址和设置K8s集群参数等。 配置主机清单文件:在Ansible…

    Linux 2023年5月14日
    00
  • CentOS8 配置本地yum源的详细教程

    CentOS8相对于之前版本对于本地yum源的配置方法有一些变化,下面是一个完整的攻略: 准备工作 在开始配置本地yum源之前,需要安装一个工具来帮助我们创建yum仓库,同时需要准备所需要的软件包。 安装createrepo 创建yum仓库的工具createrepo可以通过yum安装: sudo yum install createrepo 准备软件包 可以…

    Linux 2023年5月14日
    00
  • Linux vncpasswd命令

    vncpasswd命令是Linux系统下一个用于设置VNC连接密码的命令行工具,它可以使用明文或加密密码的方式来为VNC服务器设置密码,以保障 VNC 服务器的安全性。以下是使用方法的完整攻略和示例: 安装和下载vncpasswd命令 vncpasswd命令通常包含在vnc-server软件包中。如果您的Linux系统上未安装VNC server,则需要先安…

    Linux 2023年3月28日
    00
  • LRF020 DRIVER FOR LINUX(BASED ON TQ2440/ARM9)

    LRF020 DRIVER FOR LINUX======================= using includes/linux/spi/spidev.h,driver/spi/spidev.c 2012-3-23 xiaoyang@HIT Kernel Version: linux2.6.30Board Info: tq2440 arm9(S3C24…

    Linux 2023年4月12日
    00
  • Linux中fuser命令用法详解

    Linux中fuser命令用法详解 一、fuser命令概述 在Linux系统中,fuser命令用于打印进程ID(PID),正在执行指定文件或挂载点所占用的内核进程信息。fuser可用于查找没有及时关闭已打开文件的程序,也可用于查看挂载设备是否已被占用等情况。 二、fuser命令语法 fuser命令的基本语法如下: $ fuser [OPTION]… FI…

    Linux 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部