LINUX.ORG.RU
ФорумAdmin

Запуск служба при смене сети wifi.

 ,


0

2

Всем привет. Подскажите пожалуйста, как активировать службу при смене сети wifi? Я пробобвал эту схему из вики и разные ее комбинации:

/etc/systemd/system/foo.service
[Unit]
...
Wants=network-online.target
After=network-online.target
...

Но оно не работает.

Текущий вид службы:

[Unit]
Description=Xray reconnect after change wifi
Wants=network-online.target
After=network-online.target
Requisite=sing-box.service
After=sing-box.service

[Service]
Type=forking
Environment=SUDO_USER=andrew
ExecStart=/usr/bin/systemctl restart sing-box

[Install]
WantedBy=network-online.target

Ответ на: комментарий от AndreyFrants

/etc/NetworkManager/dispatcher.d/*** срабатывают и на подключение, и на отключение.

Попробуй переформулировать запрос (ну и попробуй посмотреть события которые триггерятся в хук)

no-dashi-v2 ★★★
()
Ответ на: комментарий от no-dashi-v2

Я сдела простой скриптик:

#!/bin/bash
logger "Logger: Run script $0."
logger "LOGGER: HELLO"

Запустил: journalctl -f | grep LOGGER

Сообщения появляются только либо при первичной инициализации сети, условно вышел из сна, перезагрузил комп или при включении/выключении сетевого адаптера. Просто при переключении по сетям, или отключить/подключить сеть - пустота. Что еще проверить?

AndreyFrants
() автор топика
Ответ на: комментарий от AndreyFrants

у меня работает

$ cat myscript.sh 
#!/bin/sh

echo "Hi there! $1 $2" >> /tmp/myscript.log

$ chmod +x myscript.sh
$ sudo cp myscript.sh /etc/NetworkManager/dispatcher.d/

при переключении между двумя wifi сетями через гномовский апплет получаю пучок событий в логе как и положено

Hi there! wlp0s20f3 down
Hi there!  connectivity-change
Hi there! wlp0s20f3 dhcp4-change
Hi there! wlp0s20f3 up
Hi there!  connectivity-change

ну и всегда есть дубовый вариант запустить в цикле nmcli d show , парсить в выхлопе имя сети и спать секунду

cobold ★★★★★
()