Faça um script iniciar após suspender no Ubuntu 15.04 (systemd)

5

Eu tenho um script que inicia minha conexão de banda larga na inicialização e quero que ele seja iniciado no currículo a partir da suspensão.

Meu script é /usr/local/bin/start_my_connection

contém:

#!/bin/sh
sleep 10
nmcli nm wwan on
nmcli con up id "reber connection"'

O que devo fazer para que seja executado usando systemd ?

    
por RonnieDroid 15.08.2015 / 11:25

2 respostas

12

Existem duas abordagens para escolher:

Usando o diretório /lib/systemd/system-sleep/ :

Crie outro script chamado 00start_my_connection :

#!/bin/sh
if [  = post ] && [  = suspend ]
then /usr/local/bin/start_my_connection
fi

é "post" no currículo / descongelamento e "pre" no caso contrário. Em ambos os casos, contém "suspender", "hibernar" ou "híbrido de suspensão". Se você quiser que o script também seja executado no modo de hibernação, deixe de fora && [ = suspend ] .

Verifique se esse script é executável usando chmod a+x 00start_my_connection

Mova este script para /lib/systemd/system-sleep/ usando

sudo mv 00start_my_connection /lib/systemd/system-sleep/

Usando arquivos de serviço:

Crie o arquivo /etc/systemd/system/start_my_connection.service :

[Unit]
Description=Run start_my_connection
After=suspend.target
#After=hibernate.target
#After=hybrid-sleep.target

[Service]
ExecStart=/usr/local/bin/start_my_connection

[Install]
WantedBy=suspend.target
#WantedBy=hibernate.target
#WantedBy=hybrid-sleep.target

Descomente todas as linhas se você também quiser que o script seja executado no modo de descongelamento da hibernação. Em seguida, instale o arquivo de serviço com:

sudo systemctl enable start_my_connection.service
    
por Martin Thornton 15.08.2015 / 13:43
2

Crie um arquivo 01myscript no diretório /etc/pm/sleep.d/ .

O conteúdo desse arquivo deve ser:

#!/bin/bash

case  in 
    thaw|resume) /usr/local/bin/start_my_connection
    ;;
esac

Torne esse script executável: sudo chmod +x /etc/pm/sleep.d/01myscript .

Tente suspender

    
por Sergiy Kolodyazhnyy 15.08.2015 / 23:57