美文网首页Linux学习之路Linux
Centos7关机和重启前执行自定义脚本

Centos7关机和重启前执行自定义脚本

作者: 冰封飞飞 | 来源:发表于2019-01-18 00:46 被阅读0次

    0. 前言

    如果你在linux系统上启动了很多自己的服务,如果直接执行系统的reboot或者shutdown命令,可能会发生一些异常的现象,所以我们在重启和关机前,应该按照我们的意愿去自定义清理一些服务或者资源等。但是网上的方式大多是以Centos6为教程,修改chkconfig和rc0.d,rc6.d的内容。在Centos7中以及不适用了。
    本文就介绍一下在Centos7系统中,使用systemctl的方式来自定义关机前执行脚本。

    1. 创建systemd服务

    vi /usr/lib/systemd/system/stopSrv.service
    创建该文件然后加入下面的内容,需要把ExecStart=/home/my_script这一行换成自己的脚本路径

    [Unit]
    Description=close services before reboot and shutdown
    DefaultDependencies=no
    Before=shutdown.target reboot.target halt.target
    # This works because it is installed in the target and will be
    #   executed before the target state is entered
    # Also consider kexec.target
    
    [Service]
    Type=oneshot
    ExecStart=/home/my_script  #your path and filename
    
    [Install]
    WantedBy=halt.target reboot.target shutdown.target
    

    2. 启动服务

    然后执行

    systemctl enable stopSrv
    

    经过这两步操作,关机和重启前,就会自动执行你自定义的脚本了

    相关文章

      网友评论

        本文标题:Centos7关机和重启前执行自定义脚本

        本文链接:https://www.haomeiwen.com/subject/ugcgdqtx.html