1. linux软件管理概念:
Linux整个体系的关键不在于系统本身,而是在于可以基于Linux系统去安装和配置企业中相关的软件、
数据及应用程序,所以对软件的维护是运维工程师的重中之重。
2. 软件管理的三种方式:
1. rpm管理:
2. yum管理:
3. 源码方式管理:
Linux软件包管理大致可分为二进制包、源码包,使用的工具也各不相同。
Linux常见软件包分为两种,分别是源代码包(Source Code)、二进制包(Binary Code),源代码包
是没有经过编译的包,需要经过GCC、C++编译器环境编译才能运行,二进制包无需编译,可以直接安
装使用。
通常而言,可以通过后缀简单区别源码包和二进制包,例如.tar.gz、.zip、.rar结尾的包通常称之为源码
包,以.rpm结尾的软件包称之为二进制包。真正区分是否为源码还是二进制还得基于代码里面的文件来
判断,例如包含.h、.c、.cpp、.cc等结尾的源码文件,称之为源码包,而代码里面存在bin可执行文件,
称之为二进制包。
CentOS操作系统中有一款默认软件管理的工具,红帽包管理工具(Red Hat Package Manager,
RPM)。
使用RPM工具可以对软件包实现快速安装、管理及维护。RPM管理工具适用的操作系统包括:
CentOS,RedHat,Fedora,SUSE等,RPM工具常用于管理.rpm后缀结尾的软件包。
2.1 RPM管理:
2.1.1 rpm工作原理:
当我们使用rpm工具安装软件包时,它会首先找到软件包中的一个记录文件,该文件记录了这个软件安
装时需要的依赖包,如果包已经存在,则可以顺利安装,如果不存在,则提示缺少相应的依赖。
RPM优点:
软件已经编译打包,所以传输和安装方便,让用户免除编译。
在安装之前,会先检查系统的磁盘、操作系统版本等,避免错误安装。
在安装好之后,软件的信息都已经记录在linux主机的数据库上,方便查询、升级和卸载。
RPM缺点:
软件包安装的环境必须与打包时的环境一致。
必须安装了软件的依赖软件。
2.1.2 rpm常用命令:
用法: rpm [选项...]
-a:查询所有套件;
-b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
-c:只列出组态配置文件,本参数需配合"-l"参数使用;
-d:只列出文本文件,本参数需配合"-l"参数使用;
-e<套件档>或--erase<套件档>:删除指定的套件;
-f<文件>+:查询拥有指定文件的套件;
-h或--hash:套件安装时列出标记;
-i:显示套件的相关信息;
-i<套件档>或--install<套件档>:安装指定的套件档;
-l:显示套件的文件列表;
-p<套件档>+:查询指定的RPM套件档;
-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
-R:显示套件的关联性信息;
-s:显示文件状态,本参数需配合"-l"参数使用;
-U<套件档>或--upgrade<套件档>:升级指定的套件档;
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。
- rpm -q httpd *查询httpd这个包是否有安装
- rpm -qa *查询系统现在所有安装的包
- rpm -qa|wc -l统计系统安装了多少个包
- rpm -qc nginx 查询nginx的配置文件位置
- rpm -qd rsync 查询rsync各种帮助文件所在位置
- rpm -qf /usr/bin/netstat 查找netstat 是由什么包提供安装的
- rpm {-i|--install} [install-options] PACKAGE_FILE ...显示包的信息
- yum -e gzip 卸载gzip
- r‘p