如何正确安装一个源码包

    下周就要考试了,心情挺忐忑不安的,前几天做了25期的考试题,感觉每个题都是老师上课讲过的,但是自己做却想不起来了。这应该就像学习数学一样,需要大量练习,做的多了自然就会了。

    这周我们学习了如何使用yum,还学习了磁盘管理。针对如何安装源码包,以httpd包为例我们今天做个详细的见解。

一、如何找到正确的网站下载源码包

    使用rpm -qi httpd 能查到正确的网站

    如何正确安装一个源码包

    此时我们可以看到URL 一个网址,输入这个网址就可以了

    如何正确安装一个源码包

    因为我们的版本是2.4 ,所以要找2.4.27 (如果是centos6里面是2.2版本的),下载以后解包,解压出一个httpd-2.4.27目录

    注释:如果你解压不了,可能没有公钥,需要导入一个公钥即可

rpm – -import GPG-KEY…   导入公钥之后就能解压了,不导入公钥不安全。

二、如何安装指定路径

    查看httpd-2.4.27/INSTALL和httpd-2.4.27/   会有这四步,教你如何安装

    如何正确安装一个源码包

三、指定下载路径 配置文件的路径 以及一些其他选项

    使用./configure – -prefix=/app/apache24 – -sysconfdir=/etc/apache24执行

    此时执行过程中总是会报错,你仔细看会看到有很多依赖包你没有安装,如gcc此时你需要做这步操作之前安装一个包组 Development tools

    使用yum groupinstall Development tools安装Development tools包组,安装之后你会发现一切非常顺利的进行,此时这步就完成了。此时进入server目录下都是源码文件

    如何正确安装一个源码包

四、make  执行以上步骤后你会看到一个Makefile文件,此时才能使用make

    然后将server内的文件转化为二进制文件.o

    如何正确安装一个源码包

五、make install  此时安装指定路径的文件既可

    如何正确安装一个源码包

    此时指定路径已经生成了,配置文件也已经生成了。

六、启动网络服务

    查看网络监听情况netstat -ntl

    如何正确安装一个源码包

    可以明显看到此时没有80端口,所以我们要启动服务service httpd start

    启动完成后就有80端口了,然后输入你的IP地址就能查看htdocs/index.html里面所指定显示的内容了。如果网页刷新不出来,那就是你的防火墙被关掉了

    systemctl is-active httpd.service 查看当前防火墙是否开启

    systemctl stop httpd.service 是当前关闭防火墙,仅当前,电脑重启之后就不行了

    systemctl is-enabled httpd.service 查看系统启动时是否开启

    如果显示的是enabled,那就输入下面一条命令,关闭启动时开启

    systemctl disable httpd.service     关闭系统启动时开启

    如何正确安装一个源码包

    此时关闭了没有80端口,然后使用/app/apache24/bin/apachectl start  启动http.service

    此时查看IP地址显示的就是你想要的东西

    如何正确安装一个源码包

    如果改/etc/apache24/htdocs/index.html 里面的文件内容,则在网页上显示的就是你所更改的内容,例如

    如何正确安装一个源码包

    如何正确安装一个源码包

七、设置PATH及man路径

    export PATH=$PATH:/app/apache24/bin/

    如何正确安装一个源码包

    然后就可以直接调用apachectl命令了

    vim /etc/man_db.conf

    如何正确安装一个源码包

    这样就能直接man apachectl,查看apachectl的详细信息了。

    以上的内容针对我们安装源码包的时候遇到一些问题能够解决。希望能够帮到大家!

原创文章,作者:In summer,如若转载,请注明出处:http://www.178linux.com/84980

(0)
In summerIn summer
上一篇 2017-08-19 15:23
下一篇 2017-08-19 16:12

相关推荐

  • ansible

    Ansible 1、  特性: 模块化:调用特定的模块,完成特定任务; 基于Python语言实现部署简单:agentless; 支持自定义模块; 支持playbook;编排任务; ansible自身并不实现任何管理任务,它的所有管理任务,统统都使用模块完成;             &nb…

    Linux干货 2016-11-11
  • N–25期 第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash declare -i sumlogin=0 declare -i sumnologin=0 for i …

    Linux干货 2017-03-07
  • 创建一个简易的Linux

      目标:   为CentOS 6添加一块新硬件,提供两个主分区;    (1) 为硬盘新建两个主分区;并为其安装grub;    (2) 为硬盘的第一个主分区提供内核和ramdisk文件; 为第二个 分区提供rootfs;    (3) 为rootfs提供bash、ls、cat程序及所依赖的库文件;    (4) 为grub提供配置文件;    …

    Linux干货 2016-12-30
  • N25-第八周

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态; 在线的主机使用绿色显示; 不在线的主使用红色显示; #!/bin/bash ipnet=172.16.250. trap ‘trap_action’ INT trap_action() { break return 1 } for ((i=1…

    Linux干货 2017-05-27
  • N25第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ]# grep -E '^[[:space:]]+.*' /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;…

    Linux干货 2017-01-08
  • SElinux

    selinux  配置文件 修改   就要重启 targeted:用来保护常见的网路服务,仅有限进程受到selinux控制,只监控容易被入侵的进程。 targeted  慢慢完善的法律 系统默认使用   targeted     CENTOS6 CENTOS7 ZAI &nbsp…

    Linux干货 2016-09-14