Centos搭建mysql、php、nginx、ftp,shell脚本
2017-09-27 15:47
260 查看
由于需要长期安装这个的环境,每次都需要手动做这些反复的操作,所以自己写了一个简易的shell脚本,这样每次就只需要运行脚本即可。内容仅供参考,部分内容需要和实际情况修改。脚本内容如下:
(注意:以下内容中部分cp或sed为修改文件内容,可不用执行)
#!/bin/bash
#关闭防火墙
service iptables stop&&chkconfig iptables off
#临时关闭selinux
setenforce 0
#永久关闭selinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config
#安装ftp
while true
do
yum -y install vsftpd
if [ $? == 0 ]
then
break
fi
done
cp -f vsftpd.conf /etc/vsftpd/vsftpd.conf
#修改ftp默认路径
sed -i 's#/var/ftp#/home/ftp#g' /etc/passwd
chmod 755 /home/ftp
chmod 777 /home/ftp/ftp
chown root.root /home//ftp
service vsftpd restart&&chkconfig vsftpd on
#安装mysql
while true
do
yum -y install mysql-server
if [ $? == 0 ]
then
break
fi
done
chkconfig mysqld on
#修改mysql最大允许链接数
sed -i '/\[mysqld\]/a\max_connections=10000' /etc/my.cnf
service mysqld start
#修改mysql初始密码、开启允许远程连接
mysql -u root <<EOF
set password for root@localhost=password('mysqlpassword');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysqlpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
show variables like '%max_connections%';
EOF
#安装nginx
rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
yum info nginx
while true
do
yum -y install nginx
if [ $? == 0 ]
then
break
fi
done
service nginx start
#安装php
yum -y install php lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap
yum -y install php-tidy php-common php-devel php-fpm php-mysql
service php-fpm start
chkconfig --levels 235 php-fpm on
cp -f default.conf /etc/nginx/conf.d/default.conf
cp -f php.ini /etc/php.ini
service nginx restart
service php-fpm restart
cp -f sysctl.conf /etc/sysctl.conf
/sbin/sysctl -p
#安装nload,用于监测网卡流量
yum -y install flex byacc libpcap ncurses ncurses-devel libpcap-devel
wget http://www.roland-riegel.de/nload/nload-0.7.4.tar.gz
tar xvfz nload-0.7.4.tar.gz
cd nload-0.7.4
./configure
make&&make install
cd ..
cp -f limits.conf /etc/security/limits.conf
cp -f login /etc/pam.d/login
cp -f nginx.conf /etc/nginx/nginx.conf
#利用md5加密,防止进入单用户模式进行修改密码
a=$(echo "scdvb123
scdvb123"|/sbin/grub-md5-crypt 2>/dev/null)
b=${a##*:}
c=$(echo $b|sed 's#\/#\\\/#g')
#b=123
echo "password --md5"$b
d="password --md5 "$c
e=$(echo $d|sed 's#\-#\\\-#g')
sed -i "/hiddenmenu/i\\$e" /etc/grub.conf
#修改网卡子网掩码表现形式。$1为执行脚本传入的第一个参数
sed -i 's/PREFIX=24/NETMASK=255.255.255.0/g' /etc/sysconfig/network-scripts/ifcfg-$1
(注意:以下内容中部分cp或sed为修改文件内容,可不用执行)
#!/bin/bash
#关闭防火墙
service iptables stop&&chkconfig iptables off
#临时关闭selinux
setenforce 0
#永久关闭selinux
sed -i 's/enforcing/disabled/g' /etc/selinux/config
#安装ftp
while true
do
yum -y install vsftpd
if [ $? == 0 ]
then
break
fi
done
cp -f vsftpd.conf /etc/vsftpd/vsftpd.conf
#修改ftp默认路径
sed -i 's#/var/ftp#/home/ftp#g' /etc/passwd
chmod 755 /home/ftp
chmod 777 /home/ftp/ftp
chown root.root /home//ftp
service vsftpd restart&&chkconfig vsftpd on
#安装mysql
while true
do
yum -y install mysql-server
if [ $? == 0 ]
then
break
fi
done
chkconfig mysqld on
#修改mysql最大允许链接数
sed -i '/\[mysqld\]/a\max_connections=10000' /etc/my.cnf
service mysqld start
#修改mysql初始密码、开启允许远程连接
mysql -u root <<EOF
set password for root@localhost=password('mysqlpassword');
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysqlpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
show variables like '%max_connections%';
EOF
#安装nginx
rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
yum info nginx
while true
do
yum -y install nginx
if [ $? == 0 ]
then
break
fi
done
service nginx start
#安装php
yum -y install php lighttpd-fastcgi php-cli php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-mssql php-snmp php-soap
yum -y install php-tidy php-common php-devel php-fpm php-mysql
service php-fpm start
chkconfig --levels 235 php-fpm on
cp -f default.conf /etc/nginx/conf.d/default.conf
cp -f php.ini /etc/php.ini
service nginx restart
service php-fpm restart
cp -f sysctl.conf /etc/sysctl.conf
/sbin/sysctl -p
#安装nload,用于监测网卡流量
yum -y install flex byacc libpcap ncurses ncurses-devel libpcap-devel
wget http://www.roland-riegel.de/nload/nload-0.7.4.tar.gz
tar xvfz nload-0.7.4.tar.gz
cd nload-0.7.4
./configure
make&&make install
cd ..
cp -f limits.conf /etc/security/limits.conf
cp -f login /etc/pam.d/login
cp -f nginx.conf /etc/nginx/nginx.conf
#利用md5加密,防止进入单用户模式进行修改密码
a=$(echo "scdvb123
scdvb123"|/sbin/grub-md5-crypt 2>/dev/null)
b=${a##*:}
c=$(echo $b|sed 's#\/#\\\/#g')
#b=123
echo "password --md5"$b
d="password --md5 "$c
e=$(echo $d|sed 's#\-#\\\-#g')
sed -i "/hiddenmenu/i\\$e" /etc/grub.conf
#修改网卡子网掩码表现形式。$1为执行脚本传入的第一个参数
sed -i 's/PREFIX=24/NETMASK=255.255.255.0/g' /etc/sysconfig/network-scripts/ifcfg-$1
相关文章推荐
- Centos7下nginx+owncloud+php+mysql搭建个人私有云
- 基于CentOS 5.4搭建nginx+php+spawn-fcgi+mysql高性能php平台
- centos6.5下使用yum完美搭建LNMP环境(php5.6,mysql5.5,nginx1.10)
- Linux(CentOS 7)+ Nginx(1.10.2)+ Mysql(5.7.16)+ PHP(7.0.12)完整环境搭建
- 一步一步搭建CentOS+PHP+Mysql+Nginx开发环境
- CentOS 7源码编译安装PHP5.6和Nginx1.7.9及MySQL(搭建LNMP环境)
- 搭建LNMP环境(CentOS 6.8 + nginx1.10 + mysql5.6 + php5.6 )
- 阿里云服务器搭建lnmp。Centos6.8 + nginx-1.10.3 + MySQL-5.6.16 + PHP-5.4.16
- CentOS + Nginx + PHP + MySQL 环境搭建
- centos搭建nginx+php+mysql环境(高于apeche10的服务器)
- CentOS+Nginx+MySql+PHP搭建高并发网站服务器时遇到的问题备忘
- centos搭建nginx,php,mysql
- Android系统上使用ANMPP搭建Nginx+PHP+MySQL+FTP服务(以天猫魔盒TMB100A为例)搭建网站
- Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建)
- CentOS 5.4搭建nginx+php+spawn-fcgi+mysql高性能php平台
- 在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境
- 在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境
- CentOS源码安装搭建LNMP全过程(包括nginx,mysql,php,svn)
- 在CentOS 7 64位操作系统环境下搭建LNMP(Linux+Nginx+MySQL+PHP)来运行Zabbix监控程序
- 服务器基础搭建最全教程 CentOS 7.0编译安装 Nginx1.6.0 + MySQL5.6.19 + PHP5.6.30