lnmp安裝指令碼
一起學習,有問題還請留言
#!/bin/bash
#
# describe: linux nginx mysql php install
FileS=/updatefile
mkdir -p $FileS
# 安裝lrzsz 方便後續檔案上傳
wget http://vault.centos.org/6.5/os/x86_64/Packages/lrzsz-0.12.20-27.1.el6.x86_64.rpm -P $FileS &>/dev/null
rpm -vih $FileS/*.rpm &>/dev/null
RETVAL=$?
[ $RETVAL -eq 0 ] && echo “lrzsz install done” || echo “lrzsz exists.”
# yum – rprl網路源
YUM=/etc/yum.repo.d
# 檢測yum網路源如果沒有下載並修改yum源名稱將系統提示改為系統版本,epel不需要改
ls $YUM/Centos* &>/dev/null
RETVAL=$? &>/dev/null
[ $RETVAL -eq 0 ] && echo “network yum exists” || wget http://mirrors.aliyun.com/repo/Centos-6.repo -P $YUM &>/dev/null && sed -i `s@$releasever@6@gi` $YUM/Centos-6.repo &>/dev/null
# 檢測epel源
ls $YUM/epel* &>/dev/null
RETVAL=$? &>/dev/null
[ $RETVAL -eq 0 ] && echo “network yum exists” || wget http://mirrors.aliyun.com/repo/epel-6.repo -P $YUM &>/dev/null
yum clean all &>/dev/null
yum list all &>/dev/null
# 提示資訊 install nginx
echo “nginx Dependent package you need up | pcie (eq 8.38) | nginx “
cd $FileS
# 安裝nginx依賴包
yum -y install make gcc gcc-c++ flex bison file libtool libtool-libs autoconf kernel-devel libjpeg libjpeg-devel libpng libpng-devel gd freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glib2 glib2-devel bzip2 bzip2-devel libevent ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel gettext gettext-devel ncurses-devel gmp-devel unzip libcap lsof
# Zlib:Nginx提供gzip模組,需要zlib的支援 Openssl:Nginx提供SSL的功能
yum -y install gcc gcc-c++ autoconf automake
yum -y install zlib zlib-devel openssl openssl-devel
Server=/var/lock/subsys
# 解壓pcre,nginx
cd $FileS
echo “download file loading…”
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.38.zip &>/dev/null
unzip pcre*
wget http://nginx.org/download/nginx-1.8.1.tar.gz &>/dev/null
tar xf nginx*
# 進入目錄進入安裝
cd nginx*
./configure –prefix=/usr/local/nginx –with-http_dav_module –with-http_stub_status_module –with-http_addition_module –with-http_sub_module –with-http_flv_module –with-http_mp4_module –with-pcre=$FileS/pcre-8.38 –user=nginx –group=nginx
make && make install
# 建立系統使用者
useradd -M -s /sbin/nologin nginx
# 配置nginx支援php檔案
NGINX=/usr/local/nginx/conf
sed -i `3 a user nginx nginx;` $NGINX/nginx.conf
sed -i `s@/scripts$fastcgi_script_name@/usr/local/nginx/html$fastcgi_script_name@gi` $NGINX/nginx.conf
sed -i `65,72s/#/ /gi` !$
# 啟動項
echo “export PATH=$PATH:/usr/local/nginx/sbin” >> /etc/profile.d/nginx.sh
source !$
# 不管有沒有啟動先將其停止,然後再開啟服務
killall -9 nginx
/usr/local/nginx/sbin/nginx
# 提示資訊 install mysql
echo “******************************************************************************************”
echo “mysql Dependent package you need up | boost(eq boost_1_59_0 ) | mysql | cmake(gt 2.8)”
echo “boost,mysql 檔案太大,手動上傳 “
echo ” warning mysql install directory need gt 15G”
echo “******************************************************************************************”
sleep 5
cd $FileS
rz
mv boost* mysql* $FileS &>/dev/null
# 版本太低直接刪除
yum -y remove boost &>/dev/null
yum -y remove mysql &>/dev/null
# 安裝cmake 使用網路yum源、上面已定義直接安裝即可
yum -y install cmake
# 增加系統組mysql 使用者不允許登陸系統不建立家目錄
groupadd mysql
useradd -M -s /sbin/nologin -r -g mysql mysql
tar xf boost*
tar xf mysql*
cd mysql*
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_BOOST=$FileS/boost_1_59_0 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/server/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DDOWNLOAD_BOOST=1 -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all
make && make install
# 將Mysql目錄下的檔案屬主屬組許可權交給mysql
chown -R mysql:myql /usr/local/mysql
# 備份原my.cnf配置檔案
mv /etc/my.cnf{.,bak}
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x !$
chkconfig –add mysqld
chkconfig mysqld on
service mysqld start
# 初始化資料庫
/usr/local/mysql/bin/mysqld –initialize-insecure –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data
# 啟動mysqld服務
killall -9 mysqld
service mysqld start
# 新增全域性環境變數
echo -e “export PATH=$PATH:/usr/local/mysql/bin” >> /etc/profile.d/mysql.sh
source !$
# 修改mysql密碼
mysqladmin -u root password “123456”
# install php
echo “php Dependent package you need up |libiconv | libmcrypt | mhash | mcrypt | php “
echo “上面指定軟體包一共五個”
cd $FileS
rz
mv libiconv* libmcrypt* mhash* mcrypt* php* $FileS
# 安裝開發軟體包
cd $FileS
tar xf libiconv*
tar xf mhash*
tar xf libmcrypt*
tar xf mcrypt*
tar xf php*
cd $FileS/libiconv*
./configure –prefix=/usr/local/libiconv
make && make install
cd ..
cd $FileS/libmcrypt-2.5.8
./configure
make && make install
# 密文軟體不安會各種報錯離散數字
cd $FileS/mhash*
./configure
make && make install
cd ..
echo -e “/usr/local/lib
/usr/local/libiconv
/server/mysql/lib/libmysqlclient.so.20
” >> /etc/ld.so.conf
# 載入庫檔案
ldconfig
sleep 10
# 安裝離散數字解密包
cd $FileS/mcrypt*
./configure
make && make install
# 安裝php元件
yum -y install php-pear
cd $FileS/php*
./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/ –enable-fpm –with-mysql=mysqlnd –with-mysqli=mysqlnd –with-pdo-mysql=mysqlnd –with-iconv-dir –with-freetype-dir –with-jpeg-dir –with-png-dir –with-zlib –with-libxml-dir=/usr –enable-xml –disable-rpath –enable-bcmath –enable-shmop –enable-sysvsem –enable-inline-optimization –with-curl –enable-mbregex –enable-mbstring –with-mcrypt –enable-ftp –with-gd –enable-gd-native-ttf –with-openssl –with-mhash –enable-pcntl –enable-sockets –with-xmlrpc –enable-zip –enable-soap –without-pear –with-gettext –disable-fileinfo –enable-maintainer-zts
make && make install
# 複製配置檔案
cp $FileS/php-7.0.5/php.ini-production /usr/local/php/php.ini
cp $FileS/php-7.0.5/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# 自定義一個網頁檔案
echo -e “<?php
phpinfo();
?>” >> /usr/local/nginx/html/a.php
chmod +x /etc/rc.d/init.d/php-fpm
service php-fpm restart
killall -9 nginx
/usr/local/nginx/sbin/nginx
相關文章
- LNMP安裝shell指令碼LNMP指令碼
- shell指令碼:一鍵安裝LAMP、LNMP指令碼指令碼LAMPLNMP
- LNMP一鍵自動安裝指令碼LNMP指令碼
- LNMP一鍵自動安裝指令碼薦LNMP指令碼
- lnmp指令碼LNMP指令碼
- [SHELL]LNMP一鍵安裝指令碼設計(v1.0)LNMP指令碼
- 分析安裝包lnmp中的apache.sh指令碼薦LNMPApache指令碼
- shell之lnmp(nginx-1.0.5+php-fpm5.3.6+mysql)安裝指令碼LNMPNginxPHPMySql指令碼
- LNMP 原始碼安裝搭建薦LNMP原始碼
- [LNMP]安裝NginxLNMPNginx
- lnmp環境安裝-原始碼編譯LNMP原始碼編譯
- LNMP自動部署指令碼LNMP指令碼
- pyenv 安裝指令碼指令碼
- LNMP 環境安裝LNMP
- CentOS 7 安裝 lnmpCentOSLNMP
- 安裝LNMP環境LNMP
- Docker的指令碼安裝Docker指令碼
- Tomcat安裝指令碼Tomcat指令碼
- Ansible安裝指令碼指令碼
- install安裝指令碼指令碼
- macOS 安裝 LNMP 環境MacLNMP
- brew lnmp 環境安裝LNMP
- LNMP一鍵安裝包LNMP
- LNMP+FastCGI平臺搭建指令碼LNMPAST指令碼
- 10分鐘安裝lnmp-基本docker安裝LNMPDocker
- ecs使用指令碼安裝oracle指令碼Oracle
- LAMPorLNMP一鍵安裝指令碼LAMPLNMP指令碼
- 指令碼安裝apache+php指令碼ApachePHP
- SQL Server解除安裝指令碼SQLServer指令碼
- LNMP--mysql php安裝配置LNMPMySqlPHP
- lnmp環境安裝詳細LNMP
- LNMP—Nginx的編譯安裝LNMPNginx編譯
- LNMP編譯安裝配置+discuzLNMP編譯
- linuxshell指令碼之lnmp的搭建Linux指令碼LNMP
- 自動化指令碼安裝mysql shell指令碼範例指令碼MySql
- shell指令碼一鍵安裝nginx指令碼Nginx
- mydumper自動化安裝指令碼指令碼
- 【Zabbix】zabbix_agent安裝指令碼指令碼