对外提供服务,比如apache,应使用源码包安装,运行速度快
对内提供服务,比如gcc,只是我自己使用,使用rpm包安装


rpm包不需要指定安装位置,rpm包默认安装位置

/etc/ 配置文件安装目录
/usr/bin/ 可执行命令安装目录
/usr/lib/ 程序所使用的函数库保存位置
/usr/share/doc/ 基本的软件使用手册保存位置
/usr/share/man/ 帮助文件保存位置

源码包需要手动指定安装位置,一般安装在/usr/local/


安装位置不同带来的影响

rpm包安装的服务可以使用系统服务管理命令

如rpm包安装的apache的启动方法是:
/etc/rc.d/init.d/httpd start
service httpd start
service是红帽子系列专有的命令

源码包安装的服务不能被服务管理命令管理,只能用绝对路径管理服务:

如:/usr/local/apache/bin/apachectl start


源码包安装

安装错误判断:安装过程停止且出现error、warning或no的提示
1、安装C语言编译器(gcc)
2、下载源码包 wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.34.tar.gz
3、tar -zxvf httpd-2.4.34.tar.gz
4、进入解压缩目录
vi INSTALL

$ ./configure --prefix=PREFIX
$ make
$ make install
$ PREFIX/bin/apachectl start

5、编译前准备

执行 ./configure --prefix=/usr/local/apache2   

  上面命令的作用:
  a、为后续的编译安装设置一些自定义的选项,如上面的命令自定义了安装目录
    ./configure --help  // 可以显示更多自定义编译安装选项
  b、检测系统环境是否符合安装要求,如果没有gcc会报错
  c、创建Makefile文件,并把自定义选项和检测环境的信息写入Makefile文件,用于后续的编译安装

6、编译 make

出现错误,执行 make clean ,就可以完整清空

7、安装 make install

到目前为止,还没有创建安装目录,即/usr/local下还没有apache2目录

执行此make install后才真正安装了


源码包卸载

直接删除安装目录即可,不会遗留任何垃圾文件

linux 软件包安装方式选择、安装位置、源码包安装的更多相关文章

  1. Linux-软件包管理-RPM安装位置\源码包安装位置

    rpm -ql httpd 查看apache包中文件的安装位置 find /etc -name httpd 查找apache程序的启动执行httpd所在位置 cd /etc/rc.d/init.d 切 ...

  2. Linux yum源码包安装和卸载

    Linux 下的绝大多数源码包都是用 C 语言编写的,还有少部分是用 C++ 等其他程序语言编写的.所以,要想安装源码包,必须安装 C 语言编译器 gcc(如果是用 C++ 编写的程序,则还需要安装 ...

  3. linux 源码包安装拾遗

    源码包安装和apt-get/yum的区别 安装前的区别:概念上的区别 rpm和dpkg包是经过编译过的包,并且其安装位置由厂商说了算,厂商觉得安装在哪里合适,就会装在哪里,而源码包则是没有经过编译的文 ...

  4. 自学Linux Shell9.4-基于Red Hat系统工具包存在两种方式之二:源码包

    点击返回 自学Linux命令行与Shell脚本之路 9.4-基于Red Hat系统工具包存在两种方式之二:源码包 本节主要介绍基于Red Had的系统(测试系统centos) 1. 工具包存在两种方式 ...

  5. Linux学习之源码包安装与脚本安装(十八)

    Linux学习之源码包安装与脚本安装 目录 源码包与RPM包的区别 源码包安装 脚本安装 源码包与RPM包的区别 1.区别 安装之前的区别:概念上的区别 安装之后的区别:安装位置不同 源码包: 开源的 ...

  6. Linux进阶之Linux破解密码、yum源配置、防火墙设置及源码包安装

    一.老师语录: 所有要求笔试的公司都是垃圾公司 笔试(是考所有的涉及到的点) 要有自己的卖点.专长(给自己个标签)(至少一个) 生产环境中,尽量使用mv(mv到一个没用的目录下),少使用rm 二.防火 ...

  7. Linux 源码包安装过程

    安装准备 安装gcc编译器 下载源码包 源代码保存位置:/usr/local/src/ 软件安装位置:/usr/local/ 解压缩下载的源码包 进入解压缩目录 软件配置与检查:./configure ...

  8. Linux源码包安装程序

    ★安装OS时,建议提前安装开发组件 CentOS 6:Development Tools.Server Platform DevelopmentCentOS 7:Development Tools.D ...

  9. [Linux] 028 源码包安装过程

    1. 安装准备 安装 C 语言编译器 下载源码包 如:apache 相应源码包下载地址 2. 安装注意事项 源代码保存位置:/usr/local/src 软件安装位置:/usr/local 如何确定安 ...

随机推荐

  1. 【PaddlePaddle系列】报错解决方法合集 (不定时更新)

    1.PaddlePaddle使用CPU时正常运行,但是使用GPU时却报出一堆错误信息,节选如下: paddle.fluid.core.EnforceNotMet: enforce allocating ...

  2. javascript数据结构与算法--二叉树遍历(先序)

    javascript数据结构与算法--二叉树遍历(先序) 先序遍历先访问根节点, 然后以同样方式访问左子树和右子树 代码如下: /* *二叉树中,相对较小的值保存在左节点上,较大的值保存在右节点中 * ...

  3. web.xml详细配置

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  4. ZigBee 学习资源

    1.雪帕的主页 http://home.cnblogs.com/u/yqh2007/ 2.刘志鹏的主页 http://www.cnblogs.com/hustlzp/archive/2011/02/1 ...

  5. Android PdfViewer

    今天按项目要求找了一个android的PDF控件,各种操作效果都非常好,在这里和大家分享一下. 这是github的地址:https://github.com/barteksc/AndroidPdfVi ...

  6. Java虚拟机(二):JVM内存模型

    所有的Java开发人员可能会遇到这样的困惑?我该为堆内存设置多大空间呢?OutOfMemoryError的异常到底涉及到运行时数据的哪块区域?该怎么解决呢?其实如果你经常解决服务器性能问题,那么这些问 ...

  7. C++字符串string类常用操作详解(一)【初始化、遍历、连接】

    代码示例: #include <iostream> #include "string" using namespace std; //字符串初始化 void strIn ...

  8. java中的复制数组arraycopy()

    System.arraycopy();//静态方法,在System类中定义,注意copy首字母是小写的 例子: int[] a = {1,2,3,4,5}; int[] b = {9,8,7,6}; ...

  9. Innosetup(pascal)标签控件label换行

    Label1.AutoSize := false; //先关闭自适应 Label1.WordWrap := true; //开启换行

  10. C++中迭代器原理、失效和简单实现

    目录 迭代器的使用 迭代器的种类 迭代器的失效 迭代器的实现 1.迭代器的使用 为了提高C++编程的效率,STL中提供了许多容器,包括vector.list.map.set等.有些容器例如vector ...