『学了就忘』Linux软件包管理 — 47、Linux源码包的安装和卸载
1、源码包安装服务的注意事项
(1)安装服务选择哪种软件包?(建议)
- 如果软件包是给大量客户提供访问,建议使用源码包安装,如LAMP环境搭建,因为源码包效率更高。
- 如果软件包是给Linux底层使用,或只给少量客户访问,建议使用RPM包安装,因为RPM包简单。
如果不考虑软件效率,用哪种方式都可以。
(2)源码包是从哪里来的?
- RPM包是光盘中直接包含的,所以不需要用户单独下载。
- 而源码包是通过官方网站下载的,如果需要使用,是需要单独下载的。
(3)是否可以在系统中即安装RPM包的Apache,又安装源码包的Apache?
答案是可以,因为两种安装方法安装的Apache,安装位置是不一样的。
例如:
提示:上图文件的位置一定要记下来,有好处。
说明:
service
命令能启动RPM包安装方式安装的软件,是因为service
命令会搜索/etc/rc.d/init.d/
目录下启动命令。- 我可以把源码包安装后启动文件
/usr/1ocal/apache2/bin/apachectl
,拷贝到/etc/rc.d/init.d/
目录下,service
命令就可以用了。- 但是,不推荐上面这种做法。因为软件的安装位置不同,是区分RPM安装还是源码包安装最好的方式。
(Red Hat 6
是这样,Red Hat 7
中有所改变。)
(4)生产服务器上,是否会同时安装两种Apache?
当然不会,因为系统中只有一个80端口,所以你只能启动一个Apache,装多个只能浪费资源。我们建议安装源码包的Apache。
服务是可以修改端口号的:
- 如果服务是给大量客户端访问的,不建议更换端口,因为用户就找不到了。
- 如果服务是给内部人员使用,建议改换端口,因为更加安全。
2、源码包安装服务的过程
我们来解释一下源码包安装的具体步骤。
步骤1:下载软件包。
httpd-2.2.9.tar.gz
步骤2:解压缩源码包。
[root@localhost ~]# tar -zxvf httpd-2.2.9.tar.gz
步骤3:进入源码包的解压目录。
如下图所示:
步骤4:./configure
编译前准备
这一步主要有三个作用:
- 在安装之前需要检测系统环境是否符合安装要求。
- 定义需要的功能选项。
./configure
支持的功能选项较多,可以执行./configure --help
命令查询其支持的功能。
一般都会通过./configure --prefix=安装路径
来指定安装路径。 - 把系统环境的检测结果和定义好的功能选项写入
Makefile
文件,后续的编译和安装需要依赖这个文件的内容。
需要注意的是,configure
不是系统命令,而是源码包软件自带的一个脚本程序,所以必须采用
./configure
方式执行(./
代表在当前目录下)。
步骤5:make编译
make
命令会调用gcc
编译器,并读取Makefile
文件中的信息进行系统软件编译。- 编译的目的就是把源码程序转变为能被Linux识别的可执行文件,这些可执行文件保存在当前目录下。
- 编译过程较为耗时,需要有足够的耐心。
步骤6:make clean:清空编译内容(非必需步骤)。
如果在./configure
或make
编译中报错,那么我们在重新执行命令前一定要记得执行make clean
命令,它会清空Makefile
文件或编译产生的.o
头文件。
注意:源码包报错
- 安装过程必须停止。
- 在最后几行是否出现
no
,warning
,error
关键字,有则说明出现错误。
步骤7:make install:编译安装
这才是真正的安装过程,一般会写清楚程序的安装位置。如果忘记指定安装目录,则可以把这个命令的执行过程保存下来,以备将来删除使用。
注意:只有这步执行了,如果指定了安装的文件夹,才开始创建。这个时候如果安装报错,除了需要执行上边的
make clean
命令,还需要手动的把安装目录给删除掉,才是彻底清空,然后才能重新安装软件。
提示:绝大多数的源码包安装步骤都是和上边一样的,有不一样的单独记一下即可,或者安装的时候查看一下文档也行。
总结:源码包安装出现错误很难解决。所以自己使用服务的时候,能用RPM包安装的尽量用RPM包安装。
3、源码包安装服务的删除
源码包没有删除命令,如果需要删除,直接删除安装目录即可。
4、源码包安装服务的启动
在软件的解压缩目录下就有软件的安装说明,位置如下:
文件内容如下:
说明:
$ ./configure --prefix=PREFIX
: 编译准备$ make
: 编译$ make install
: 安装$ PREFIX/bin/apachectl start
: 启动,是在安装目录下(PREFIX)的bin/apachectl start
5、源码包安装服务的关闭
命令为:软件安装目录/bin/apachectl stop
『学了就忘』Linux软件包管理 — 47、Linux源码包的安装和卸载的更多相关文章
- 『学了就忘』Linux服务管理 — 79、源码包安装的服务管理
目录 1.源码包服务的启动管理 2.源码包服务的自启动管理 3.让源码包服务被服务管理命令识别 1.源码包服务的启动管理 # 通过源码包的安装路径,找到该服务的启动脚本, # 也就是获得该服务的启动脚 ...
- 『学了就忘』Linux软件包管理 — 40、Linux系统软件包介绍
目录 1.Linux系统软件包分类 2.源码包说明 3.二进制包说明 4.RPM包的优缺点 4.RPM包的两种安装方法 5.总结 1.Linux系统软件包分类 Linux系统下的软件包只有源码包和二进 ...
- 『学了就忘』Linux基础 — 15、了解Linux系统的目录结构
目录 1.一级目录说明 (1)一级目录列表 (2)/bin/和/sbin/目录说明 (3)/boot/目录说明 (4)/lib/和/lib64/目录说明 (5)/lost+found/目录说明 (6) ...
- 『学了就忘』Linux日志管理 — 92、日志轮替
目录 1.日志文件的命名规则 2.logrotate配置文件说明 3.logrotate配置文件的主要参数 1.日志文件的命名规则 日志轮替最主要的作用就是把旧的日志文件移动并改名,同时建立新的空日志 ...
- 『学了就忘』Linux日志管理 — 93、日志轮替补充
目录 1.把自己的日志加入日志轮替 (1)操作方式 (2)示例 2.logrotate命令 1.把自己的日志加入日志轮替 使用RPM包方式安装服务的日志会自动的加入logrotate轮替,一般不需要你 ...
- Linux学习笔记15—RPM包的安装OR源码包的安装
RPM安装命令1. 安装一个rpm包rpm –ivh 包名“-i” : 安装的意思“-v” : 可视化“-h” : 显示安装进度另外在安装一个rpm包时常用的附带参数有:--force : 强制安装, ...
- Linux——【rpm、yun、源码包】安装
RPM包或者安装源码包 在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件似乎并不那么轻松,因为我们不是在图形界面下.所以我们要 ...
- Linux系列(37) - 源码包与RPM包区别(1)
源码包是不能使用[service]命令来启动服务,因为源码包的安装位置由用户指定 源码包一般安装在: /usr/local/软件名/ ,源码包安装的服务,只能用绝对路径进行服务的管理 rpm包安装后, ...
- 『学了就忘』Linux基础命令 — 30、find命令详细说明
目录 1.find命令的基本信息 2.find命令基本使用 3.按照文件大小搜索 4.按照修改时间搜索 5.按照权限搜索 6.按照所有者和所属组搜索 7.按照文件类型搜索 8.逻辑运算符 (1)-a: ...
随机推荐
- Redux使用指南
Redux使用指南 00-简介 本文主要是用来记录Redux结合React的使用过程,帮助大家在使用Redux的时候,能够更好的理解Redux,从而更好地使用它 01-为什么需要Redux JavaS ...
- 定制个机器人帮你和Ta聊天
自动聊天示例 这是基于200万聊天记录训练出来的,你可以用自己和女朋友的记录训练了试试效果 至于微信机器人怎么用,你可以 GitHub 搜搜看哈 聊天1: user: 在吗? bot: 在 user: ...
- Idea热部署功能
什么是Idea自动热部署? 热部署是指代码改动之后,调试过程中会服务自动重启,减少手动重启的麻烦,尤其是在微服务开发中,涉及到很多模块的调试更为重要. 如何开启热部署功能? 1.添加如下依赖到项目模块 ...
- 极简SpringBoot指南-Chapter02-Spring依赖注入的方式
仓库地址 w4ngzhen/springboot-simple-guide: This is a project that guides SpringBoot users to get started ...
- CF487E Tourists + 圆方树学习笔记(圆方树+树剖+线段树+multiset)
QWQ果然我已经什么都学不会的人了. 这个题目要求的是图上所有路径的点权和!QWQ(我只会树上啊!) 这个如果是好啊 这时候就需要 圆方树! 首先在介绍圆方树之前,我们先来一点简单的前置知识 首先,我 ...
- CTF入门记录(1
(https://ctf-wiki.org) 00 基础了解 CTF简介 (wolai.com) 00-1 CTF题目类型 Web 大部分情况下和网.Web.HTTP等相关技能有关. Web攻防的一些 ...
- 使用CSS选择器(第一部分)
目录 使用CSS选择器(第一部分) 使用CSS基本选择器 选择所有元素 通用选择器 代码清单1 使用通用选择器 根据类型选择元素 元素类型选择器 代码清单2 使用元素类型选择器 提示 根据类选择元素 ...
- HttpServletResponse 入门
继承体系 功能: 设置响应消息 1. 设置响应行 格式:HTTP/1.1 200 ok 设置状态码:setStatus(int sc) 2. 设置响应头:setHeader(String name, ...
- Billu_b0x2内网渗透(多种提权方法)靶场-vulnhub
个人博客阅读体验更佳 本次来试玩一下vulnhub上的Billu_b0x2,下载地址. 下载下来后是 .ova 格式,建议使用vitualbox进行搭建,vmware可能存在兼容性问题.靶场推荐使用N ...
- 蝉知CMS 7.X XSS漏洞复现
个人博客地址:xzajyjs.cn 作为一个开源的企业门户系统(EPS), 企业可以非常方便地搭建一个专业的企业营销网站,进行宣传,开展业务,服务客户.蝉知系统内置了文章.产品.论坛.评论.会员.博客 ...