使用shell脚本自动安装Apache2.4.35

安装环境Centos7,联网进行安装。
脚本如下:

#!/bin/bash
[ $(id -u) != "0" ] && echo "error,not root user" && exit 1
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/bin:/usr/sbin
which httpd
if [ $? -eq 0 ];then
yum remove ‘yum list installed | grep httpd‘ -y
#移除httpd 在已经安装的软件中搜索httpd 然后卸载
exit 1
fi
if [ ! -d /opt ];then
#检查是/opt是否为目录,不是则创建并进入,是则进入
mkdir /opt && cd /opt
else
cd /opt
fi
echo "是否下载apache(y/n)"
read -p "请输入y/n" cho
case $cho in
y)
echo "正在下载Apache"
wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.35.tar.bz2
wget http://mirrors.hust.edu.cn/apache//apr/apr-1.6.5.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
a=httpd-2.4.35
b=apr-1.6.5
c=apr-util-1.6.1
;;
n)
echo "退出下载"
exit 0
;;
*)
echo "错误退出请输入(y/n)"
;;
esac
if [ $? -eq 0 ];then
tar xjf $a.tar.bz2
tar zxf $b.tar.gz
tar zxf $c.tar.gz
else
echo "下载错误"
exit 1
fi
cp -R $b /opt/$a/srclib/apr
cp -R $c /opt/$a/srclib/apr-util
yum install gcc gcc-c++ pcre pcre-devel zlib-devel expat-devel -y
cd /opt/$a
./configure \
--prefix=/usr/local/httpd \
--enable-deflate \
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--disable-cgi
make && make install
grep -v "#" /usr/local/httpd/bin/apachectl > /etc/init.d/httpd
sed -i ‘1i # description:Apache is a World Wide Web server.‘ /etc/init.d/httpd
sed -i ‘1i # chkconfig:2345 85 15‘ /etc/init.d/httpd
sed -i ‘1i #!/bin/sh‘ /etc/init.d/httpd
chmod +x /etc/init.d/httpd
chkconfig --add httpd
chkconfig --level 35 httpd on
ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf

新手上路,请大家多多指点。

原文地址:http://blog.51cto.com/13760226/2293803

时间: 2024-11-10 06:21:30

使用shell脚本自动安装Apache2.4.35的相关文章

Shell 脚本自动安装cobbler(改进+填坑)

前言: 在这一篇博客写完后,虽然那个shell脚本可以成功安装cobbler服务,但是2个脚本毕竟不方便,而且在写脚本的过程中,出现的好多问题都没有找到原因.但我没有放弃,在我的不断摸索中,终于找到了原因和解决办法,现在分享给大家,希望对大家能有所帮助! 脚本环境 1.linux centos 7 系统2.系统可连接外网3.网络模式:NAT模式 实验步骤 1.上传cobbler脚本到Linux系统/root目录下 chmod +x *.sh 添加执行权限 2.脚本cobbler.sh详解 #!/

shell 脚本自动安装jdk-6u34-linux-x64-rpm.bin 跳过回车自动安装

上代码: #!/bin/bash #Engine server install #Write by guojr #Set Engine server dir jdk=jdk-6u34-linux-x64-rpm.bin chmod o+x $jdk && echo -e "\n" | ./$jdk; ( cat <<EOF         #set java environment         JAVA_HOME=/usr/java/jdk1.6.0_3

shell脚本自动安装nginx

写一脚本,实现对nginx的自动化下载,安装,启动,停止 #!/bin/sh ###nginx install shell SOFT_PATH=/data/softNGINX_FILE=nginx-1.14.2.tar.gzDOWN_PATH=http://nginx.org/download/ if [ $# -ne 1 ];then echo "USAAGE:$0{download or start or install or stop}" exit 0 fi if [ $UID

Shell 脚本自动安装公司内部邮箱服务器--Postfix

简介: Postfix是Wietse Venema在IBM的GPL协议之下开发的MTA(邮件传输代理)软件.postfix是Wietse Venema想要为使用最广泛的sendmail提供替代品的一个尝试.在Internet世界中,大部分的电子邮件都是通过sendmail来投递的,大约有100万用户使用sendmail,每天投递上亿封邮件.这真是一个让人吃惊的数字.Postfix试图更快.更容易管理.更安全,同时还与sendmail保持足够的兼容性. 搭建企业邮箱的好处: 1.全面统一企业形象,

shell脚本自动编译安装Apache

shell脚本自动安装Apache,适用于CentOS #!/bin/bash ##################################################### #Create date 2018.4.10 #Author: wansheng #Function: shell script install apache2.4 #Email: [email protected]  #System: Linux CentOS-7 ######################

用shell脚本自动化安装hadoop

一.概述 1.1 简介 本文主要介绍怎样用 shell 实现 hadoop 的自动化安装.关于手动安装 hadoop 的步骤,可以查看以下链接: http://www.cnblogs.com/13bear/articles/3700842.html 1.2 环境 OS: CentOS release 6.4 (Final) Hadoop:Apache hadoop V1.2.1 1.3 脚本下载 http://pan.baidu.com/s/1eQHyfZk 二.脚本综述 2.1 脚本目录列表

shell脚本自动加黑恶意攻击IP

shell脚本自动加黑恶意攻击IP 系统环境:Centos 6.5 X64 如果我们对所有用户开放了SSH 22端口,那么我们就可以在/var/log/secure文件里查看,这里面全是恶意攻击的IP ,那么我们又该如何拒绝这些IP在下次攻击时直接把他拉黑,封掉呢? 或者这个IP再试图登陆4次或7次我就把他拒绝了,把他这个IP永久的封掉呢?这个时候我们就可以用这下面这个脚本来实现. [[email protected] ssh]# vi /etc/ssh/blocksship #!/bin/ba

Shell脚本自动部署(编译)LAMP平台

Shell脚本自动部署(编译)LAMP平台 LAMP是当下非常流行的一套Web架构,我们可以在GNU/Linux下通过其他人打包的程序包来进行安装; 但是在生产环境中,很多时候都需要我们自己定制安装AMP,编译安装LAMP有以下几个优点 根据生产环境灵活定制程序 优化编译参数,提高性能 解决不必要的软件依赖 友情提示:对编译安装有疑问的朋友, 查看我以前写的博客:教你使用rpm.yum.编译等方式安装软件 点击此处获得更好的阅读体验 为什么要用脚本进行部署? 在很多情况下部署LAMP平台并不止一

Shell脚本-----自动备份Mysql数据库

脚本的整体思路 1.定义需要的变量 2.利用for循环备份需要备份的库,并以库名-当天日期.sql命名,并记录相关日志 3.建立备份当天的日期的目录,向备份的Sql文件移动到该目录 4.压缩打包该目录,以节省空间,打包成功后删除该目录 5.备份目录只备份七天的数据库,第八天删除第一天的备份,目录只会存在连续七天的备份文件 6.查找备份目录下的.log日志文件,超过七天的删除 #!/bin/bash mysql_bin=/usr/local/tdoa/mysql/bin/mysqldump use