Независимо от того, что было состоянием во время последней сессии. Я хочу, чтобы Wi-Fi и Ethernet были отключены для активного соединения с внешней стороной каждый раз. Я хочу предотвратить каждое автоматическое подключение к сети.
Решения должны работать с рабочим столом GNOME и/или рабочим столом Пантеона
Использование Ubuntu 18.04
Удаление галочки у "подключения автоматически" добавит "autoconnect=false" под" [соединение]" блок упомянутого соединения в /etc/NetworkManager/system-connections
. Одна вещь поэтому просто запускает немного скрипта для добавления этой строки ко всем известным соединениям, если это не там, еще:
#!/bin/bash
for f in /etc/NetworkManager/system-connections/*
do
if [[ -f "${f}" && "$(grep 'autoconnect=false' "${f}")" == "" ]]
then
sed -e '/^\[connection\]$/aautoconnect=false' -e '/^\[connection\]$/q' -i "${f}"
fi
done
Особенно Вы хотите, чтобы это работало, прежде чем сетевое соединение произойдет и также после пробуждения от приостановки/спящего режима. Systemd-сервис disable-autoconnect.service
сделаю:
[Unit]
Description="Service to disable all autoconnections"
Before=network.target
After=sleep.target
[Service]
ExecStart=/path/to/above/script.sh
Type=oneshot
[Install]
WantedBy=sleep.target default.target
Вы coud добавляете @reboot cron
задача запустить скрипт, который запишет все интерфейсы:
добавьте эту строку:
@reboot /path/to/script
Сценарий:
#!/bin/bash
for interface in `ip link | awk 'FNR%2 == 1 {print substr($2, 1, length($2)-1)}'`; do
ip link set $interface down
done