您的位置:首页 > 运维架构 > Shell

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: