Systemd 服务不会停止 Before=suspend.target

Systemd 服务不会停止 Before=suspend.target

我在执行 systemd 服务时遇到问题状态suspend.target但它不起作用。相反,该systemd服务似乎执行 suspend.target不管我做什么。我尝试了各种各样的事情,但我不知道该寻找什么了。

这就是我目前所拥有的:

  • “主”服务文件,运行 python 脚本:

    python_service.service:

    [Unit]
    Description=Python Systemd Service
    
    [Service]
    ExecStart=/usr/bin/python3 /home/user/python_service.py --user "user" --password "password"
    Environment=XAUTHORITY=/home/user/.Xauthority
    Environment=DISPLAY=:0.0
    Environment=PYTHONUNBUFFERED=1
    Restart=on-failure
    RestartSec=5
    User=root
    
    [Install]
    WantedBy=multi-user.target
    
  • 现在,为了停止并重新启动该服务,我决定创建另外 2 个 systemd 服务文件,其唯一目的是执行systemctl stop python_service.servicesystemctl restart python_service.service如下所示:

    python_service_stop.service:

    [Unit]
    Description=Stop python_service before suspend
    Before=suspend.target
    
    [Service]
    Type=simple
    ExecStart=/bin/systemctl stop python_service.service
    User=root
    
    [Install]
    WantedBy=multi-user.target
    

不管我尝试什么总是停止该服务尽管定义了 ,但 PC 仍会恢复Before=suspend.target

现在的问题是:我怎样才能让它真正python_service.service停止达到suspend.target

相关内容