#!/bin/bash
echo "安装Apache========================"
yum -y install make gcc gcc-c++ openssl openssl-devel expat-devel
cd /usr/local
tar zxvf apr-1.6.2.tar.gz
cd apr-1.6.2
./configure --prefix=/usr/local/apr
make && make install
cd /usr/local
tar zxvf apr-util-1.6.0.tar.gz
cd apr-util-1.6.0
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config
make -j 8 && make -j 8 install
cd /usr/local
tar zxvf pcre-8.41.tar.gz
./configure --prefix=/usr/local/pcre
make -j 8 && make -j 8 install
cd /usr/local
tar zxvf httpd-2.4.51.tar.gz -C /usr/local/src/
cd /usr/local/src/httpd-2.4.51
./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --enable-ssl --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre/
make -j 8 && make -j 8 install
cp /usr/local/apache/bin/apachectl /etc/init.d/
chmod +x /etc/init.d/apachectl
cat >/usr/lib/systemd/system/apache.service <<EOF
[Unit]
Description=apache
After=network.target
[Service]
Type=forking
ExecStart=/etc/init.d/apachectl start
ExecReload=/etc/init.d/apachectl restart
ExecStop=/etc/init.d/apachectl stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
EOF
systemctl start apache
echo "Apache安装完成====================================="
echo "安装php==============================================="
yum -y install epel-release
yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel re2c
cd /usr/local
tar zxf php-7.1.10.tar.gz -C /usr/local/src
cd /usr/local/src/php-7.1.10
./configure --prefix=/usr/local/php/ --with-apxs2=/usr/local/apache/bin/apxs --enable-mbstring --with-curl --with-gd --enable-fpm --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-config-file-path=/usr/local/php/etc/ --with-mysqli=mysqlnd --with-mysql-sock=/tmp/mysql.sock --without-pear
make -j 8 && make -j 8 install
cp php.ini-production /usr/local/php/etc/php.ini
echo "Addtype application/x-httpd-php .php .phtml " >> /usr/local/apache/conf/httpd.conf
systemctl restart apache
echo "<?php
phpinfo();
?>" > /usr/local/apache/htdocs/index.php
echo "php安装成功==================================================="
echo "安装mysql==================================================="
#创建用户
id mysql &>/dev/null
if [ $? -eq 0 ];then
echo "用户存在"
else
useradd -M -r -s /sbin/nologin/ mysql
fi
echo -e "\033[31m 用户创建完成 \033[0m"
#解压软件包
tar -xvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local/
ln -s mysql-5.7.37-linux-glibc2.12-x86_64/ mysql
chown -R mysql.mysql /usr/local/mysql
echo -e "\033[31m 安装包解压完成 \033[0m"
#配置环境变量
echo 'export PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
echo 'export PATH' >> /etc/profile.d/mysql.sh
source /etc/profile.d/mysql.sh
echo -e "\033[31m 环境变量配置完成 \033[0m"
#创建数据存放目录
mkdir /opt/data
chown -R mysql.mysql /opt/data/
echo -e "\033[31m 目录创建完成 \033[0m"
#初始化数据库
/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/opt/data/ &>/dev/null
echo -e "\033[31m 初始化数据库 \033[0m"
#修改配置文件
cat > /etc/my.cnf <<EOF
[mysqld]
basedir = /usr/local/mysql
datadir = /opt/data
socket = /tmp/mysql.sock
port = 3306
pid-file = /opt/data/mysql.pid
user = mysql
skip-name-resolve
EOF
cd /usr/local/mysql/support-files/
cp -a mysql.server /etc/init.d/mysqld
echo -e "\033[31m 配置完成 \033[0m"
#配置systemd启动服务
cat > /usr/lib/systemd/system/mysqld.service <<EOF
[Unit]
Description=mysqld server daemon
After=network.target sshd-keygen.target
[Service]
Type=forking
ExecStart=/etc/init.d/mysqld start
ExecStop=/etc/init.d/mysqld stop
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl start mysqld.service
echo "启动服务"
if [ $? -eq 0 ];then
echo "mysql服务启动成功"
else
echo "服务启动失败"
fi
#修改密码
read -p "输入设置的数据库密码:" passwd
mysql -uroot -e "set password = password('"$passwd"')"
echo "mysql安装成功==================================================="
【LAMP的自动化脚本shell】
最新推荐文章于 2024-09-30 10:57:02 发布