`
achun
  • 浏览: 311732 次
  • 性别: 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'
 
分享到:
评论

相关推荐

    万能安装脚本制作工具

    "万能安装脚本制作工具"是一款基于Delphi语言开发的全屏软件自动安装管理器,旨在模仿知名软件drag0n的设计理念,提供一个高效、便捷的自动化安装环境。这款工具的主要特点是允许用户自定义安装过程,特别是可以设定...

    Homebrew 国内安装脚本快速部署 brew 国内镜像

    Homebrew 国内安装脚本,快速部署 brew ,国内镜像。Homebrew是一款在macOS系统上常用的包管理工具,但是在国内使用时可能会遇到下载速度慢的问题。为了解决这个问题,可以通过使用国内镜像来加速Homebrew的安装和...

    自动安装脚本生成器

    在IT行业中,自动安装脚本生成器是一种非常实用的工具,尤其对于系统管理员和软件部署人员来说,它可以极大地提高工作效率。这个工具的主要功能是创建自动化脚本,使得软件的安装过程能够无需人工干预,实现一键式的...

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

    **Nginx 一键安装与自动化脚本** 在IT行业中,服务器配置和管理是一项重要的任务,尤其是在处理Web服务时。Nginx是一款高性能的HTTP和反向代理服务器,以其高效、稳定和轻量级的特性而广受欢迎。本文将详细讨论如何...

    mysql8.0 附带一键安装脚本

    这个“mysql8.0 附带一键安装脚本”可能包含了一个简化 MySQL 8.0 安装过程的自动化脚本,使得在各种操作系统上部署数据库服务器变得更加便捷。 ### MySQL 8.0 的关键特性: 1. **增强的性能**:MySQL 8.0 通过...

    mysql8一键化安装脚本

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

    windows驱动安装脚本

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

    centos 7 MySQL8 离线一键自动安装脚本

    - 使用shell脚本语言编写安装脚本,实现一键自动安装。脚本中需要包含以下步骤: - 安装依赖包:CentOS 7可能缺少一些MySQL8所需的库,如`libaio`,确保先安装它们。 - 添加MySQL的GPG密钥:`rpm --import ...

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

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

    网络打印机一键安装脚本

    网络打印机一键安装脚本是一种高效、便捷的解决方案,旨在消除传统手动安装打印机过程中的复杂性和时间消耗。在现代办公环境中,打印机通常是不可或缺的设备,但它们的安装和配置过程往往涉及许多步骤,包括驱动程序...

    openoffice 自动安装脚本.zip

    它通常包含一个或多个自动化安装脚本(如批处理脚本或Shell脚本),这些脚本设计用于简化OpenOffice在Windows、Linux或Mac OS等不同操作系统上的安装过程。用户只需解压文件,运行脚本,就能自动完成安装,无需手动...

    ffmpeg 自动安装脚本

    自动安装脚本是为了简化FFmpeg的安装过程,使得在不同的操作系统上,尤其是Linux系统中,能够快速、无痛地完成安装。 本自动安装脚本("ffmpeg 自动安装脚本")的目标是提供一个简单易用的方式,让用户只需执行一个...

    oracle11g一键安装脚本

    oracle11g centos7一键安装脚本,脚本里面有完整安装提示说明。大概步骤如下 1、关闭防火墙 2、设置服务器名称并增加映射 3、安装Oracle所需的依赖 4、解压oracle安装包 5、创建用户和组 6、修改内核参数 7、修改用户...

    docker离线安装脚本.zip

    6. **安装说明**:`docker安装说明.txt` 提供了详细的安装指南,帮助用户理解如何使用这些脚本来正确地安装和配置Docker。 离线安装Docker的流程大致如下: 1. **准备阶段**:将`docker离线安装脚本.zip` 文件下载...

    mysql5.7 二进制安装一键安装脚本 for ubuntu

    mysql5.7 二进制安装一键安装脚本 for ubuntu ubuntu 默认shell 是dash 请用 bash执行 /bin/bash mysql5.7_bin_install.sh

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

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

    SQL SERVER 自动安装脚本

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

    RabbitMQ自动安装脚本

    自动安装脚本是为了简化RabbitMQ在服务器上的部署过程,通常由bash或shell脚本编写,它可以自动处理下载、解压、配置、安装依赖和启动服务等一系列步骤。这样可以避免手动操作带来的繁琐和错误,提高效率。对于离线...

    Python-StrongSwan一键安装脚本

    StrongSwan 一键安装脚本

    Linux安装jdk1.8及安装脚本.zip

    本文将详细介绍如何使用提供的"Linux安装jdk1.8及安装脚本.zip"资源来安装JDK 1.8,以及如何执行安装脚本来简化安装过程。 首先,你需要将`jdk-8u221-linux-x64.tar.gz`这个JDK的安装包和安装脚本上传到你的Linux...

Global site tag (gtag.js) - Google Analytics