【需求】
有客户想在关机前或者是重启电脑前,执行一条编辑好的程序。
【操作方法】
可以通过编辑服务的方式实现该需求。以shell脚本为例。
1.准备好自己要执行的程序,给shell脚本添加可执行程序,chmod 755 /etc/kylin/mkdirtest.sh
脚本内容如下:
#!/bin/bash
mkdir -p /home/kylin/桌面/mkdirtest-`openssl rand -hex 2`

2.新建一个服务,sudo vim /etc/systemd/system/mkdirtest.service,名称可以自定义修改。文件里的内容如下:
[Unit]
Description=Run command at shutdown
Requires=network.target
DefaultDependencies=no
Conflicts=reboot.target
Before=shutdown.target
[Service]
Type=oneshot
RemainAfterExit=true
User=kylin #这里指定用户,没有要求的,可以删除这行
Group=kylin #这里指定用户组,没有要求的,可以删除这行
ExecStart=/bin/true
ExecStop=/bin/sh /home/kylin/mkdirtest.sh #脚本的绝对路径
[Install]
WantedBy=multi-user.target
如下图所示:

3.启动以上服务
sudo chmod 755 /etc/systemd/system/mkdirtest.service
sudo systemctl daemon-reload
sudo systemctl start mkdirtest.service
sudo systemctl enable mkdirtest.service
sudo systemctl status mkdirtest.service
4.用命令关机和重启测试一下,也手动点击关机、重启按钮测试是否满足要求。




