跟我一起学习Linux安装及管理程序

.Linux应用程序基础

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

角色

系统命令

应用程序

文件位置

一般在/bin/sbin目录中,或为Shell内部指令

通常在/usr/binlusrlsbin/usr/local/bin/usrllocal/sbin目录中

主要用途

完成对系统的基本管理工作,例如IP配置工具

完成相对独立的其他辅助任务,例如网页浏览器

适用环境

一般只在字符操作界面中运行

根据实际需要,有些程序可在图形界面中运行

运行格式

一般包括命令字、命令选项和命令参数

通常没有固定的执行格式,由程序开发者自行定义

 

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

文件类型

保存目录

说明

普通的可执行文件

/usr/bin

所有用户可执行

服务器程序、管理程序文件

/usr/sbin

只有管理员能执行

应用程序配置文件

/etc

通过rpmyum方式安装的应用程序

日志文件

/var/log

系统日志

应用程序参考文档文件

/usr/share/doc

关于应用程序的参考文档等数据

应用程序手册页文件

/usr/share/man

执行文件及配置文件的man手册页

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

文件类型

保存目录

RPM软件包

扩展名为”.rpm”,适用于RHELCentOS等系统

DEB软件包

扩展名为”.deb”,适用于UbuntuDebian等系统

源代码软件包

般为“.tar.gz. ".tar.bz2”等格式的压缩包

包含程序的原始代码,需要编译安装

 

附带安装程序的软件包

软件包的扩展名不一,以TarBall格式的居多

在软件包中会提供用于安装的可执行程序或脚本文件,如install.shsetup

安装时只需运行安装文件就可以根据向导程序的提示完成安装操作

二. RPM管理包工具

1. rpm命令格式

  1. rpm命令能够实现几乎所有对RPM软件包的管理功能
  2. 执行"man rpm”命令可以获得关于rpm命令的详细帮助信息
  3. rpm命令功

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

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

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

2. RPM软件包管理器 -Red-Hat PackageManager

  1. Red Hat公司提出。被众多Linux发行版本采用
  2. 建立统一的文件数据库
  3. 详细记录软件包安装、卸载、升级等变化信息
  4. 自动分析软件包依赖关系

3. RPM软件包

 

  1. 软件素材参考:http://www.rpm.org
  2. 一般命名格式
  3. 查询RPM软件包信息

 

包名-版本号-发布次数-发行商-Linux平台-适合的硬件平台-包扩展名

name-version-release.arch.rpm

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

2) 示例 :    rpm -qa | grep -i postfix

3) 查询已安装的RPM软件信息

常用选项

作用

rpm -q 软件名 

#查询指定软件是否已安装

rpm -qa 软件名 

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

rpm -qi 软件名

#显示已安装的指定软件的详细信息

rpm -ql 软件名

#显示已安装的指定软件的文件列表

rpm -qc 软件名

#列出已安装的指定软件的配置文件

rpm -qd 软件名

#列出已安装的指定软件的软件包文档所在位置

rpm -qR 软件名

#列出已安装的指定软件的依赖的软件包及文件

rpm -qf 软件名

 #查询已安装的指定软件属于哪个安装包

 

 

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

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

常用选项

作用

rpm -qpi 软件名

#显查询指定软件包的详细信息

rpm -qpi 软件名

 #显查询指定软件包的详细信息

rpm -qpc 软件名  

 #显查询指定软件包的配置文件

rpm -qpd 软件名

 #显查询指定软件包文档的位置

  1. 安装、升级、卸载软件包

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

2) 示例 :    rpm -ivh RPM软件包

3) 安装或升级RPM软件

常用选项

作用

rpm -i 

安装一个新的 RPM 软件包

rpm -U   

升级某个软件包,若未安装过,则进行安装

rpm -h

在安装或升级安装包的过程中,以”#“号显示安装进度

rpm -v 

显示软件安装过程中的详细信息

rpm --force

强制安装某个软件包,比如要安装版本更旧的软件包

格式:   rpm -e 软件名

卸载指定的RPM软件

常用选项

作用

rpm -e 

 卸载指定名称的软件包

rpm --nodeps

 在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系

4. 维护RPM数据库

  1. 重建RPM数据库

a) [root@localhost~]# rpm --rebuilddb

b) [root@localhost ~]# rpm --initdb

  1. 导入验证公钥

a) [root@localhost ~]#rpm --import /medialcdrom/RPM-GPG-KEY-CentOS-7

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

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

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

b) 可同时指定多个.rpm包文件进行安装

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

a) 可同时指定多个软件名进行卸载

b) 可同时指定多个软件名进行卸载

  1. 忽略依赖关系

a) 结合"--nodeps”选项,但可能导致软件异常

三. 源代码编译安装

1. 源代码编译概述

  1. 使用源代码安装软件的优点

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

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

  1. 应用场合举例

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

b) 当前安装的程序无法满足需要时

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

2. 编译安装过程

 

3. tar解包

  1. 示例    [root@localhost ~]# tar zxf httpd-2.4.25.tar.gz -C usr/src
  2. 习惯上将软件包释放到/usr/src/目录
  3. 解包后的源代码文件位置

a) lusrlsrc/软件名-版本号/

posted @ 2021-06-20 15:26  青山不改水长流  阅读(85)  评论(0)    收藏  举报