Выполнить сетевой скрипт при пробуждении с помощью systemd (15.04)
Я хотел бы подключить свой VPN после пробуждения.
1) Я создал сценарий у себя дома (wakeup.sh)
#! /bin/bash
(echo "Sortie de veille: lancement de wakeup le $(date '+%d/%m/%Y a %H:%M')"
sleep 30
nmcli con up id "My_id_xxxxxx"
echo "-------------------END LOG-------------------") 2>&1 | tee -a /home/guillaume/sortie_veille_auto.log
2) я создал сервис в / etc / systemd / system / с именем wakeup.service:
[Unit]
Description=Run user script after suspend
After=basic.target
After=suspend.target
After=hibernate.target
[Service]
User=guillaume
Environment=DISPLAY=:0
ExecStart=/home/guillaume/wakeup
[Install]
WantedBy=basic.target
WantedBy=suspend.target
WantedBy=hibernate.target
3) Затем я активировал его
systemctl enable wakeup.service
а также
systemctl status wakeup.service
проверять.
4) После попытки запускается скрипт, но у меня есть ошибка в журнале:
Erreur : l'activation de la connexion a échoué : Not authorized to control networking.
В чем дело? nmcli может работать с обычным пользователем.
1 ответ
Вместо того, чтобы иметь отдельный After
а также WantedBy
поместите их в серию как:
After=basic.target suspend.target hibernate.target
WantedBy=basic.target suspend.target hibernate.target
По крайней мере, это сработало для меня. Я не уверен, что basic.target
есть, но я использую другие два успешно, как я показал.