Linux--Shell脚本安装 httpd 和 修改IP

文章描述了如何通过shell脚本在Linux系统中关闭防火墙、安装和启动Apachehttpd服务,以及修改主机名、IP地址和获取硬件信息的过程。
摘要由CSDN通过智能技术生成

shell脚本 关闭防火墙、安装httpd、启动httpd

[root@node11 ~]# mkdir shell

[root@node11 ~]# vim abc.sh
#!/bin/bash

#安装httpd服务

#1、挂载 准备yum源
mount /dev/sr0 /mnt &> /dev/null

df=$(df -h | grep /dev/sr0 | awk '{print $6}')

if [ "$df" == "/mnt" ]
  then
    echo "/dev/sr0 已挂载到 /mnt 上"
fi

cat <<EOF>> /etc/yum.repos.d/local.repo
[local]
name=centos7.3
baseurl=file:///mnt
enabled=1
gpgcheck=0
EOF

systemctl disable firewalld --now &> /dev/null
systemctl status firewalld | grep dead &> /dev/null && echo "防火墙已关闭"

setenforce 0 &> /dev/null
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
selinux=$(getenforce)
if [ "$selinux" == "Disabled" ]
 then
   echo "SELINUX 已关闭"
 else
   echo "SELINUX 已开启"
fi


#2、安装httpd
echo "正在安装httpd服务,请耐心等待........"
yum -y install httpd &> /dev/null

#启动httpd

systemctl start httpd
status=$(systemctl status httpd | grep active | awk '{print $3}')

if [ "$status" == "(running)" ]
  then
    echo "httpd服务启动成功"
  else
    echo "httpd服务启动失败"
fi
[root@node11 shell]# chmod +x abc.sh

[root@node11 shell]#./abc.sh

 

shell脚本 修改主机名、修改IP、获取硬件信息 

[root@node11 shell]# vim bcd.sh
#!/bin/bash

echo -e "===请选择以下功能=== \n1 修改计算机名 \n2 修改IP地址 \n3 查看硬件信息"
read -p "请选择功能:" nm

case $nm in

1)
#1、修改计算机名称

 read -p "请输入计算机名:" name
 hostnamectl set-hostname $name
 bash
 hostname
;;

2)
#2、修改ip
 echo "IP地址格式 192.168.1.100/24"
 read -p "请输入IP地址:" ip_mask
 ip=$(echo "$ip_mask" | awk -F/ '{print $1}')
 mask=$(echo "$ip_mask" | awk -F/ '{print $2}')
 read -p "请输入网关地址:" gw
 read -p "请输入DNS地址:" dns

 network_nm=$(ip add | grep ens | awk 'NR==1 {print $2}' | awk -F: '{print $1}')
 network_file="/etc/sysconfig/network-scripts/ifcfg-$network_nm"

 sed -i 's/IPADDR=.*/IPADDR=$ip/g' $network_file
 sed -i 's/PREFIX=.*/PREFIX=$mask/g' $network_file
 sed -i 's/GATEWAY=.*/GATEWAY=$gw/g' $network_file
sed -i 's/ONBOOT=.*/ONBOOT=yes/g' $network_file
 sed -i 's/DNS1=.*/DNS1=$dns/g' $network_file
 sed -i 's/BOOTPROTO=.*/BOOTPROTO=static/g' $network_file
 sed -i '/NETMASK=255.255.255.0/d' $network_file

 systemctl restart network
 ip add
;;

3)
#3、获取硬件信息
 cpu_mode1=$(cat /proc/cpuinfo | grep "model name" | awk -F: '{print $2}' | awk -F@ '{print $1}')
 cpu_cores=$(cat /proc/cpuinfo | grep "cpu cores" | awk -F: '{print $2}')
 mem_total=$(free -h | grep "Mem" | awk '{print $2}')
 disk_info=$(fdisk -l | grep -w "/dev/sd[a-z]" | awk '{print $2" "$3}')

 echo "==========硬件信息=========="
 echo -e "CPU型号:\n$cpu_mode1"
 echo -e "CPU内核:\t$cpu_cores"
 echo -e "内存信息:\t$mem_total"
 echo -e "磁盘信息:\n$disk_info"
;;

*)
 echo "请输入正确编号 1 2 3"
;;
 esac
[root@node11 shell]# chmod +x bcd.sh

[root@node11 shell]# ./bcd.sh

 

 

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 以下是一个简单的shell脚本,用于安装httpd: ``` #!/bin/bash # 安装httpd sudo yum install httpd -y # 启动httpd服务 sudo systemctl start httpd # 设置httpd服务开机自启 sudo systemctl enable httpd ``` 这个脚本使用yum命令安装httpd,然后启动httpd服务,并设置httpd服务开机自启。您可以将此脚本保存为一个文件,例如install_httpd.sh,并在终端中运行它。请注意,您需要具有sudo权限才能运行此脚本。 ### 回答2: 安装httpd可以使用shell脚本进行自动化,以下是一个简单的脚本示例: ``` #!/bin/bash # 检查当前用户是否为root if [ $UID != 0 ]; then echo "请以root用户执行此脚本" exit 1 fi # 安装依赖 yum install -y gcc apr-devel apr-util-devel pcre-devel # 下载httpd源码包 wget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.48.tar.gz # 解压源码包 tar -zxvf httpd-2.4.48.tar.gz # 进入源码目录 cd httpd-2.4.48 # 配置httpd ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-ssl --with-ssl # 编译并安装httpd make && make install # 设置httpd服务开机自启动 systemctl enable httpd # 启动httpd服务 systemctl start httpd # 检查httpd服务是否启动成功 systemctl status httpd ``` 以上脚本首先检查当前用户是否为root用户,如果不是则退出脚本;然后安装httpd的依赖包,下载httpd的源码包,并解压到指定目录。然后进入源码目录,配置httpd的编译选项,使用make命令编译httpd并安装到指定目录。最后设置httpd服务开机自启动启动httpd服务,并检查httpd服务是否启动成功。 在使用脚本之前,需要先将脚本保存为一个文件,比如install_httpd.sh,并赋予执行权限: ``` chmod +x install_httpd.sh ``` 然后执行脚本: ``` ./install_httpd.sh ``` 执行脚本过程中,可能需要输入密码进行sudo权限验证。脚本执行完毕后,可以通过访问http://localhost/来检查httpd服务是否成功安装。 ### 回答3: 安装httpd是Linux系统管理中的一项重要任务,而编写shell脚本可以使这项任务更为简单和高效。以下是一个用shell脚本编写安装httpd的示例。 1. 确认系统环境 在开始编写脚本之前,首先需要确认系统是否已经安装httpd以及系统的环境。可以使用命令`uname -r`和`cat /etc/*-release`来确认操作系统的发行版和版本号,以便选择正确的httpd版本。 2. 准备httpd安装包 可以从httpd官网下载最新版本的安装包,或者从Linux发行版的软件源中获取。在脚本中可以定义一个变量,用于保存httpd安装包的路径和文件名,例如:`httpd_pkg=/path/to/httpd-2.4.46.tar.gz`。 3. 安装依赖软件包 在安装httpd之前,需要先安装一些依赖软件包,例如apr、apr-util、pcre等。可以使用apt或yum等包管理器来安装这些软件包,或者在脚本中定义一个函数用于安装依赖软件包,例如: ```bash install_deps(){ if [ $os == "Ubuntu" ];then sudo apt-get update sudo apt-get install -y build-essential apache2-dev libapr1-dev libaprutil1-dev libpcre3-dev elif [ $os == "CentOS" ];then sudo yum install -y gcc apr-devel apr-util-devel pcre-devel fi } ``` 4. 解压和编译httpd 使用tar命令解压下载的httpd安装包,并进入解压后的httpd目录中执行configure和make操作进行编译,例如: ```bash build_httpd(){ tar -xzf $httpd_pkg cd ${httpd_pkg%.tar.gz} ./configure --prefix=/usr/local/apache2 --enable-ssl --enable-so --with-included-apr make sudo make install } ``` 以上命令将在/usr/local/apache2目录下安装httpd,并启用SSL和动态加载模块的功能。编译完成后使用make install命令将httpd安装到系统中。 5. 启动httpd服务 最后在脚本中定义一个函数用于启动httpd服务,例如: ```bash start_httpd(){ sudo /usr/local/apache2/bin/apachectl start } ``` 以上函数将启动httpd服务,并将其设置为开机自启动编写完毕后,将脚本保存为一个可执行文件,例如安装httpd.sh,并使用sudo权限运行即可开始安装httpd。当然,具体情况还需根据实际需求进行调整和优化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值