Иногда Ubuntu теряет свое соединение (например, маршрутизатор понижается), и я хочу удостовериться, что это снова соединяется с правильной сетью. Я не хочу просто проверять, что существует интернет-соединение, потому что модем мог бы снизиться. Я использовал бы это в сценарии, названном cron
.
В псевдо коде:
if not connected to "wifiname" then
connect to "wifiname".
Это должно быть просто, но большинство решений хочет проверить, если соединено с Интернетом, но не определенной сетью.
Найдите название своего сконфигурированного соединения с:
$ ls /etc/NetWorkManager/system-connections/
Замена My Choice Network
с названием сети Вы хотите соединиться с.
Запущенный скрипт. Если это будет подключено к той сети, то это ничего не сделает. Если это не подключено к той сети, это соединяется с ним.
#!/bin/bash
wifiname="My Choice Network"
connectedname="$(nmcli -f active,ssid dev wifi|egrep "yes"|awk '{$1="";print}'|sed "s/^[ \t]*//")"
echo "Connedted: [$connectedname]"
echo "wifiname: [$wifiname]"
if [[ ! "$connectedname" == "$wifiname" ]]; then
nmcli connection up id "$wifiname"
fi