Brc's blog
首页
前端
后端
运维
  • 工作笔记
  • 分类
  • 标签
  • 归档
关于

Brc

努力中
首页
前端
后端
运维
  • 工作笔记
  • 分类
  • 标签
  • 归档
关于
  • Linux基础

    • Bash shell
    • 文件属性
    • 编辑工具vim
    • 用户管理
    • 用户组管理
    • 普通用户提权
    • 基础权限
    • 特殊权限
    • 文件特殊属性
    • IO重定向
    • 文件查找
    • 文件压缩
    • 软件包管理

      • rpm
        • RPM基本概述
          • 什么是rpm
          • rpm包名组成部分
          • 如何获取rpm包
          • 其他类型的安装包
        • RPM包管理命令
          • rpm安装软件包
          • rpm依赖包安装
          • rpm升级软件包
          • rpm卸载软件包
          • rpm查询软件包
      • yum
      • 搭建yum仓库
    • 磁盘管理

    • 进程管理
    • 计划任务
    • systemd
    • Supervisor
    • 网络管理

    • Chrony时间同步
    • NFS网络文件系统
  • Linux进阶

  • 其他

  • 运维
  • Linux基础
  • 软件包管理
Brc
2021-07-08
目录

rpm

# RPM基本概述

# 什么是rpm

RPM全称RedHat Package Manager缩写,由红帽开发用于软件包的安装、升级、卸载与查询。

# rpm包名组成部分

RPM包命名以-将软件分成了若干部分bash-4.2.46-28.el7.x86_64.rpm

image-20211109134740544

# 如何获取rpm包

在我们刚开始学习rpm包,建议先从本地镜像中获取rpm但实际生产环境中大多数是通过联网方式获取rpm包,或者搭建企业私有包管理仓库平台。

# 其他类型的安装包

在Linux中除了rpm格式类型的包,还存在一些其他类型的软件包。

分类 安装 版本
rpm包 预先编译打包,安装简单 软件版本偏低
源码包 手动编译打包,安装繁琐 软件版本随意
二进制包 解压即可使用,安装简单 不能修改源码

# RPM包管理命令

# rpm安装软件包

  • -i:安装软件包
  • -v:显示安装过程.
  • -h:显示安装进度条

使用rpm命令安装本地路径下软件包

[root@web ~]# rpm -ivh /mnt/Packages/tree-1.6.0-10.el7.x86_64.rpm
[root@web ~]# rpm -ivh /mnt/Packages/vsftpd-3.0.2-22.el7.x86_64.rpm
1
2

使用rpm命令安装互联网上的软件包

[root@web ~]# rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.9-1.el7.x86_64.rpm
1

# rpm依赖包安装

包依赖是指A-->依赖-->B,B-->依赖-->C,而C-->依赖-->A。当我们需要安装的rpm类型包出现了依赖关系应该如何处理,比如安装samba软件包。

[root@web ~]# rpm -ivh /mnt/Packages/samba-4.8.3-4.el7.x86_64.rpm
	error: Failed dependencies:
	libxattr-tdb-samba4.so()(64bit) is needed by samba-0:4.8.3-4.el7.x86_64
	libxattr-tdb-samba4.so(SAMBA_4.8.3)(64bit) is needed by samba-0:4.8.3-4.el7
.x86_64
	samba-common-tools = 4.8.3-4.el7 is needed by samba-0:4.8.3-4.el7.x86_64
	samba-libs = 4.8.3-4.el7 is needed by samba-0:4.8.3-4.el7.x86_64
1
2
3
4
5
6
7
  1. 尝试安装依赖包samba-common

    [root@web ~]# rpm -ivh /mnt/Packages/samba-common-4.9.1-6.el7.noarch.rpm
    
    1
  2. 尝试安装依赖包samba-libs

    [root@web ~]# rpm -ivh /mnt/Packages/samba-libs-4.8.3-4.el7.x86_64.rpm
    
    1
  3. 尝试安装依赖包samba-common-tools

    [root@web ~]# rpm -ivh /mnt/Packages/samba-common-tools-4.8.3-4.el7.x86_64.rpm
    
    1
  4. 最后尝试安装samba主程序包

    [root@web ~]# rpm -ivh /mnt/Packages/samba-4.8.3-4.el7.x86_64.rpm
    
    1

PS:由于rpm工具安装rpm包依赖关系太强,所以通常我们都是使用yum来解决

# rpm升级软件包

下载zabbix-agent软件包,分别下载3.0低版本、然后下载4.2高版本来进行测试与实验。

[root@web ~]# wget https://mirrors.aliyun.com/zabbix/zabbix/3.0/rhel/7/x86_64/zabbix-agent-3.0.9-1.el7.x86_64.rpm

[root@web ~]# wget https://mirrors.aliyun.com/zabbix/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.0-1.el7.x86_64.rpm
1
2
3
  1. 先安装zabbix-agent-3.0低版本

    [root@web ~]# rpm -ivh zabbix-agent-3.0.9-1.el7.x86_64.rpm
    
    1
  2. 尝试使用rpm -ivh安装zabbix-agent-4.2高版本(会出现报错)

    [root@web ~]# rpm -ivh zabbix-agent-4.2.0-1.el7.x86_64.rpm
    
    1
  3. 使用rpm -Uvh升级zabbix-agent至4.2版本。(完美解决)

    [root@web ~]# rpm -Uvh zabbix-agent-4.2.0-1.el7.x86_64.rpm
    
    1

# rpm卸载软件包

如果需要卸载rpm包,可以先查看该包是否存系统中,然后在进行卸载操作。

  1. 使用rpm -q查询软件包是否存在系统

    [root@web ~]# rpm -q zsh
    
    1
  2. 使用rpm -e卸载软件包

    [root@web ~]# rpm -e zsh
    
    1

# rpm查询软件包

选项 描述
rpm -q 查看指定软件包是否安装
rpm -qa 查看系统中已安装的所有RPM软件包列表
rpm -qi 查看指定软件的详细信息
rpm -ql 查询指定软件包所安装的目录、文件列表
rpm -qc 查询指定软件包的配置文件
rpm -qf 查询文件或目录属于哪个RPM软件
  • 查询vsftpd这个rpm包是否安装

    [root@web ~]# rpm -q vsftpd
    
    1
  • 模糊查找系统已安装的rpm包

    [root@web ~]# rpm -qa |grep ftp
    
    1
  • 查询vsftpd软件包相关信息

    [root@web ~]# rpm -qi vsftpd
    
    1
  • 查询vsftpd软件包所安装后在系统中生成的文件路径

    [root@web ~]# rpm -ql vsftpd
    
    1
  • 查询vsftpd软件包的主配置文件

    [root@web ~]# rpm -qc vsftpd
    
    1
  • 查询配置文件或系统命令是由哪个rpm包提供

    [root@web ~]# rpm -qf /etc/vsftpd/vsftpd.conf
    [root@web ~]# rpm -qf /usr/sbin/vsftpd
    [root@web ~]# rpm -qf $(which cd)
    bash-4.2.46-31.el7.x86_64
    # rpm需要知道命令的绝对路径,如果不存在该命令是无法查找到该命令所属的软件包
    
    1
    2
    3
    4
    5
  • 查询未安装的rpm包会产生哪些文件

    [root@web ~]# rpm -qlp /mnt/Packages/samba-3.6.23-41.el6.x86_64.rpm
    
    1
#Linux
Last Updated: 2021/11/12, 16:51:33
文件压缩
yum

← 文件压缩 yum→

最近更新
01
谷歌云创建GKE集群
07-26
02
ElastiCacheForRedis启用密码
07-26
03
upload-to-gcs
06-29
更多文章>
Theme by Vdoing | Copyright © 2021-2024 Brc | MIT License | 浙ICP备19031881号-4
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式