shell脚本安装LAMP架构(一键执行)
admin
2023-03-29 11:21:00
0

一键安装代码(可ctr+c哦)

1、挂载的主机IP、密码自行更改


#!/bin/bash
#一键自动构建LAMP架构(请使用source执行或者使用.命令执行)
#数据库默认密码为123123

#远程挂载
df -hT | grep -o "cifs"
if [ $? -ne 0 ];then
echo "Start mount"
yum install expect -y
read -p "请输入提供硬盘主机IP:" gongip
/usr/bin/expect <<-EOF
spawn mount.cifs  //$gongip/LAMP-C7   /mnt/           ##主机IP名根据自己情况来改
expect {
    "Password*"
    {send "\r"}
}
expect eof
EOF
fi

#安装apache服务
cd /mnt/

tar zxf apr-1.6.2.tar.gz -C /opt
tar zxf apr-util-1.6.0.tar.gz -C /opt/
tar jxf httpd-2.4.29.tar.bz2 -C /opt/

cd /opt/

mv apr-1.6.2/ httpd-2.4.29/srclib/apr
mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util

yum -y install gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

cd /opt/httpd-2.4.29/

./configure --prefix=/usr/local/httpd \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi

make && make install

cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd

sed -i -e '2a# chkconfig: 35 85 21\n# description: Apache is a World Wide Web server' /etc/init.d/httpd

chkconfig --add httpd

sed -i -e '197d' -e '196aServerName www.kgc.com:80' /usr/local/httpd/conf/httpd.conf
ip=`ifconfig ens33 | awk 'NR==2{print $2}'`

sed -i -e '52s/^/#/' -e '51d' -e "50aListen $ip:80" /usr/local/httpd/conf/httpd.conf

ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/

systemctl stop firewalld.service
setenforce 0
service httpd start

netstat -ntuap | grep httpd
if [ $? -eq 0 ];then 
    echo Apache服务启动
else 
    echo 启动失败
    exit 1
fi

#安装mysql服务
echo "================================="
echo "安装mysql数据库,请稍后。。。"
sleep 3

yum install -y ncurses-devel autoconf cmake
cd /mnt/
tar zxf mysql-5.6.26.tar.gz -C /opt/
cd /opt/mysql-5.6.26

cmake  \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DEXTRA_CHARSETS=all \
-DSYSCONFIDIR=/etc \
-DMYSQL_DATADIR=/home/mysql/ \
-DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock

echo "进行编译安装,要很久,请稍后。。。"
make && make install

cp support-files/my-default.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld
chkconfig --add /etc/init.d/mysqld
chkconfig --level 235 mysqld on

echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
source /etc/profile

echo $PATH | grep -o "mysql"
if [ $? -eq 0 ];then 
    echo "添加成功"
else 
    echo "失败"
    exit 1
fi

useradd -s /sbin/nologin mysql

chown -R mysql:mysql /usr/local/mysql/

/usr/local/mysql/scripts/mysql_install_db \
--user=mysql \
--ldata=/var/lib/mysql \
--basedir=/usr/local/mysql \
--datadir=/home/mysql

sed -i -e '47d' -e '46d' -e '45abasedir=/usr/local/mysql\ndatadir=/home/mysql' /etc/init.d/mysqld
service mysqld start

netstat -ntuap | grep mysqld
if [ $? -eq 0 ];then
        echo Mysql数据库启动
else
        echo 启动失败
    exit 1 
fi

#read -p "请输入数据库密码(自定义):" mima
/usr/bin/expect < /usr/local/httpd/htdocs/index.php <<-EOF

EOF

service httpd stop
service httpd start

rm -rf /opt/*
umount /mnt

相关内容

热门资讯

原创 硬... 近日,中国华瀛能源果断出手,分别在北京、上海两地法院,起诉摩根大通与花旗集团。起因是两家外资银行盲从...
OTA 升级后续航减 200 ... 系统 OTA 升级后续航从 500km 变 300km?央视揭秘新能源汽车「锁电」真相 5 月 1...
他信假释出狱,小女儿佩通坦到场... 据《曼谷邮报》、路透社报道,当地时间5月11日,泰国前总理他信假释出狱。现场画面显示,他信留着利落短...
特朗普拒绝伊朗方案,油价应声上... 【文/观察者网 王恺雯】美国总统特朗普拒绝伊朗提出的结束战争方案后,国际油价大幅上涨。美东时间5月1...
广东省地震局将发送地震预警科学... 2026年5月12日是第18个全国防灾减灾日。 为让全省公众能及时接收地震预警信息,增强公众防灾减灾...
空调匹数对应多大面积 空调匹数与房间面积的对应关系会受到多种因素的影响,例如房间的朝向、隔热性能、楼层高度、人员数量等。一...
冰柜从哪排水 冰柜是通过排水口进行排水,一般都是在冰柜的最底端的最左侧,打开后面盖子就可以看到那个排水孔了,一般有...
签约服务走过十年 家庭医生如何... 基层群众了解较少、基层医生待遇较低、基层资源落实较难……家庭医生签约服务面临“成长烦恼”签约服务走过...
告诉下风暖浴霸温度达到50度正... 风暖浴霸的温度通常是在20~40度左右,那正常的都是会开到30度左右,差不多也就够用了。如果你家的温...
空调挂机漏水怎么维修 空调挂机是现代生活中必不可少的电器之一,尤其在夏季时更是被广泛使用。但是,如果当你发现你的空调挂机不...