当前位置: 首页 > article >正文

SHELL作业

要求:

通过shell脚本分析部署nginx网络服务
1.接收用户部署的服务名称
2.判断服务是否安装
​ 已安装;自定义网站配置路径为/www;并创建共享目录和网页文件;重启服务
​ 没有安装;安装对应的软件包
3.测试
判断服务是否成功运行;
​ 已运行,访问网站
​ 未运行,提示服务未启动,并显示自定义的配置文件内容
4.以上配置没有问题,发送邮件

配置:

关闭防火墙

systemctl stop firewalld

setenforce 0

接收用户部署的服务名称

read -p "输入服务名:" service_name

判断服务是否安装

if which nginx &>/dev/null; then
        echo "nginx已安装."
else
        echo "nginx未安装 开始安装."
        mount /dev/sr0 /mnt
        dnf install nginx -y
fi

自定义网站配置路径为/www 并创建共享目录和网页文件 重启nginx

if which nginx &>/dev/null; then
        web_path="/www"
        mkdir -p $web_path
        nginx_config="/etc/nginx/conf.d/test.conf"
        cat > $nginx_config << EOF
        server {
                listen 80;
                root $web_path;
        }
EOF
        touch $web_path/index.html
        echo "test" > $web_path/index.html
        systemctl restart nginx
fi

创建共享目录 (rpm检查nfs安装情况)并重启nfs

if rpm -q nfs-utils &>/dev/null; then
        nfs_path="/pub"
        mkdir -p $nfs_path
        touch $nfs_path/{1..10}
        chmod o+w $nfs_path
        echo " $nfs_path *(rw) " >> /etc/exports
        systemctl restart nfs-server
fi

发邮件(s-nail)


if [[ $? -eq 0 ]]; then
        echo "服务成功运行."
        echo "发送邮件..."
        echo "test" | s-nail -s "nginx作业 psc" -a "$0" lxx1065372838@163.com
else
        echo "服务运行失败."
fi

完整代码

测试:

访问网站

给自己163邮箱发送测试


http://www.kler.cn/a/407615.html

相关文章:

  • web——sqliabs靶场——第十三关——报错注入+布尔盲注
  • 获取商店里的应用的中文和英文名称
  • 取电快充协议芯片,支持全协议、内部集成LDO支持从UART串口读取电压电流消息
  • 「Mac玩转仓颉内测版30」基础篇10 - 区间类型详解
  • neo4j图数据库community-5.50创建多个数据库————————————————
  • 并行IO接口8255
  • CentOS 7 桌面版安装 cuda 12.4
  • linux基本命令(1)
  • Python Flask快速开发网站
  • 模板的用法
  • 2024数学建模亚太赛【C题】赛题详细解析
  • 经典战法【均线老鸭头】战法的机构构成,集中模型以及买卖操盘技术,技术要点图文详解
  • Oracle JDK(通常简称为 JDK)和 OpenJDK区别
  • Kafka - 消费者程序仅消费一半分区消息的问题
  • STM32 Nucleo-64 boards板卡介绍
  • 两个链表相交
  • Superset 二次开发之Superset技术栈分析
  • PCB上压接孔和过孔的孔径和公差要求相同,制造时有何影响
  • 浅谈vue3 和 vue2的区别
  • C4D细分曲面工具
  • Elasticsearch 实战应用:全面解析与实践
  • 关于电机(马达)在高速运转的时候可能影响单片机电路的原因和解决方法
  • Linux常用工具的使用(2):文本编辑器的使用
  • Frontend - 防止多次请求,避免重复请求
  • 【Spiffo】环境配置:VScode+Windows开发环境
  • Linux下X11协议理解