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

相关推荐

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

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

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

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

    自动安装脚本生成器

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

    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-...

    net3.5 快速安装脚本

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

    graylog-server安装脚本

    该安装脚本是由ansible-playbook所编写的,将本地的rpm保存在file目录下,然后创建hosts文件,添加对应的graylog服务器组,执行ansible--playbook -i hosts graylog.yml即可完成部署。该部署脚本已上生产环境使用,...

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

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

    mysql5.7 安装脚本

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

    网络打印机一键安装脚本

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

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

    3. **运行安装脚本**:通过 `bash install_homebrew.sh` 命令执行脚本,按照脚本中的指示完成 Homebrew 的安装。 ### HomebrewCN 项目 在提供的压缩包文件 `HomebrewCN-master` 中,可能包含了用于国内快速安装 ...

    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亲测可用

    软件自动化安装脚本

    在IT行业中,软件自动化安装脚本是提高效率和减少人为错误的重要工具,特别是在大规模系统部署时。本主题主要关注在Linux环境下使用Shell脚本来实现Java Development Kit (JDK) 和 PostgreSQL 数据库的自动化安装。 ...

    一键安装 Ubuntu Docker 脚本:简化部署流程,提高效率

    该一键安装脚本旨在帮助用户快速部署 Docker 环境于 Ubuntu 操作系统中,简化安装步骤,节省时间。通过此脚本,用户可以快速搭建 Docker 环境,轻松实现容器化部署,提高开发和部署效率。 适用人群: 熟悉 Ubuntu ...

    Python-StrongSwan一键安装脚本

    StrongSwan 一键安装脚本

    windows上一键安装mysql的bat脚本(实测)

    在Windows操作系统中,有时我们需要快速部署MySQL数据库,这时可以利用批处理(BAT)脚本来实现一键安装。本文将深入解析标题为"windows上一键安装mysql的bat脚本(实测)"的相关知识点,包括如何创建和理解批处理脚本...

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

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

    k8s 安装教程 一键安装脚本

    ### K8s (Kubernetes) 安装教程与一键安装脚本详解 #### 一、前言 在本文中,我们将详细介绍如何通过一键脚本在常见的Linux发行版上(如Ubuntu 16.04 64位、CentOS 7 64位和Debian 9 64位)安装Kubernetes(简称k8...

Global site tag (gtag.js) - Google Analytics