笔记中
#!/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 一键安装与自动化脚本** 在IT行业中,服务器配置和管理是一项重要的任务,尤其是在处理Web服务时。Nginx是一款高性能的HTTP和反向代理服务器,以其高效、稳定和轻量级的特性而广受欢迎。本文将详细讨论如何...
Homebrew 国内安装脚本,快速部署 brew ,国内镜像。Homebrew是一款在macOS系统上常用的包管理工具,但是在国内使用时可能会遇到下载速度慢的问题。为了解决这个问题,可以通过使用国内镜像来加速Homebrew的安装和...
在IT行业中,自动安装脚本生成器是一种非常实用的工具,尤其对于系统管理员和软件部署人员来说,它可以极大地提高工作效率。这个工具的主要功能是创建自动化脚本,使得软件的安装过程能够无需人工干预,实现一键式的...
这个“mysql8.0 附带一键安装脚本”可能包含了一个简化 MySQL 8.0 安装过程的自动化脚本,使得在各种操作系统上部署数据库服务器变得更加便捷。 ### MySQL 8.0 的关键特性: 1. **增强的性能**:MySQL 8.0 通过...
mysql8一键化安装脚本 1 可以自由安装在任何目录下(直接回车默认安装在/auto),而且所有的东西都在此目录下,不会出现在其他目录中 2 内置可以在存储过程中执行Linux命令插件 3 安装完成后,cd /auto/mysql/support-...
快速从系统安装盘中安装net 3.5的脚本 几秒钟就可以完成安装
该安装脚本是由ansible-playbook所编写的,将本地的rpm保存在file目录下,然后创建hosts文件,添加对应的graylog服务器组,执行ansible--playbook -i hosts graylog.yml即可完成部署。该部署脚本已上生产环境使用,...
常用jar,免去搜索烦恼,亲测可用常用jar,免去搜索烦恼,亲测可用
mysql5.7 安装脚本 mysql5.7 安装脚本 mysql5.7 安装脚本 mysql5.7 安装脚本
网络打印机一键安装脚本是一种高效、便捷的解决方案,旨在消除传统手动安装打印机过程中的复杂性和时间消耗。在现代办公环境中,打印机通常是不可或缺的设备,但它们的安装和配置过程往往涉及许多步骤,包括驱动程序...
3. **运行安装脚本**:通过 `bash install_homebrew.sh` 命令执行脚本,按照脚本中的指示完成 Homebrew 的安装。 ### HomebrewCN 项目 在提供的压缩包文件 `HomebrewCN-master` 中,可能包含了用于国内快速安装 ...
mysql5.7 二进制安装一键安装脚本 for ubuntu ubuntu 默认shell 是dash 请用 bash执行 /bin/bash mysql5.7_bin_install.sh
用这软件先获取设置系统、软件或程序安装的过程 生成自动设置或自动安装的exe,下次运行这个生成的exe,就能帮你全自动设置或全自动安装你想安装...你自己有弄不了自动安装程序,用我的“自动安装脚本生成工具”能成的
通过脚本运行,全程不需要做任何处理,等待安装完成。 WINDOWS SERVER 2008亲测可用
在IT行业中,软件自动化安装脚本是提高效率和减少人为错误的重要工具,特别是在大规模系统部署时。本主题主要关注在Linux环境下使用Shell脚本来实现Java Development Kit (JDK) 和 PostgreSQL 数据库的自动化安装。 ...
该一键安装脚本旨在帮助用户快速部署 Docker 环境于 Ubuntu 操作系统中,简化安装步骤,节省时间。通过此脚本,用户可以快速搭建 Docker 环境,轻松实现容器化部署,提高开发和部署效率。 适用人群: 熟悉 Ubuntu ...
StrongSwan 一键安装脚本
在Windows操作系统中,有时我们需要快速部署MySQL数据库,这时可以利用批处理(BAT)脚本来实现一键安装。本文将深入解析标题为"windows上一键安装mysql的bat脚本(实测)"的相关知识点,包括如何创建和理解批处理脚本...
NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System) 的缩写,它是一个免费的 Win32 安装、卸载系统,采用了简洁高效的脚本方式。它本来是一个由 Nullsoft 创建并用于作为 Winamp 及其插件...
### K8s (Kubernetes) 安装教程与一键安装脚本详解 #### 一、前言 在本文中,我们将详细介绍如何通过一键脚本在常见的Linux发行版上(如Ubuntu 16.04 64位、CentOS 7 64位和Debian 9 64位)安装Kubernetes(简称k8...