在企业级的服务器中构建LAMP平台中,最常用的是通过源码包的方式来创建,因为系统自带的rpm包由于版本比较老,对新功能的支持并不是太好,而且有些功能对自己的企业并没有什么用处,而官方提供的提供的rpm已经把它编译到其中,如果我们使用rpm时必须完全使用官方提供的,自己安装其中一个组件想和rpm提供的接口连接又比较困难,所以在这篇文章中我将向大家介绍一下通过源码包构建LAMP架构。
利用源码搭建LAMP主要有以下三个步骤:
1. ./configure(脚本)--prefix(指明安装路径)--sysconfir(安装完后配置脚本配置路径)
2. Make (编译成二进制文件或模块)
3. make install
这些服务的源代码我们可以试着在它的官网上下载
Apache (官网) www.apache.org
Mysql (官网) www.mysql.com
Php (官网) www.php.net
安装这些包前,我们还需要提前配置好一些编译环境 gcc glib
我们可以是使用yum grouplist 查看包组
主要需要安装的包组有:
Development Libraries 开发库
Legacy Software Development 传统软件的开发工具
Development Tools 开发工具
基于图形的开发工具:
KDE Software Development kde的软件开发工具
X Software Development gename 的软件开发工具
Java Development 依赖于java的开发工具
这些开发工具包组,我们将没有安装的一个个安装:
yum groupinstall "KDE Software Development" 使用这种方法一个个安装
将下载过得源代码导入到linux系统中:
#########安装mysql#################
[root@uodekoaix ~]# mkdir /mnt/cdrom
[root@uodekoaix ~]# mount /dev/cdrom /mnt/cdrom //创建并挂载光盘
[root@uodekoaix ~]# vim /etc/yum.repos.d/rhel-debuginfo.repo //yum服务器搭建
[root@uodekoaix ~]# yum grouplist //查看源代码安装所必须的开发库开发工具是否安装
[root@uodekoaix ~]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local/ //解压文件
[root@uodekoaix ~]# cd /usr/local/mysql-5.5.15-linux2.6-i686/
[root@uodekoaix mysql-5.5.15-linux2.6-i686]# less INSTALL-BINARY //查看帮助文件,其中说明了配置步骤
[root@uodekoaix local]# ln -s mysql-5.5.15-linux2.6-i686/ mysql //将mysql-5.5.15-linux2.6-i686超链接到mysql
[root@uodekoaix local]# cd mysql //可直接使用cdmysql切换到mysql-5.5.15-linux2.6-i686目录下
[root@uodekoaix mysql]# groupadd mysql //创建组
[root@uodekoaix mysql]# useradd -r -g mysql mysql //创建账号并将账号加入到组中
[root@uodekoaix mysql]# cd /usr/local //切换到local目录
[root@uodekoaix local]# cd mysql //切换到mysql目录下
[root@uodekoaix mysql]# chown -R mysql . //改变mysql目录下所有子对象的所有者为mysql
[root@uodekoaix mysql]# chgrp -R mysql . //改变改变mysql目录下所有子对象的所属组为mysql
[root@uodekoaix mysql]# scripts/mysql_install_db --user=mysql //以mysql身份进行初始化
[root@uodekoaix mysql]# chown -R root . //将所有的子对象的所有者改回管理员
[root@uodekoaix mysql]# chown -R mysql data //data目录所有者仍为mysql
[root@uodekoaix mysql]# cp support-files/my-medium.cnf /etc/my.cnf //在etc下生成mysql的配置文件
[root@uodekoaix mysql]# bin/mysqld_safe --user=mysql & //启动mysql
[root@uodekoaix mysql]# cp support-files/mysql.server /etc/init.d/mysqld // 在etc下生成mysql的控制脚本,实现service mysqld start
将mysql的头文件与库文件导出,便于系统的查找
系统的库文件主要存在三个位置:/lib /usr/lib /usr/local/lib
/etc/ld.so.conf.d定义非标准软件包安装库文件链接
[root@uodekoaix mysql]# chkconfig --list |grep mysql
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭 //2345级别默认开启
[root@uodekoaix mysql]# chkconfig --add mysqld //实现开机自启动
[root@uodekoaix mysql]# ll /etc/rc.d/rc3.d/ |grep mysql //64表示start
lrwxrwxrwx 1 root root 16 08-29 07:04 S64mysqld -> ../init.d/mysqld [root@uodekoaix mysql]# cd /etc/ld.so.conf.d/
[root@uodekoaix ld.so.conf.d]# vim mysql.conf //编辑文件
[root@uodekoaix ld.so.conf.d]# ldconfig -v |grep mys #搜索库文件
[root@uodekoaix ld.so.conf.d]# cd /usr/local/mysql
[root@uodekoaix mysql]# cd /usr/include/
[root@uodekoaix include]# ln -s /usr/local/mysql/include/ mysql //创建链接
[root@uodekoaix include]# ll mysql/ #显示头文件
####################安装apache################
[root@uodekoaix ~]# tar -jxvf httpd-2.2.19.tar.bz2 -C /usr/local/src/ //解压文件
[root@uodekoaix ~]# cd /usr/local/src/
[root@uodekoaix src]# ll //显示解压的文件
[root@uodekoaix src]# cd httpd-2.2.19/
[root@uodekoaix httpd-2.2.19]# ./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so --enable-ssl --with-z //测试
[root@uodekoaix httpd-2.2.19]# make //编译
[root@uodekoaix httpd-2.2.19]# make install //把文件放到相应目录
[root@uodekoaix httpd-2.2.19]# cd /usr/local/apache/bin
[root@uodekoaix bin]# file apachectl //查看文件类型
apachectl: Bourne shell script text executable //Bourne shell脚本可执行的
[root@uodekoaix bin]# vim apachectl
[root@uodekoaix bin]# ./apachectl start //启动apache
[root@uodekoaix bin]# netstat -tupln |grep 80 //搜索80端口是否启动
暂未实现service httpd start 和chkconfig httpd on
[root@uodekoaix apache]# cd /etc/ld.so.conf.d/ //切换目录
[root@uodekoaix ld.so.conf.d]# vim httpd.conf //创建文件
//库文件目录
[root@uodekoaix ld.so.conf.d]# cd /usr/local/apache/lib/
[root@uodekoaix lib]# ldconfig –v
[root@uodekoaix lib]# ldconfig -pv |grep apr //搜索跟apache相关的
[root@uodekoaix lib]# cd /etc/ld.so.conf.d/
[root@uodekoaix ld.so.conf.d]# cd /usr/include/
[root@uodekoaix include]# ln -s /usr/local/apache/include/ apache //创建超链接
[root@uodekoaix include]# ll apache / //查看头文件
######################安装PHP################
[root@uodekoaix ~]# tar -jxvf php-5.3.7.tar.bz2 -C /usr/local/src //解压文件
[root@uodekoaix ~]# cd /usr/local/src/
[root@uodekoaix src]# ll
总计 8
drwxr-xr-x 12 zhaoke zhaoke 4096 08-29 08:22 httpd-2.2.19
drwxr-xr-x 13 1000 1000 4096 2011-08-17 php-5.3.7
[root@uodekoaix src]# cd php-5.3.7/
[[email protected]]#./configure--prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs--with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring=all
[[email protected]]#make //编译
[[email protected]]#make install //将文件放到相应目录
[[email protected]]cd /usr/local/apache/htdocs
[root@uodekoaix htdocs]# /usr/local/bin/apachectl start
[root@uodekoaix htdocs]# ll
[root@uodekoaix htdocs]# vim /etc/httpd/httpd.conf
测试httpd
[root@uodekoaix htdocs]# vim /etc/httpd/httpd.conf
测试可以调用mysql
[root@uodekoaix htdocs]# mv index.html index.php //将文件index.html改为index.html
[root@uodekoaix htdocs]# vim /etc/httpd/httpd.conf
测试可以调用php
LAMP源码的搭建已经完成,接着可以做应用了。。。。。