文章目录
1. 安装命令不同
同一台主机上可以安装多个源码包 ,rpm安装则仅能安装一个
1.1 rpm安装
通过命令rpm -ivh xxx.rpm
有限的参数
不需要手动配置环境变量PATH
1.2 源码安装
安装之前需要安装gcc编译器
步骤如下:
./configure '如果安装目录没有configure文件,需要其他相应命令先生成该文件'
make && make install
-
./configure
软件配置和检查 通过使用 ./configure --help 查看帮助检查环境变量及配置编译选项等。
源码安装可以自行调整编译参数,最大化地定制安装结果。这里以MySQL 5线上环境的编译安装来说明之,其编译参数如下所示:
./configure --prefix=/usr/local/mysql --without-debug --without-bench --enable-thread-safe-client --enable-assembler
其中
--prefix=/usr/local/mysql
是指定安装目录 -
make
将源代码编译成二进制文件 //多次执行make命令时,需要 使用make clean 清除上次生成的文件 -
make install
将make编译出来的文件安装到指定位置(或默认位置)
需要手动配置环境变量PATH
源码安装可以自行调整编译参数,最大化地定制安装结果
2. 安装的位置不同
2.1 rpm包安装位置
散落在不同位置:
/etc/ 配置文件位置
/usr/bin/ 可执行命令安装位置
/usr/lib/程序所使用的函数库位置
/usr/share/doc/ 基本软件使用手册位置
/usr/share/man/ 帮助文件保存位置
2.2 源码包安装在指定位置
类似 --prefix=/usr/local/mysql
指定,一般安装在/usr/local/软件名
3. 服务的管理方法的不同
3.1 rpm包 安装命令启动
/etc/rc.d/init.d/httpd start
service httpd start '//centos6'
systemctl命令的基本操作格式是: systemctl 动作 服务名.service '// centos 7'
service 类型的语法,可以在任意位置执行;非service语法,需要进入安装目录,找到命令,再执行
我们以rabbitmq为例,centos7:
[root@localhost bin]$ service rabbitmq-server start '这个命令可以在任意位置执行'
Redirecting to /bin/systemctl start rabbitmq-server.service
从结果来看,centos 7 也支持centos 6语法,只不过仍会转为systemctl 语法
3.2 源码包安装命令启动
需要进入安装目录,找到命令,再执行:
/usr/local/apache2/bin/apachectl start
4. 卸载方式不同
4.4 rpm包安装
rpm -e xxx
源码安装
直接删除文件夹 就能达到卸载的目的