关键词:
#!/bin/bash
#
# **********************************************************
# * filename: lamp_install.sh *
# * discription: lamp install *
# * version: centos6.7 apr-1.5.2 apr-util-1.5.4 *
# * httpd-2.4.6 mysql-5.5.32 php-5.6.15 *
# * date: 2016/09/07 *
# * author: wangbo *
# * mail: [email protected] *
# **********************************************************
#
function init()
{
#shutdown SELINUX
setenforce 0;
#stop iptables
/etc/init.d/iptables stop;
echo "***********************************";
echo "*init finished! *";
echo "***********************************";
}
#check root user ,net
function base_check()
{
#check user root
if [ `whoami` = "root" ]
then
echo "***********************************";
echo "*root user *";
echo "***********************************";
else
echo "***************************************";
echo "*change to root,please input password *";
echo "***************************************";
su - root -s /bin/bash /usr/local/src/lamp_install.sh;
#exit 1;
fi
echo "***********************************";
echo "*is root user! *";
echo "***********************************";
#the count of lose package
lpcount = ping -c 4 www.baidu.com | grep received | awk ‘{print $6}‘ | sed -e ‘s/%//g‘;
#check net
if [ $lpcount -gt 2 ]
then
echo "***********************************";
echo "*Please check your network *";
echo "***********************************";
exit 1;
fi
echo "***********************************";
echo "*network is ok! *";
echo "***********************************";
}
function package_check()
{
echo "###";
}
function apr_install()
{
cd /usr/local/src;
tar xzf apr-1.5.2.tar.gz;
cd apr-1.5.2;
./configure
--prefix=/usr/local/apr
if [ $? -ne 0 ]
then
echo "***********************************";
echo "*apr configure failed,stop... *";
echo "***********************************";
exit 1;
fi
make && make install;
if [ $? -ne 0 ]
then
echo "***********************************";
echo "*php make failed , stop... *";
echo "***********************************";
fi
exit 1;
echo "***********************************";
echo "*apr installed successfully! *";
echo "***********************************";
}
function apr_util_install()
{
cd /usr/local/src;
tar xzf apr-util-1.5.4.tar.gz;
cd apr-util-1.5.4;
./configure
--with-apr=/usr/local/apr
--prefix=/usr/local/apr-util
if [ $? -ne 0 ]
then
echo "***********************************";
echo "*apr-util configure failed,stop...*";
echo "***********************************";
exit 1;
fi
make && make install;
if [ $? -ne 0 ]
then
echo "***********************************";
echo "*apr-util make failed , stop... *";
echo "***********************************";
fi
exit 1;
echo "***********************************";
echo "*apr-util installed successfully! *";
echo "***********************************";
}
function httpd_install()
{
yum -y install pcre pcre-devel openssl openssl-devel zlib-devel;
cd /usr/local/src/;
tar xzf httpd-2.4.16.tar.gz;
cd httpd-2.4.16;
./configure
--prefix=/usr/local/apache
--sysconfdir=/etc/httpd
--enable-so
--enable-rewrite
--enable-ssl
--enable-cgi
--enable-cgid
--enable-modules=most
--enable-mods-shared=most
--enable-mpms-shared=all
--with-apr=/usr/local/apr
--with-apr-util=/usr/local/apr-util
if [ $? -ne 0 ]
then
echo "********************************"
echo "*httpd configure failed,stop...*";
echo "********************************"
exit 1;
fi
make && make install;
if [ $? -ne 0 ]
then
echo "***************************";
echo "*php make failed , stop...*";
echo "***************************";
exit 1;
fi
if [$? -ne 0 ]
then
echo "**************************"
echo "*httpd make filed,stop...*";
echo "**************************"
exit 1;
fi
sed -i ‘/^ServerRoot/a PidFile "/var/run/httpd.pid"‘ /etc/httpd/httpd.conf;
cp /usr/local/src/httpd /etc/init.d/httpd;
chmod +x /etc/init.d/httpd;
export PATH=$PATH:/usr/local/apache/bin;
chkconfig --add httpd;
chkconfig --level 35 httpd on;
echo "*******************************"
echo "*httpd installed successfully!*";
echo "*******************************"
}
function mysql_install()
{
cd /usr/local/src;
tar xzf mysql-5.5.32-linux2.6-x86_64.tar.gz -C /usr/local/;
cd /usr/local;
ln -sv mysql-5.5.32-linux2.6-x86_64 mysql;
groupadd -r -g 306 mysql;
useradd -g 306 -r -u 306 mysql;
if [ $? -ne 0 ]
then
echo "************************************";
echo "*create user or group faild,stop...*";
echo "************************************";
exit 1;
fi
cd /usr/local/mysql;
chown -R mysql.mysql .;
chown -R mysql data;
chmod o-rx data;
scripts/mysql_install_db --user=mysql;
chown -R root /usr/local/mysql/*
chown -R mysql.mysql /usr/local/mysql/data
cp support-files/mysql.server /etc/init.d/mysqld;
cp support-files/my-large.cnf /etc/my.cnf;
export PATH=$PATH:/usr/local/mysql/bin;
sed -i ‘$a MANPATH /usr/local/mysql/man‘ /etc/man.config;
touch /etc/ld.so.conf.d/mysql.conf;
sed -i ‘$a /usr/local/mysql/lib‘ /etc/ld.so.conf.d/mysql.conf;
ln -sv /usr/local/mysql/include /usr/include/mysql;
echo "*******************************";
echo "*mysql installed successfully!*";
echo "*******************************";
}
function php_install()
{
yum -y install libxml2 libxml2-devel bzip2 bzip2-devel;
if [ $? -ne 0 ]
then
echo "********************************************";
echo "*dependency package installed faild,stop...*";
echo "********************************************";
exit 1;
fi
rpm -ivh libmcrypt-2.5.8-4.el5.centos.x86_64.rpm libmcrypt-devel-2.5.8-4.el5.centos.x86_64.rpm
if [ $? -ne 0 ]
then
echo "********************************************"
echo "*dependency package installed faild,stop...*";
echo "********************************************"
exit 1;
fi
cd /usr/local/src;
tar xf php-5.6.15.tar.bz2;
cd php-5.6.15;
./configure
--prefix=/usr/local/php
--with-mysql=/usr/local/mysql
--with-openssl
--with-mysqli=/usr/local/mysql/bin/mysql_config
--enable-mbstring
--with-freetype-dir
--with-jpeg-dir
--with-png-dir
--with-zlib
--with-libxml-dir=/usr
--enable-xml
--enable-sockets
--with-apxs2=/usr/local/apache/bin/apxs
--with-mcrypt
--with-config-file-path=/etc
--with-config-file-scan-dir=/etc/php.d
--with-bz2
--enable-maintainer-zts
if [ $? -ne 0 ]
then
echo "******************************";
echo "*php configure failed,stop...*";
echo "******************************";
exit 1;
fi
make && make install;
if [ $? -ne 0 ]
then
echo "****************************";
echo "*php make failed , stop... *";
echo "****************************";
exit 1;
fi
cp php.ini-production /etc/php.ini;
sed -i ‘392a AddType application/x-httpd-php .php‘ /etc/httpd/httpd.conf;
sed -i ‘393a AddType application/x-httpd-php-source .phps‘ /etc/httpd/httpd.conf;
sed -i ‘s/index.html$/& index.php/‘ /etc/httpd/httpd.conf;
echo "*****************************";
echo "*php installed successfully!*";
echo "*****************************";
}
function show_main_menu()
{
echo "********************************";
echo "* the program of lamp install *";
echo "********************************";
echo "* 1、一键安装 *";
echo "********************************";
echo "* 2、逐个安装 *";
echo "********************************";
}
function show_second_menu()
{
#请按照apr->apr-util->http->mysql->php顺序安装
echo "*******************************";
echo "* please choose the program *";
echo "*******************************";
echo "* 1、初始化 *";
echo "*******************************";
echo "* 2、基础检查 *";
echo "*******************************";
echo "* 3、安装包检查 *";
echo "*******************************";
echo "* 4、安装 apr *";
echo "*******************************";
echo "* 5、安装 apr-util *";
echo "*******************************";
echo "* 6、安装 httpd *";
echo "*******************************";
echo "* 7、安装mysql *";
echo "*******************************";
echo "* 8、安装php *";
echo "*******************************";
}
function all_install()
{
apr_install;
apr_util_install;
httpd_install;
mysql_install;
php_install;
}
function tmp()
{
show_second_menu;
choose_install;
}
function choose_install()
{
echo -e ">>c";
read num;
if [ $num -eq "1" ]
then
init;
tmp;
elif [ $num -eq "2" ]
then
base_check;
tmp;
elif [ $num -eq "3" ]
then
package_check;
tmp;
elif [ $num -eq "4" ]
then
apr_install;
tmp;
elif [ $num -eq "5" ]
then
apr_util_install;
tmp;
elif [ $num -eq "6" ]
then
httpd_install;
tmp;
elif [ $num -eq "7" ]
then
mysql_install;
tmp;
elif [ $num -eq "8" ]
then
php_install;
tmp;
fi
}
function lamp_install()
{
show_main_menu;
echo -e ">>c";
read num 2&>1 > /dev/null;
if [ $num -eq "1" ]
then
all_install;
elif [ $num -eq "2" ]
then
tmp;
fi
}
lamp_install;
本文出自 “shell实现计算器” 博客,请务必保留此出处http://codekong.blog.51cto.com/10704076/1850915
lamp之编译安装
在linux中由于存在yum这种包管理方式,使得安装部署软件变得十分简单易用,但在某些特定情况下,由于有特殊需求,需要基于编译这种方式来定制化安装所需要的软件,以能特供自己所需的功能,此处我们来基于编译实现LAMP环... 查看详情
一键编译安装lamp(代码片段)
...码包php:php-7.3.5tar.bz2源码包以上所有源码包存,以及一键安装脚本存放在root家目录下,运行一键安装脚本。脚本运行完毕,使用浏览器访问测试页一键安装脚本#!/bin/bashL 查看详情
源码编译安装lamp
一、概述1、源码编译安装LAMP为什么要源码编译 一般来说,我们软件的安装方式有yum(rpm),和源码编译两种方式,那么为什么我们需要源码编译安装一部分软件?选择源码编译安装软件有以下几个原... 查看详情
编译安装lamp
...。本次实验以CentOS7为搭建环境,并且已经使用源码编译安装了httpd-2.4(默认使用prefork模块)和使用通用二进制格式安装了mariadb-5.5。现在将php分别编译成httpd模块和fpm方式工作。httpd模块形式编译安装php编译php并配置# 查看详情
lamp之自动化编译安装
1概述LAMP目前在CentOS6不支持php-fpm的安装,安装高版本的数据库在centos6上也需要通过编译安装完成,本文介绍了Modules模式和FastCGI模式快速部署LAMP的包和相关操作,同时附上了一键安装的编译脚本。2 快速部署LAMP在CentOS6和7中... 查看详情
编译安装lamp
一、编译安装apache1、解决依赖关系,先下载好这三个包httpd-2.4.9,apr-1.5.0.tar.bz2,apr-util-1.5.3.tar.bz22、准备开发环境,安装DevelopmentTools,ServerPlatformDevelopment;使用命令yumgroupinstall,这里不多阐述;3、编译安装apr-1.5.0.tar.bz24、编... 查看详情
centos6编译安装lamp
Centos6系统上编译安装lamp所有操作都是关闭防火墙和selinex的前下提先进行的httpd和php的组合方式:Modules:把php编译成httpd的DSO对象;Prefork:需要libphp5的支持Event、worker:需要libphp5-zts的支持。所以如果pmp之间需要切换工作方式的化... 查看详情
编译安装lamp
软件包链接:http://pan.baidu.com/s/1mijn44g 密码:abja 系统环境:centos7开发环境:Developmenttools、ServerPlatformDevelopmenthttp+php的方式:PHP模块化个程序版本:mariadbmariadb-5.5.46-linux-x86_64.tar.gzhttphttpd-2.4. 查看详情
lamp2.4两种实现方式
LAMP----->2.4模块实现yum groupinstall "Development Tools" "Server Platform Development"------>安装包组1、编译安装Apachehttpd-2.4.9需要较新版本的apr和apr-util,因此需要事先对其进行升级(1)、编译安装aprtar& 查看详情
4-源码方式基于lamp架构搭建bbs论坛或者博客(代码片段)
目录一、项目简介二、环境准备三、编译安装MySQL四、编译安装Apache五、编译安装PHP六、后续配置七、启动相关服务八、源码编译软件经验总结九、部署web应用排错1:排错2:排错3:大功告成!课程目标使用源码方式基于LAMP架构... 查看详情
centos5/6编译安装lamp
一、环境说明准备 本次使用CentOS5.5、Centos6.5,编译安装Apache2.4.20、Mysql-5.5.48、PHP-5.5.30。 编译PHP以Apache模块方式运行。编译PHP前需要先编译好Apache和Mysql。1.关闭SELINUX,配置yum源。setenforce 0sed - 查看详情
centos5/6编译安装lamp
一、环境说明准备本次使用CentOS5.5、Centos6.5,编译安装Apache2.4.20、Mysql-5.5.48、PHP-5.5.30。 编译PHP以Apache模块方式运行。编译PHP前需要先编译好Apache和Mysql。1.关闭SELINUX,配置yum源。setenforce 0sed -i 查看详情
centos6编译安装lamp(fpm模块方式)加速的wordpress应用
准备软件版本:apr-1.5.2.tar.bz2 apr-util-1.5.4.tar.bz2 httpd-2.4.27.tar.bz2 mariadb-5.5.57-linux-x86_64.tar.gz (二进制)php-5.6.31.tar.bz2   查看详情
centos6编译安装lamp(fpm模块方式)加速的wordpress应用
准备软件版本:apr-1.5.2.tar.bz2 apr-util-1.5.4.tar.bz2 httpd-2.4.27.tar.bz2 mariadb-5.5.57-linux-x86_64.tar.gz (二进制)php-5.6.31.tar.bz2   查看详情
源码包搭建lamp环境
第一步 1、安装编译工具gcc* 安装数据库编译工具 cmake bison yum-yinstallgcc* cmake bison2、下载LAMP压缩包:lamp.zip,使用脚本批量解压tar.sh3、关闭防火墙、Selinux 第二步 分别编译安装各... 查看详情
单台主机一键编译部署lamp+wordpress+discuz系统的shell脚本(代码片段)
...以提高编译速度;3、根据需要修改相应的变量,主要是安装目录、用户名、密码;4、Mariadb的grant授权部分,需要先手动修改授权范围(@后面的内容)和密码;5、httpd与php采用sock通讯。?完整的shell脚本#!/bin 查看详情
编译安装lamp脚本
#/bin/bashTAR_DIR=/usr/srcLOCAL_DIR=/usr/localXML2_DIR=/usr/local/libxml2/XML2_TAR_DIR=/usr/src/libxml2-2.9.1LIBMCRYPT_DIR=/usr/local/libmcrypt/LIBMCRYPT_TAR_DIR=/usr/src/libmcrypt-2.5.8MCRYPT_DIR=/usr/local/libmcrypt/MCRYPT_TAR_DIR=/usr/src/libmcrypt-2.5.8LTDL_TAR_DIR=/usr/src/libmcrypt-2.5.8/liblt... 查看详情
lamp平台搭建脚本
#!/bin/bashDATE=`date +%F_%T`#源码包编译安装搭建LAMP平台的。#本脚本所需软件包:cmake-2.8.11.2.tar.gz mysql-5.5.22.tar.gz#httpd-2.2.17.tar.gz php-5.3.28.tar.gz#libmcrypt-2. 查看详情