Linux应用程序管理(rpm yum 源码安装)

一.Linux应用程序基础

当我们主机安装Linux操作系统时候,也会同时安装一些软件或网络服务等等,但是随着系统一起安装的软件包毕竟他是少数的,能够实现的功能也是有限的,如果需要实现更丰富的功能,那就需要安装应用程序。

1.应用程序和系统命令的关系

两者的用途区别:

系统命令:命令文件一般在安装操作系统一起安装,用于辅助操作系统本身的管理。

应用程序:应用程序一般需要在操作系统之外另行安装,提供相对独立操作系统的功能,有时候等同于“软件“的概念。

2.典型的应用程序的目录结构

3.常见的软件包封装类型

对于各种应用 程序的软件包,在封装时可以采用各种不同的类型,不同类型的软件包其安装方法也各不相同。

二.rpm包管理工具

1.rpm概述

Red-Hat Package Manager

由Red Hat公司提出,被众多Linux发行版所采用

建立统一的数据库文件

详细记录软件包安装、卸载等变化信息

自动分析软件包依赖关系

rpm软件包格式

使用RPM机制封装的软件包文件拥有约定俗称的命名格式:

一般命令格式:bash-4.12-15.el6_4.x86_64.rpm

2.rpm命令格式

RPM命令能够实现几乎所有对RPM软件包的管理功能

执行“man rpm” 命令可以获得关于rpm命令的详细帮助信息

rpm命令功能:

查询、验证RPM软件包的相关信息

安装、升级、卸载RPM软件包

维护RPM数据库信息等综合管理操作

3.查询rpm软件包的信息

3.1查询已安装的rpm软件信息

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

常用子选项

选项功能
rpm  -q对已安装的软件进行查询
rpm  -ql  软件名查看某软件的所有安装目录
rpm  -qc  软件名查看软件的配置文件     
rpm  -q  软件名查看软件是否安装
rpm  -qa(all)

显示当前系统中以 rpm 方式安装的所有软件列表

rpm  -qi  软件名

查看指定软件包的名称、版本、许可协议、用途描述等详细信息

rpm  -qd  软件名列出已安装的指定软件的软件包文档所在位置
rpm  -qf(file)  软件名

查看指定的文件或目录是由哪个软件包所安装的

rpm  -qF  软件名查询已安装的指定软件属于哪个安装包
3.2查询未安装的rpm软件的文件中的信息

格式:rpm -qp  [子选项]  rpm包文件名(绝对路径的软件包名)

选项说明
rpm  -qpd查询未安装指定软件包的文档位置
rpm   -qpi查询未安装指定软件包的完整名称详细信息
rpm   -qpl查询未安装指定软件包的文件列表
rpm  -qpc查询未安装指定软件包的配置文件位置

4.安装、升级、卸载rpm软件包

格式:rpm  [选项]  rpm包文件

常用选项

选项功能
-i安装一个新的rpm软件包
-v显示软件安装过程中的详细信息
-h在安装或升级软件过程中,以“#”号显示安装进度
-e卸载指定名称的软件包
-U升级某个软件包,若未安装过,则进行安装
-F升级某个软件包,若未安装过,则放弃安装
–force强制安装某个软件包,比如要安装版本更久的软件包
–nodeps在安装或升级、卸载一个软件包时,不检查与其它软件包的依赖关系(会导致软件无法使用)

实例:安装tree

5.维护rpm数据库

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

基本格式:

rpm --rebuilddb 或rpm --initdb

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

基本格式:

mount  /dev/sr0  /mnt/   #先挂载

rpm --import /mnt/RPM-GPG-KEY-CentOS-7 #导入公钥

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

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

被依赖的软件包需要先安装

可同时制定多个 .rpm包文件进行安装

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

依赖其他的程序的软件包需要先卸载

可同时制定多个软件名进行卸载

③忽略依赖关系

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

三.yum安装

1.什么是yum

yum(Yellow dog Updater Modified)是一个在Fedora和RedHat以及SUSE中的shell前段软件包管理器。

基于rpm包管理,能够从制定的服务器自动下载rpm包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,不需要频繁地一次次下载安装。

yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁又好记。

2.如何实现安装服务

元信息是一个文件 里面记录了安装包的路径  安装包的依赖关系

  1. 客户端根据配置文件找到服务端
  2. 客户端将元信息下载到本地仓库(元信息:安装包的位置,以及安装的依赖关系)
  3. 根据元信息去下载对应的安装包到本地后,然后安装
  4. 安装完成后再删除安装包

3.配置本地yum源仓库

虚拟机设置

1.先挂载

2.切换到指定目录 ,新建一个文件夹,将自带的仓库移走,目的是减少网络源的干扰

3.新建yum仓库

4.删除yum缓存并更新(至此,yum本地源已创建完成)

5. 检验是否安装成功

4.yum常用命令使用

指令用途
yum  -y  install 软件名安装升级软件包
yum  -y  remove  软件名卸载软件包,可自动解决其依赖关系
yum  -y  update  软件名 升级软件包  

“ -y ” 选项表示自动确定

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

指令用途
yum  info  软件名查询软件包的描述信息
yum  search  all(关键字)  软件名根据某个关键字来查找相关的软件包
yum  whatprovides  命令查询命令属于哪个软件包

四.源代码编译安装

1.源代码编译概述

使用源代码优点

获得最新的软件版本,及时修复bug

根据用户需要,灵活定制软件功能

应用场合举例

安装较新版本的应用程序时

当前安装的程序无法满足需求时

需要为应用程序添加新的功能时

2.编译安装的基本过程

源码编译安装

./configure

安装准备工作

1.选择装在哪里

2.检查编译环境

3.选择安装模块,默认安装,额外的一些软件功能

./configure  --help  看到可以安装的模块

make   make  -j 2 代表使用两核cpu编辑

将所有的源代码翻译成二进制,会形成一个绿色的可执行的文件

make install

将执行的文件,及相关的一些依赖文件拷贝到之前的指定的目录中

关闭防火墙和防护

实操下载nginx

1.创建并切换到data下,下载nginx安装包

2.解压源码包

3.切换目录到他下面

4.安装编译环境需要的包

5.配置安装路径

6.编译和安装

7.简化操作,关闭防火墙和防护

8.开启服务,然后检测服务是否开启

9.测试

  • 25
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值