众所周知,linux服务是由/lib/systemd/system/的service服务控制启动的
那便可以用脚本控制service服务,让他关闭了就再次启动
脚本如下
代码直接用直接脚本做简单修正
#!/bin/bash
http_server() {
port1=$(netstat -ntpl | grep httpd | awk -F ' ' '{print$4}' | cut -d ':' -f 4)
port2=$(cat /etc/httpd/conf/httpd.conf | grep Listen | grep -v '#' | awk '{print$2}')
if [ $port1 = $port2 ]
then
echo "1"
else
echo "0"
fi
}
for i in `seq 9999999`
do
http_server
sleep 1
if [ $(http_server) = 1 ]
then
echo ""
else
systemctl start http
fi
done
用一个脚本服务控制http服务关闭就在启动
然后给他添加一个开启自启动,平常的命令我们可以发现,开机自启动实际上就是添加了一个软连接去启动的
现在,我们去试试他的效果
执行关闭命令
systemctl stop httpd
当你关闭它,他就会自动重启
http服务是没有开机自启动的,重新开启机器
可以看到,在我们的脚本服务运行下,实现了开机自动启动
那脚本控制开机自启动了,那是不是也可以避免被删除呢?
只要写到脚本里,将文件不断创建就可以
unzip -d /opt/ ***.zip
or
tar -zxvf ***.tar.gz -O /opt/
用grep检索/opt/下的文件,如果为空,那就证明文件被删除,然后重新解压一份到/opt目录下
一个简单的服务自启动就完成了
铁子觉得可以的话点个赞