Чи можна пріоритет WiFi перетягувати вгору та вниз у NetworkManager?
Коротка відповідь - «Ще немає». Станом на середину 2018 року Ubuntu не має нічого такого простого, як Microsoft Windows для встановлення пріоритету Wi-Fi. Однак є способи досягти того, що ви хочете.
TL; DR? Підсумок
Для використання командного рядка nmcli
. Для графічного інтерфейсу користувача plasma-nm
.
nmcli -f autoconnect-priority,name c
nmcli c mod "mypreferred" conn.autoconnect-p 10
nmcli c mod "xfinitywifi" conn.autoconnect-p -10
або
apt install plasma-nm
kde5-nm-connection-editor
Доступні альтернативи
Ось наявні в даний час способи встановлення пріоритету Wi-Fi, а також короткий опис того, чому вони не зовсім відповідають на початкове запитання.
Інструменти командного рядка (nmcli)
Хоча це рішення, мабуть, найпростіший спосіб зробити це, і він працює з NetworkManager, але nmcli
це не дозволяє перенастроювати перетягування в стилі Microsoft Windows. Насправді, nmcli
(як випливає з назви), це "інтерфейс командного рядка" для NetworkManager, а це означає, що вам потрібно буде вводити команди в терміналі, які можуть бути відмінні для деяких людей. Я розповім докладніше, як його використовувати нижче.
Плазма-нм (редактор kde5-nm-connection)
Цей інструмент не дозволяє переупорядковувати перетягування, але він працює з NetworkManager. Незважаючи на назву "KDE", вона працює з будь-яким середовищем робочого столу (я тестував її з GNOME). У ньому представлений графічний інтерфейс, який дозволяє редагувати "пріоритет автозв'язку" мережі. Я обговорю, як його використовувати нижче.
Wifi Radar
Цей інструмент дає змогу переміщати мережеві пріоритети вгору та вниз за потребою. Однак він насправді не інтегрований з Менеджером мережі; насправді я вважаю, що це помилка запускати обидва одночасно. Крім того, незважаючи на наявність графічного інтерфейсу, він не такий простий у використанні, як повинен бути. Ще одна причина не використовувати Wifi Radar - це те, що це сценарій Python, який повинен запускатися як root, потенційний ризик безпеки. Крім того, за даними сторінки людини, WiFi Radar дуже енергозатратний і має "певно багато" помилок.
Панель управління мережею GNOME (навіть не працює)
Я згадую це більше для повноти, оскільки це те, що люди очікували б працювати, але це не так. GNOME, що є поточним середовищем робочого столу Ubuntu за замовчуванням, оснащений мережевою панеллю управління, яка просто взагалі не може відображати чи редагувати пріоритети автоматичного підключення. (До речі, nmcli
і plasma-nm
обидва працюють в GNOME.)
nm-connection-editor: стара панель управління GNOME
GNOME раніше мав можливість встановлювати пріоритети підключення, хоча і незграбно, а не перетягувати. Стара панель керування ще включена в GNOME, але вона не доступна натисканням кнопки. Замість цього запустіть команду nm-connection-editor
, потім виберіть мережу Wi-Fi, натисніть Редагувати, перейдіть на вкладку Загальне та натисніть кнопку - / + поруч із "Пріоритет підключення для автоматичної активації".
Emacs / vi
Якщо уві сні у вас є хардкор-вундеркінг, бурмотить код, все, що вам потрібно зробити, - це додати у файл рядок "autoconnect-пріоритет: 10" /etc/NetworkManager/system-connections/foo
. Див. Nm-налаштування (5).
Повне пояснення з прикладами
І те nmcli
й kde5-nm-connection-editor
інше можна редагувати окремі пріоритети мережевого автоматичного підключення. Тільки nmcli
може показати вам список усіх поточно встановлених пріоритетів. Обидва припускають, що ви знаєте, що більші числа представляють більш високі пріоритети, а нуль - за замовчуванням. Негативні номери дозволені та працюють, щоб позначити мережу як "крайню інстанцію", якщо нічого іншого немає (Дивіться man nm-settings
та шукайте "пріоритет автозв'язку".)
Зміни nmcli і плазми nm вносяться NetworkManager постійно зберігаються в / etc / NetworkManager / system-connection /.
Як користуватися nmcli
Це моє переважне рішення, і воно вже поставляється з Ubuntu. Якщо ви знайомі з командним рядком або у вас природний мовний мозок, ви можете знайти це рішення простіше, ніж використання миші. З іншого боку, якщо ви хочете спробувати спочатку графічний інтерфейс, перейдіть до наступного розділу про плазмовий нм KDE. Для всіх наведених нижче прикладів вам потрібно буде відкрити термінал для введення команд.
Перелічити поточні пріоритети
$ nmcli -f autoconnect-priority,name c
Вибірка зразка:
AUTOCONNECT-PRIORITY NAME
0 Blake5Net
0 Caffe Ubuntu
0 Caffe Ubuntu Guest
0 Fire Hotspot
0 JET & Mishka
0 La Marzocco
0 Le_MX
0 MobileLab
0 xfinitywifi
Порада: Якщо у вас дуже довгий список, ви можете сортувати їх за пріоритетом:
nmcli -f autoconnect-priority,name c | tail -n +2 | sort -nr
Як встановити мережу як бажану
nmcli connection modify "Caffe Ubuntu" connection.autoconnect-priority 10
Зауважте, що ви можете використовувати будь-яке число, яке потрібно для пріоритету. Більша кількість пересуває мережу вгору списку.
Як встановити мережу в крайньому випадку
nmcli connection modify "xfinitywifi" connection.autoconnect-priority -10
Значення мінус-пріоритету нижче, ніж значення за замовчуванням 0, а це означає, що вони будуть пробуватись останніми, якщо не знайдено жодної відомої мережі Wi-Fi. Зауважте, що через помилку в деяких версіях програми nmcli
ви можете побачити негативні числа, перелічені як величезні позитивні цифри, наприклад, 4294967286. Не хвилюйтеся з цього приводу, оскільки це все одно буде добре працювати.
Як використовувати плазму-нм
Плазма-нм, клієнт NetworkManager KDE, дозволяє змінювати пріоритет мережі за допомогою декількох клацань у графічному інтерфейсі. Перетягування та перетягування неможливо, замість цього потрібно вказати число. Як і у випадку nmcli
, більш високі пріоритети мають більші числа. На жаль, ви не можете побачити перелік інших пріоритетів, які ви встановили в минулому, тому вам, можливо, доведеться вгадувати число. Особисто я просто використовую "10" для бажаних мереж і "-10" для останніх мереж, і я не розрізняю їх за межами цього.
Вам не потрібно встановлювати весь KDE, щоб отримати плазмовий нм. (На моїй машині під керуванням GNOME повний пакет KDE вимагав би завантажувати понад 600 Мб; навпаки, плазмовий нм становив лише 8 МБ). Я встановив плазмовий нм з командного рядка так:
sudo apt install plasma-nm
і я запустив це, набравши це:
kde5-nm-connection-editor
(Ну, технічно я не все це набрав. Я використовував TAB для автоматичного завершення введення тексту для мене).
Якщо ви не використовуєте KDE, при першому запуску плазмового нм він попросить вас створити "гаманець" для зберігання облікових даних. Я просто натиснув "Скасувати" на запитання, і це добре спрацювало для мене.
Тоді він покаже вам список підключень. Двічі клацніть на з'єднанні, яке ви хочете відредагувати. Це відкриє панель "Редактор з’єднань". Виберіть вкладку "Загальна конфігурація". Внизу ви побачите поле з пріоритетом. Змініть його з 0 на 10 (бажано) або -10 (остання можливість). Натисніть "ОК", щоб зберегти зміни.
Оскільки зміни постійно зберігаються в NetworkManager, після завершення коригування пріоритетів вам не доведеться встановлювати плазмовий нм, якщо цього не потрібно. ( sudo apt remove plasma-nm
)