1、关于编译安装;
通俗的讲就是将源代码变为计算机可执行的代码文件,而后将可执行文件安装到操作系统里,才可使用。
由于Linux操作系统是开放源代码的,因而在此系统上安装的软件大都是开源的,如,Nginx、Aapche等。还有就是开源软件基本都提供下载,源码的安装方式。用户可以根据自己的需要来定制模块从而实现想要的功能。用户可以自行选择安装路径,以便于管理,如果想要删除,只需删除安装的路径即可,不像我们在windows下有的要写入注册表。
2、编译安装的方法;
大多以tar.gz 和tar.bz2打包软件,大多是通过 ./configure ;make ;make install 来安装的;有的软件是直接make;make install ,我们可以通过./configure --help 来查看配置软件的功能;大多软件是提供./configure配置软件的功能的;少数的也没有,如果没有的就不用./configure ;直接make;make install 就行了;./configure 比较重要的一个参数是 --prefix ,用--prefix 参数,我们可以指定软件安装目录;当我们不需要这个软件时,直接删除软件的目录就行了;下面就来看看实例的安装过程
3、如何来编译安装;
以Nginx与apache为例编译安装;
实验环境;vm虚拟机,Centos6.4_64位,测试用本机win7做验证
ftp://172.16.0.1/pub/Sources/sources/httpd/httpd-2.2.25.tar.bz2
ftp://172.16.0.1/pub/Sources/sources/nginx/nginx-1.4.2.tar.gz
4 安装Nginx;
下载源码包至本机,并解压;
[root@localhost ~]# tar xf nginx-1.4.2.tar.gz [root@localhost ~]# cd nginx-1.4.2 [root@localhost nginx-1.4.2]#
并切换到nginx目录下;执行编译安装,指定程序包的安装路径以及配置文件的路径;
[root@localhost nginx-1.4.2]# ./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx
这一步执行完成后会报如下错误信息;
注:意思是HTTP重写模块,依赖于PCPE库需要安装PCPE
所以我们这里先要安装一个pcre-devel模块
yum -y install pcre-devel
再次执行上述安装;
[root@localhost nginx-1.4.2]# ./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx
又再次报如下信息;
./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by using --with-pcre=<path> option.
HTTP gzip模块需要zlib库。我们可以禁用模块――without-http_gzip_module选项。
[root@localhost nginx-1.4.2]# ./configure --prefix=/usr/local/nginx --conf-path=/etc/nginx --without-http_gzip_module
过了上一步余下的就简单了,直接执行;
[root@localhost nginx-1.4.2]# make && make install
至此安装结束。
查看/etc/nginx下的配置文件;
[root@station103~]# ls /etc/nginx fastcgi.conf koi-utf nginx.conf uwsgi_params fastcgi.conf.default koi-win nginx.conf.default uwsgi_params.default fastcgi_params mime.types scgi_params win-utf fastcgi_params.default mime.types.default scgi_params.default
查看安装路径;
[root@station103 ~]#cd /usr/local/nginx/sbin [root@station103 sbin]# pwd /usr/local/nginx/sbin [root@station103 sbin]# ls Nginx 服务启动脚本 [root@station103 sbin]# ./nginx 启动脚本 [root@station103 sbin]# netstat -tnl Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
验证安装是否成功,在本机浏览器输入虚拟机的IP地址即可;
安装Apache;
下载源码包至本机,并解压;
[root@localhost shell]#tar xf httpd-2.2.25.tar.bz2 [root@localhost shell]# cd httpd-2.2.25
cd到httpd目录下 指定程序包的安装路径及配置文件的路径 ,允许模块化使用
./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable �Cso
然后直接执行 make && make install 安装完成
到/etc/httpd目录下查看下配置文件;
到/usr/local/目录查看安装路径;
为能方便的启动apache服务,可以在/etc/profile.d/建立一个以apache.sh结尾的文件
PATH=/usr/local/apache/bin:/usr/local/apaceh/sbin:$PATH export PATH
创建完成后需要重新启用这个文件。source apache.sh或者重新登出一下即可,而后查看下PATH 环境变量
[root@station103 ~]# echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/apache/bin:/usr/local/apaceh/sbin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
启动Apache服务;
[root@station103 ~]# apachectl start
查看端口号是否被监听;
验证服务是否成功启动
由于本人现还在学习阶段,也是第一次写blog,写的不好及有不对之处,还请各位大佬们多多指出,谢谢。