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

服务器作业4

[root@localhost day04]# vim 10.sh
[root@localhost day04]# cat 10.sh
#通过shell脚本分析部署nginx网络服务

#1.接收用户部署的服务名称
read -p "服务名称:(nginx)" server
if [ $server != nginx ];then
    echo "输入的不是nginx,脚本退出"
    exit 1
fi


#2.判断服务是否安装

#已安装;自定义网站配置路径为/www;并创建共享目录和网页文件;重启服务

#没有安装;安装对应的软件包

#systemctl status [服务名],可以查看服务是否安装,如果没有安装,
#会显示Unit [服务名].service could not be found.
a=`systemctl status $server`
if [ $a ==  "Unit $server.service could not be found." ];then 
    echo "Nginx服务未安装,开始安装..."
        dnf install nginx -y
        echo "Nginx服务安装完成。"
    mkdir -p /www/shared
        echo "创建共享目录 /www/shared"
        echo "这是一个测试网页文件内容" > /www/shared/index.html
     # 启动服务
        systemctl start nginx
        echo "Nginx服务已启动。"

else
    echo "Nginx服务已安装。"
    # 自定义网站配置路径为/www
        mkdir -p /www
        echo "已创建自定义网站配置路径 /www"

        # 创建共享目录和网页文件
        mkdir -p /www/shared
        echo "创建共享目录 /www/shared"
        echo "这是一个测试网页文件内容" > /www/shared/index.html

        # 启动服务
    systemctl restart nginx
        echo "Nginx服务已重启。"

fi


#3.测试

#判断服务是否成功运行;
# 测试服务是否成功运行
#已运行,访问网站
#未运行,提示服务未启动,并显示自定义的配置文件内容
# 测试服务是否成功运行

#systemctl is-active 服务名,判断服务是否运行,返回active是运行
isactive=` systemctl is-active $server`
if [ $isactive  ==  active ]; then
    echo "Nginx服务已成功运行,可通过浏览器访问网站。"
else
    echo "Nginx服务未启动,以下是自定义的配置文件内容:"
    cat /etc/nginx/nginx.conf
fi
#4.以上配置没有问题,请邮件告知我,并将脚本代码(代码文件)邮件发送我

#我的邮箱账号:lxx1065372838@163.com
mail_sub="nginx部署情况报告"
mial_body="nginx部署已经完成,详情如下:
$(if [ isactive !=  active  ];then
    echo "Nginx服务已安装但未成功启动,可查看配置文件内容排查问题。"
else
    echo "Nginx服务已安装并配置完成,已成功运行。"

fi)
脚本代码:
$(cat 10.sh)"

echo $mail_body

echo "$mail_body" | mail -s "$mail_sub" 15380914067@163.com
 

邮箱配置:
#挂载
[root@localhost ~]# mount /dev/sr0 /mnt
#安装s-nail邮箱服务
[root@localhost ~]# dnf install s-nail -y
#在配置文件的末尾添加配置
[root@localhost ~]# vim /etc/s-nail.rc 

############################
#网易邮箱@163.com
#smtp-auth-password要开启网易邮箱的IMAP/SMTP服务,得到的授权码
set  from=15380914067@163.com
set  smtp=smtp.163.com
set  smtp-auth-user=15380914067@163.com
set  smtp-auth-password=JBntypapSgHPrMX5
set  smtp-auth=login
#                                         自己的邮箱

命令格式:


[root@server ~]# echo 123 | mail -s "123" lxx1065372838@163.com

 

 


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

相关文章:

  • PySpark——Python与大数据
  • mysql中mvcc如何处理纯读事务的?
  • 006.精读《Apache Paimon Docs - Concepts》
  • 结构化需求分析与设计
  • 微服务即时通讯系统的实现(客户端)----(2)
  • Python数据分析:分组转换transform方法
  • 常见的网络协议汇总(涵盖了不同的网络层次)
  • 网络安全与CTF在线学习资源网站
  • 【第5章 | 神经网络】(python机器学习)
  • node版本升级,从卸载到使用nvm管理node版本并配置vue环境(学习趟雷版)
  • 【技术解析】Dolphinscheduler实现MapReduce任务的高效管理
  • Python蓝桥杯刷题1
  • 【hacker送书第16期】Python数据分析、挖掘与可视化、AI全能助手ChatGPT职场工作效率提升技巧与案例
  • k8s集群扩容
  • React状态管理之Zustand
  • AIGC----教育领域的AIGC:个性化学习材料生成
  • 【taro react】 ---- 解决 input 、textarea 层级穿透
  • 在 Ubuntu 中用 VSCode 配置 C 语言项目的编译与调试(详解教程)
  • 2411rust,1.75.0
  • EasyExcel在SpringBoot中的简单使用
  • linux-字符替换
  • vue的声明周期
  • django从入门到精通(六)——auth认证及自定义用户
  • Flink是如何实现 End-To-End Exactly-once的?
  • three.js实现地球 外部扫描的着色器
  • react学习篇--创建项目