其他分享
首页 > 其他分享> > rmp

rmp

作者:互联网

程序的安装与管理

一、 Linux应用程序基础

1.1 应用程序和系统命令的关系

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

1.2 典型应用程序的目录结构

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

1.3 常见的软件包封装类型

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

二、 RPM软件包管理工具

2.1 RPM软件包

在这里插入图片描述

2.2 RPM命令

2.3 查询RPM软件包信息

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

1.格式:

rpm -q[子选项][软件名]
[root@cheng0307 /]# rpm -q python
python-2.7.5-58.el7.x86_64
[root@cheng0307 /]# rpm -q pytho
未安装软件包 pytho 			#软件名必须要书写正确

2.常用选项:
♦ rpm-q 软件名:查询指定软件是否安装
♦ rpm-qi 软件名:显示已安装的指定软件的详细信息
♦ rpm-9l 软件名:显示已安装的指定软件的文件列表
♦ rpm-qc 软件名:列出已安装的指定软件的配置文件
♦ rpm-qd 软件名:列出已安装的指定软件的软件包文档所在位置
♦ rpm-qR 软件名:列出已安装的指定软件的依赖的软件包及文件
♦ rpm-qF 软件名:查询已安装的指定软件属于哪个安装包

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

3.实例1:qi的使用(显示已安装的指定软件的详细信息)
在这里插入图片描述
4.实例2:ql的使用(显示已安装的指定软件的详细信息)
在这里插入图片描述

5.实例3:qc的使用(列出已安装的指定软件的配置文件)
在这里插入图片描述
6.实例4:qd的使用(列出已安装的指定软件的软件包文档所在位置)
在这里插入图片描述
7.实例5:qR的使用(列出已安装的指定软件的依赖的软件包及文件)
在这里插入图片描述

8.实例6:qF的使用(查询已安装的指定软件属于哪个安装包)
在这里插入图片描述
在这里插入图片描述

9.实例7:rpm结合管道符号实现模糊查询
在这里插入图片描述

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

1.格式:

rpm -qp[子选项] rpm包文件

2.常用选项

子选项命令说明
rpm -qpi RPM包文件名查询指定软件包的详细信息
rpm -qpl RPM包文件名查询指定软件包的文件列表
rpm -qpc RPM包文件名查询指定软件包的配置文件
rpm -qpd RPM包文件名查询指定软件包的软件包文档的位置

3.rpm -qpi RPM包文件名 (查询指定软件包的详细信息)在这里插入图片描述
4. rpm -qpl RPM包文件名(查询指定软件包的文件列表)
在这里插入图片描述

2.4 RPM软件包的管理

1.格式:

rpm [选项]  RPM软件包
rpm -ivh   RPM软件包       #常用安装软件包
rpm -evh   RPM软件包       #常用卸载软件包

2.常用选项

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

3.实例1:安装dhcp软件
在这里插入图片描述
4.实例2:卸载dhcp软件
在这里插入图片描述

2.5 维护RPM数据库

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

格式:

rpm --rebuilddb      			#方法一
rpm --initdb					#方法二


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

格式:

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

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

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

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

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

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

2.6.3 忽略依赖关系

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

三、 yum软件包管理工具

3.1 配置本地yum源仓库

[root@cheng0307 ~]# mount /dev/cdrom /mnt/			#挂载cd
[root@cheng0307 ~]# cd /etc/yum.repos.d/
[root@cheng0307 yum.repos.d]# mkdir repos.bak			#创建一个目录
[root@cheng0307 yum.repos.d]# mv *.repo repos.bak/		#把repo文件全都移入

[root@cheng0307 yum.repos.d]# vim local.repo
###local.repo 配置如下
[local]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0   

案例:配置本地yum源仓库
在这里插入图片描述

3.2 yum常用的操作命令

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

♦	yum list						#查询软件包列表
♦	yum list installed				#查询系统中已安装的软件包
♦	yum list available 				#查询仓库中尚未安装的软件包
♦	yum list updates				#查询可以升级版本的软件包

♦	yum info软件名					#查询软件包的描述信息
♦	yum info httpd

♦	yum search [all] 关键词			#根据某个关键词来查找相关的软件包
♦	yum search all httpd

♦	yum whatprovides 命令			#查询命令属于哪个软件包
♦	yum whatprovides netstat

1.实例:安装tree软件
在这里插入图片描述
2.实例2:查询tree的描述信息

在这里插入图片描述
3.实例3:根据dhcp来查找相关的软件包

在这里插入图片描述
4.实例4:查询ifconfig命令属于哪个软件包
在这里插入图片描述

四、 源代码编译安装

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


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


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


           
  1. 安装
make install

                
            
             
            
                
                
        

标签:rmp,安装,RPM,yum,软件包,软件,rpm
来源: https://blog.csdn.net/weixin_55614692/article/details/116155368