软件包分类
源码安装和rpm安装区别
软件安装位置不同 源码安装需要指定安装路径 rpm默认安装rpm包设置的目录
例:
rpm安装的服务可以使用系统服务管理命令 service 来管理
/etc/rc.d/init.d/httpd start
service httpd restart (service 实际搜索/etc/rc.d/init.d/路径下的命令)
源码包需要自己指定的目录(当然可以自己复制到/etc/rc.d/init.d/)
/usr/local/apache2/bin/apachectl start
配置文件等其他文件同理
源码包
①安装c语言编译器
需要手动编译安装,可以设置安装位置(默认/usr/local/软件名/)
由于源码包文件都是由C语言编写,所以linux需要C语言编译器 gcc
rpm -qa | grep gcc 查询是否安装gcc
yum -y install gcc 使用yum安装gcc②下载源码包
wget命令 下载源码包wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.27.tar.gz
源代码保存位置:/usr/local/src/
软件安装位置:/usr/local/tar zxvf httpd-2.4.27.tar.gz #解压缩 cd httpd-2.4.27 #进入解压缩目录
./configure 软件配置与检查
定义需要的功能选项 ./configure –help 查看检测系统环境是否符合安装要求 将上面两项生成Makefile文件,用于后续编译(make make install 都依赖于这个文件) 选项: --prefix=/usr/local/apache2 指定安装位置
make 编译
make clean (报错时)清除编译临时文件
make install 安装
安装出错时需要把/usr/local/apache2 安装文件删除cd /usr/local/apache2 /usr/local/apache2/bin/apachectl start #启动
(可进入源码包下的 INSTALL 文件中查看说明)
二进制包(RPM包)
rpm包在系统光盘中,需要进行挂载 软件包在packages目录
rpm依赖性1. 树形依赖:a->b->c 2. 环形依赖:a->b->c->a 需要一条命令同时安装 3. 模块依赖(库文件依赖):.so.数字 结尾依赖文件,依赖某个包中的文件 查询网站:www.rpmfind.net
rpm 默认安装位置(具体位置由rpm作者决定)
/etc/ 配置文件安装目录 /usr/bin/ 可执行的命令安装目录 /usr/lib/ 程序所使用的函数库保存位置 /usr/share/doc/ 基本的软件使用手册保存位置 /usr/share/man/ 帮助文件保存位置
命令
包全名 如:httpd-2.2.15-15.e16.centos.1.i686.rpm 包名 如:httpd
rpm
安装 -ivh 包全名 -i 安装 升级 -Uvh 包全名 -U 升级 卸载 -e 包名 -e 卸载 查询 -q 包名 查询是否安装rpm包 -qa 包名 查询所有已安装的rpm包 rpm -qa | grep httpd -qi 包名 查询软件信息 -qip 包全名 查询未安装的rpm信息 -ql 包名 查询文件位置 -qlp 包全名 查询未安装文件 安装后的文件位置 -qf 系统文件名 查询系统文件属于哪个rpm包 -qR 包名 查询依赖软件包 -qRp 包全名 查询未安装软件的依赖软件包 校验 -V 包名 S 文件大小是否被修改 M 文件类型或权限是否被修改 5 文件MD5校验和是否改变(可以看成文件内容被改变) D 设备的主从代码是否改变 L 文件路径是否改变 U 文件的所有者是否改变 G 文件的所属组是否改变 T 文件的修改时间是否改变 c 配置文件 d 普通文档 g 不应该被这个rpm包包含的文件 r 描述文件 L 授权文件 文件提取 rpm2cpio 包全名 | cpio -idve .文件绝对路径 -rpm2cpio 将rpm包转换为cpio格式的命令 -cpio 是一个标准工具,他用于创建软件档案文件和从档案文件中提取文件
选项:
-v 显示详细信息 -h 显示进度 --nodeps 不检测依赖性(一般不使用)
yum安装(自动解决依赖性问题)
yum配置 /etc/yum.repos.d默认使用 CentOS-Base.repo 配置项说明 [base] 容器名称 name 容器说明 mirrorlist 镜像站点,可以注释 baseurl yum源服务器地址。默认为centos yum源服务器地址 enabled 是否生效,1为生效,0为不生效 gpgcheck RPM数字证书,1为生效,0为不生效 gpgkey 数字证公钥保存位置 使用本地光盘yum源,修改CentOS-Base.repo 为CentOS-Base.repo.bak 修改CentOS-Media.repo 设置baseurl的光盘挂载地址 命令 查询 yum list查询可用的软件包列表 yum search 关键字 搜索服务器上所有关键字相关的包 安装 yum -y install 包名 -install 安装 -y 自动回复yes 升级 yum -y update 包名 yum update 全部升级 卸载 yum -y remove 包名 -remove 卸载 软件组命令 yum grouplist 列出所有可用的软件组列表 yum groupinstall 软件组名 安装 yum groupremove 软件组名 卸载
3.脚本安装包
实际上还是安装源码包或者rpm包
将安装过程写成脚本,一键安装(如lnmp安装包)
优点:简单,快速,方便
缺点:不能定义安装软件的版本
不能定义所需要的软件功能