我们经常会用到开机执行脚本
比如服务器要开机自启动,开机启动nginx
那么如何实现关机前自动执行脚本
为什么有这种需求
本人在阿里云上搭建了科学上网,按需使用,想实现关机前自动调用阿里云的停机不收费接口
省着每次登录到阿里云点击停止,相当的麻烦,有时还忘记了,忘记了就会多付费
关机脚本
cat /usr/bin/shutdown_cust.sh
#!/bin/bash
echo "zhengchangguanji" >> /tmp/log.log
chmod +x /usr/bin/shutdown_cust.sh
设置关机执行
cat /lib/systemd/system/cust_shut.service
[Unit]
Description=poweroff cust
After=getty@tty1.service display-manager.service plymouth-start.service
#Before=systemd-poweroff.service systemd-reboot.service systemd-halt.service
Before=systemd-poweroff.service systemd-halt.service
DefaultDependencies=no
[Service]
ExecStart=/usr/bin/shutdown_cust.sh
Type=forking
[Install]
WantedBy=poweroff.target
#可以不需要,我们只需要关机执行脚本
WantedBy=reboot.target
WantedBy=halt.target
软连接
ln -s /usr/lib/systemd/system/cust_shut.service /usr/lib/systemd/system/halt.target.wants/
ln -s /usr/lib/systemd/system/cust_shut.service /usr/lib/systemd/system/poweroff.target.wants/
#可以不需要,我们只需要关机执行脚本
ln -s /usr/lib/systemd/system/cust_shut.service /usr/lib/systemd/system/reboot.target.wants/
重启 查看tmp下面会不会多出来log.log 文件
如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术
转载请注明:centos7如何实现在关机前执行脚本 出自老鄢博客 | 欢迎分享