服务器作业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

相关推荐
wdfk_prog4 小时前
[Linux]学习笔记系列 -- hashtable
linux·笔记·学习
每日出拳老爷子4 小时前
【远程协助】内网 IT 运维远程协助系统的最小可用架构
运维·服务器·远程工作·流媒体·视音频
weixin_462446235 小时前
使用 Puppeteer 设置 Cookies 并实现自动化分页操作:前端实战教程
运维·前端·自动化
CheungChunChiu5 小时前
Linux 内核动态打印机制详解
android·linux·服务器·前端·ubuntu
西***63475 小时前
打破部署桎梏!编码器两大核心架构(NVR/PoE)深度解析
服务器·音视频·视频编解码
BlueBirdssh6 小时前
linux 内核通过 dts 设备树 配置pcie 控制器 各种参数和中断等, 那freeRTOS 是通过直接设置PCIe寄存器吗
linux
小目标一个亿6 小时前
Windows平台Nginx配置web账号密码验证
linux·前端·nginx
实战项目6 小时前
软件测试自动化框架的设计与实现
运维·自动化
Aotman_7 小时前
Element-UI Message Box弹窗 使用$confirm方法自定义模版内容,修改默认样式
linux·运维·前端
Elastic 中国社区官方博客7 小时前
使用 Elastic 中的 OpenTelemetry 为 Nginx 实现端到端分布式追踪的实用指南
大数据·运维·分布式·elasticsearch·搜索引擎·信息可视化·全文检索