`
achun
  • 浏览: 307112 次
  • 性别: Icon_minigender_1
  • 来自: 河南郑州
社区版块
存档分类
最新评论

LNMMP 安装脚本

阅读更多

笔记中

 

#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
# Check if user is root
if [ $(id -u) != "0" ]; then
    echo "Hi: You must be root to run this script, please use root to install lnmmp"
    exit 1
fi
clear
echo "========================================================================"
echo "LNMMP for Debian/Ubuntu VPS ,  Written by achun "
echo "========================================================================"
echo "A tool to auto-compile & install Nginx+MySQL+MongoDB+PHP on Linux "
echo "========================================================================"

echo "=============              clean system                    ============="
cd $cur_dir
#wget https://github.com/lowendbox/lowendscript/raw/master/setup-debian.sh --no-check-certificate
#dpkg -P apache2 apache2-doc apache2-mpm-prefork apache2-utils apache2.2-common
#bash setup-debian.sh system
apt-get -q -y remove --purge apache2*
apt-get -q -y remove --purge samba*
apt-get update
apt-get -y upgrade

echo "=============         Modify /etc/apt/sources.list         ============="
cur_dir=$(pwd)

has=$(fgrep -c dotdeb.org /etc/apt/sources.list)
if [ $has = "0" ]; then
mv /etc/apt/sources.list /etc/apt/sources.list.backup
cat >>/etc/apt/sources.list<<EOF
deb http://php53.dotdeb.org stable all
deb-src http://php53.dotdeb.org stable all
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all
deb http://downloads.mongodb.org/distros/debian 5.0 10gen
EOF
fi

#gpg --keyserver http-keys.gnupg.net --recv-key 89DF5277
#gpg -a --export 89DF5277 | apt-key add -
apt-key adv --keyserver http-keys.gnupg.net --recv-key 89DF5277
apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
apt-get update

apt-get install -y ntp
ntpdate -d cn.pool.ntp.org
date
apt-get install -y apt-spy
apt-spy update
apt-spy -d stable -a $area -t 5
apt-get update

echo "=============               dev library                    ============="
apt-get -y install g++ ncurses-dev

echo "=============               cmake                          ============="
cd $cur_dir
if [ -s cmake-2.8.3.tar.gz ]; then
  echo "cmake-2.8.3.tar.gz [found]"
  else
  echo "Hi: cmake-2.8.3.tar.gz not found!!!download now......"
  wget http://www.cmake.org/files/v2.8/cmake-2.8.3.tar.gz
fi

tar -zxf cmake-2.8.3.tar.gz
cd cmake-2.8.3
./configure
make
make install

echo "=============               PCRE  library                  ============="
cd $cur_dir
if [ -s pcre-8.12.tar.gz ]; then
  echo "pcre-8.12.tar.gz [found]"
  else
  echo "Hi: pcre-8.12.tar.gz not found!!!download now......"
  wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.12.tar.gz
fi

tar zxf pcre-8.12.tar.gz
cd pcre-8.12
./configure
make
make install
echo "=============               vsftpd  install                ============="
apt-get -y install vsftpd

echo "=============               MongoDB install                ============="
apt-get -y install mongodb-stable

echo "=============      PHP5 +fmp+memcache+gd  install          ============="
#if [ -s php-5.3.5.tar.bz2 ]; then
#  echo "php-5.3.5.tar.bz2 [found]"
#  else
#  echo "Hi: php-5.3.5.tar.bz2 not found!!!download now......"
#  wget -c http://www.php.net/distributions/php-5.3.5.tar.bz2 -O php-5.3.5.tar.bz2
#fi

# install with php5-memcache extension
#if [ -s memcached-1.4.5.tar.gz ]; then
#  echo "memcached-1.4.5.tar.gz [found]"
#  else
#  echo "Hi: memcached-1.4.5.tar.gz not found!!!download now......"
#  wget -c http://memcached.googlecode.com/files/memcached-1.4.5.tar.gz -O memcached-1.4.5.tar.gz
#fi

apt-get -y install php5-fpm php5-memcache php5-gd php5-dev php5-mysql

if [ $(whereis phpize) = "phpize:"]; then
echo "php5-dev not install!! phpize not found!!	die"
exit 1
fi
echo "=============      PHP5 Extension   mongo-php-drive        ============="
cd $cur_dir
if [ -s mongo-php-driver.tar.gz ]; then
  echo "mongo-php-driver.tar.gz [found]"
  else
  echo "Hi: mongo-php-driver.tar.gz not found!!!download now......"
  wget --no-check-certificate https://github.com/mongodb/mongo-php-driver/tarball/master -O mongo-php-driver.tar.gz
fi
tar zxf mongo-php-driver.tar.gz
cd mongo-php-driver
phpize
./configure
make install
echo "extension=mongo.so">>/etc/php5/fpm/conf.d/mongo.ini

echo "=============      PHP5 Extension eaccelerator             ============="
cd $cur_dir
if [ -s eaccelerator-0.9.6.1.tar.bz2 ]; then
  echo "eaccelerator-0.9.6.1.tar.bz2 [found]"
  else
  echo "Hi: eaccelerator-0.9.6.1.tar.bz2 not found!!!download now......"
  wget -c http://bart.eaccelerator.net/source/0.9.6.1/eaccelerator-0.9.6.1.tar.bz2 -O eaccelerator-0.9.6.1.tar.bz2
fi
tar jxf eaccelerator-0.9.6.1.tar.bz2
cd eaccelerator-0.9.6.1
phpize
./configure
make install
echo "extension=eaccelerator.so">>/etc/php5/fpm/conf.d/eaccelerator.ini

echo "=============      PHP5 Extension eaccelerator             ============="
cd $cur_dir
if [ -s sphinx-1.1.0.tgz ]; then
  echo "sphinx-1.1.0.tgz [found]"
  else
  echo "Hi: sphinx-1.1.0.tgz not found!!!download now......"
  wget -c http://pecl.php.net/get/sphinx-1.1.0.tgz
fi
tar zxf sphinx-1.1.0.tgz
cd sphinx-1.1.0
phpize
./configure
make install

echo "extension=sphinx.so">>/etc/php5/fpm/conf.d/sphinx.ini



echo "=============                    Nginx                     ============="
groupadd www
useradd -g www www
mkdir -p /home/wwwroot
chmod +w /home/wwwroot
mkdir -p /home/wwwlogs
chmod 777 /home/wwwlogs
touch /home/wwwlogs/nginx_error.log
chown -R www:www /home/wwwroot
mkdir -p /var/tmp/nginx
chmod 777 /var/tmp/nginx

cd $cur_dir
if [ -s nginx-0.8.54.tar.gz ]; then
  echo "nginx-0.8.54.tar.gz [found]"
  else
  echo "Hi: nginx-0.8.54.tar.gz not found!!!download now......"
  wget -c http://nginx.org/download/nginx-0.8.54.tar.gz -O nginx-0.8.54.tar.gz
fi
tar zxf nginx-0.8.54.tar.gz
cd nginx-0.8.54
./configure \
	--user=www \
	--group=www \
	--prefix=/usr/local/nginx \
	--conf-path=/etc/nginx/nginx.conf \
	--error-log-path=/var/log/nginx/error.log \
	--pid-path=/var/run/nginx.pid \
	--lock-path=/var/lock/nginx.lock \
	--http-log-path=/var/log/nginx/access.log \
	--http-client-body-temp-path=/var/tmp/nginx/body \
	--http-proxy-temp-path=/var/tmp/nginx/proxy \
	--http-fastcgi-temp-path=/var/tmp/nginx/fastcgi \
	--with-http_flv_module \
	--with-http_gzip_static_module \
	--with-http_ssl_module \
	--with-http_stub_status_module \
	--with-file-aio \
	--with-ipv6

#--with-debug \
#--without-http_ssi_module \
#--with-http_dav_module

make && make install

echo "=============      phpMyAdmin              ============="
cd $cur_dir
if [ -s phpMyAdmin-3.3.9-all-languages.tar.bz2 ]; then
  echo "phpMyAdmin-3.3.9-all-languages.tar.bz2 [found]"
  else
  echo "Hi: phpMyAdmin-3.3.9-all-languages.tar.bz2 not found!!!download now......"
  wget -c http://cdnetworks-us-1.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.3.9/phpMyAdmin-3.3.9-all-languages.tar.bz2 -O phpmyadmin.tar.bz2
fi
tar zxf phpmyadmin.tar.gz
mv phpmyadmin /home/wwwroot/

echo "=============                    MySQL                     ============="
cd $cur_dir
if [ -s mysql-5.5.8.tar.gz ]; then
  echo "mysql-5.5.8.tar.gz [found]"
  else
  echo "Hi: mysql-5.5.8.tar.gz not found!!!download now......"
  wget -c http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.8.tar.gz/from/http://mysql.mirrors.hoobly.com/ -O mysql-5.5.8.tar.gz
fi
groupadd mysql
useradd -g mysql mysql
mkdir -p /data/mysql
chown mysql:mysql /data/mysql
tar zxf mysql-5.5.8.tar.gz
cd mysql-5.5.8
cmake . \
	-DCMAKE_BUILD_TYPE:STRING=Release \
	-DCMAKE_INSTALL_PREFIX:PATH=/usr/local/mysql \
	-DCOMMUNITY_BUILD:BOOL=ON \
	-DENABLED_PROFILING:BOOL=ON \
	-DENABLE_DEBUG_SYNC:BOOL=OFF \
	-DINSTALL_LAYOUT:STRING=STANDALONE \
	-DMYSQL_DATADIR:PATH=/data/mysql \
	-DMYSQL_MAINTAINER_MODE:BOOL=OFF \
	-DWITH_EMBEDDED_SERVER:BOOL=OFF \
	-DWITH_EXTRA_CHARSETS:STRING=all \
	-DWITH_SSL:STRING=bundled \
	-DWITH_UNIT_TESTS:BOOL=OFF \
	-DWITH_ZLIB:STRING=bundled \
	-DWITH_COMMENT=dancebear \
	-DWITH_INNOBASE_STORAGE_ENGINE=0 \
	-DDEFAULT_CHARSET=utf8 \
	-DDEFAULT_COLLATION=utf8_general_ci \
	-DMYSQL_USER=mysql \
	-LH
#-DWITH_MYISAM_STORAGE_ENGINE=1 \
#-DWITH_INNOBASE_STORAGE_ENGINE=1   \
#-DWITH_SPHINX_STORAGE_ENGINE=1   \
make
make install

cp /usr/local/mysql/support-files/my-small.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
cp -R /usr/local/mysql/share /usr/share/mysql
mkdir /var/run/mysqld
chown mysql:mysql /var/run/mysqld
cd /usr/local/mysql/bin
for i in *; do ln -s /usr/local/mysql/bin/$i /usr/bin/$i; done
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
echo "=============                    my.cnf                    ============="
echo "default-storage-engine=MyISAM"

echo "=============            coreseek                          ============="
cd $cur_dir
if [ -s coreseek-4.0.1-beta.tar.gz ]; then
  echo "coreseek-4.0.1-beta.tar.gz [found]"
  else
  echo "Hi: coreseek-4.0.1-beta.tar.gz found!!!download now......"
  wget -c http://www.coreseek.cn/uploads/csft/4.0/coreseek-4.0.1-beta.tar.gz -O coreseek-4.0.1-beta.tar.gz
fi
tar zxf coreseek-4.0.1-beta.tar.gz
cd coreseek-4.0.1-beta
cd mmseg-3.2.14
./bootstrap
./configure --prefix=/usr/local/mmseg3
make && make install
cd ..

cd csft-4.0.1
sh buildconf.sh
./configure --prefix=/usr/local/coreseek  --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql
make && make install

echo 'Install complete'
 
分享到:
评论

相关推荐

    mysql8一键化安装脚本

    mysql8一键化安装脚本 1 可以自由安装在任何目录下(直接回车默认安装在/auto),而且所有的东西都在此目录下,不会出现在其他目录中 2 内置可以在存储过程中执行Linux命令插件 3 安装完成后,cd /auto/mysql/support-...

    mysql8.0 附带一键安装脚本

    mysql8.0 附带一键安装脚本

    msi 安装脚本资料

    msi 安装脚本资料msi 安装脚本资料msi 安装脚本资料msi 安装脚本资料msi 安装脚本资料

    net3.5 快速安装脚本

    快速从系统安装盘中安装net 3.5的脚本 几秒钟就可以完成安装

    Oracle DG一键安装脚本

    Oracle DG安装一键安装脚本

    一键安装脚本 shell 安装脚本 可供参考

    常用jar,免去搜索烦恼,亲测可用常用jar,免去搜索烦恼,亲测可用

    Homebrew 国内安装脚本.zip

    Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内安装脚本 Homebrew 国内...

    mysql5.7 安装脚本

    mysql5.7 安装脚本 mysql5.7 安装脚本 mysql5.7 安装脚本 mysql5.7 安装脚本

    软件自动安装脚本软件自动安装脚本 软件自动安装 自动安装

    很好用,自动安装软件录制 软件自动安装脚本 软件自动安装 自动安装

    nginx一键安装包含自动安装脚本

    linux系统nginx一键自动离线安装包,含安装脚本。内含zlib、pcre、openssl、nginx等安装包

    windows驱动安装脚本

    windows驱动安装脚本devconwindows驱动安装脚本devconwindows驱动安装脚本devconwindows驱动安装脚本devconwindows驱动安装脚本devconwindows驱动安装脚本devconwindows驱动安装脚本devconwindows驱动安装脚本devcon

    万能安装脚本制作工具

    全屏软件自动安装管理器,模仿drag0n作者delphi语言编写的秋无痕安装管理器界面 可设定背景切换时间间隔,可在执行安装时设定为运行目标软件本身或其对应的自动安装AU3脚本

    SQL SERVER 自动安装脚本

    通过脚本运行,全程不需要做任何处理,等待安装完成。 WINDOWS SERVER 2008亲测可用

    elasticsearch-7.7(内含一键安装脚本)

    elasticsearch-7.7(内含一键安装脚本)

    挂机多宝安装脚本.apk

    挂机多宝安装脚本.apk

    NSIS(Nullsoft 脚本安装系统)安装程序

    NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System) 的缩写,它是一个免费的 Win32 安装、卸载系统,采用了简洁高效的脚本方式。它本来是一个由 Nullsoft 创建并用于作为 Winamp 及其插件...

    docker离线安装脚本.zip

    Linux centos7离线安装脚本, 里面包含 安装包, 安装脚本, 卸载脚本, 安装说明 脚本中自动开启IPv4转发, 自动安装docker-compose, 自动设置开机自启动

    自动安装脚本生成工具_4.7

    用这软件先获取设置系统、软件或程序安装的过程 生成自动设置或自动安装的exe,下次运行这个生成的exe,就能帮你全自动设置或全自动安装你想安装...你自己有弄不了自动安装程序,用我的“自动安装脚本生成工具”能成的

    centos7 zabbix 一键安装脚本

    shell脚本完成zabbix 3.4 版本的一键安装过程,减少新手或小白的操作难度,即装即用,快速体验。

    常用操作系统及软件安装脚本或文档.zip

    常用操作系统及软件安装脚本或文档.zip常用操作系统及软件安装脚本或文档.zip 常用操作系统及软件安装脚本或文档.zip常用操作系统及软件安装脚本或文档.zip 常用操作系统及软件安装脚本或文档.zip常用操作系统及软件...

Global site tag (gtag.js) - Google Analytics