要求:
1.接收用户部署的服务名称
2.判断服务是否安装
已安装;自定义网站配置路径为/www;并创建共享目录和网页文件;重启服务
没有安装;安装对应的软件包
3.测试
判断服务是否成功运行;
已运行,访问网站
未运行,提示服务未启动,并显示自定义的配置文件内容
[root@localhost ~]# vim 7.sh
Nginx_service(){
通过shell脚本把内容写入配置文件
cat <<EOF > /etc/nginx/conf.d/test_ip.conf
server{
listen 80;
root /www;
}
EOF
自定义网站配置路径为/www;并创建共享目录和网页文件;重启服务
mkdir /www &> /dev/null
echo this is test > /www/index.html
systemctl restart nginx
}
[root@localhost ~]# cat 6.sh
. 7.sh 载入库文件
接收用户部署的服务名称
read -p "用户部署的服务名称:" service_name
判断服务是否安装
if command -v $service_name &> /dev/null;then
已安装;自定义网站配置路径为/www;并创建共享目录和网页文件;重启服务
echo "$service_name 已安装"
Nginx_service 调用函数
没有安装;安装对应的软件包
else
echo "$service_name 没有安装,安装对应的软件包"
mount /dev/sr0 /mnt &> /dev/null
dnf install $service_name -y &> /dev/null
if [ $? -eq 0 ];then
echo "$service_name 已安装"
Nginx_service
else
echo "$service_name 安装失败,请手动安装"
fi
fi
测试
判断服务是否成功运行;
已运行,并显示网站内容
未运行,提示服务未启动,并显示自定义的配置文件内容
if [ $? -eq 0 ]; then
echo "已运行"
curl http://192.168.226.129
else
echo "服务未启动"
config_file_path="/etc/$service_name/$service_name.conf"
if [ -e $config_file_path ]; then
cat $config_file_path
else
echo "配置文件 $config_file_path 不存在"
fi
fi
测试