Вопрос или проблема
Я использую 24.04.1 LTS на raspberry pi 4. Когда я использовал образ для создания SD-карты, я выбрал опцию для настройки образа и ввел свою сеть Wi-Fi и учетные данные при создании карты, потому что не планировал подключать ее к монитору и клавиатуре, а хотел сразу подключиться через ssh.
И все прошло хорошо, я подключился и работал на сервере уже несколько дней. Но теперь я хочу подключиться к другой сети Wi-Fi, и у меня не получается понять, как лучше всего это сделать. nmcli d wifi list не показывает НИ ОДНОЙ сети, включая ту, к которой я сейчас подключен. Я установил wireless-tools и могу видеть сети с помощью “iwlist wlan0 scan”.
Когда я тестировал Ubuntu core, nmcli казался лучшим способом для просмотра и подключения к сетям Wi-Fi. Но на сервере я не могу понять, как лучше всего это сделать. Какой предписанный метод для просмотра и подключения к различным сетям Wi-Fi?
Я пытался искать здесь и в поисковиках. Но, похоже, существует около 100 способов сделать это, и я хотел бы использовать метод по умолчанию, если возможно. Спасибо!
Ответ или решение
Для управления Wi-Fi-сетями на Ubuntu 20.04 LTS, особенно при работе с серверными системами, такими как Raspberry Pi 4, важно выбрать правильный инструмент, который подойдет для вашей конфигурации и требований. Работая без графической оболочки, вы, скорее всего, будете опираться на командную строку и утилиты, такие как nmcli
и iwlist
. Давайте рассмотрим их более подробно.
Теория
nmcli
(Network Manager Command Line Interface) — это мощный инструмент, используемый для управления сетевыми интерфейсами в Unix-подобных системах. Он позволяет выполнять широкий спектр задач: от настройки IP-адресов до управления беспроводными соединениями. Альтернативно, iwlist
— инструмент, непосредственно взаимодействующий с драйверами Wi-Fi, позволяет выполнять сканирование доступных сетей и отображать информацию о них. Однако iwlist
больше концентрируется на низкоуровневых деталях.
Основная проблема, с которой вы столкнулись, заключается в невозможности увидеть доступные сети через nmcli
, несмотря на их доступность через iwlist
. Это может указывать на неправильную конфигурацию NetworkManager или специфическую настройку системы, при которой не отображаются текущие сети.
Прежде всего, убедитесь, что NetworkManager запущен и активен. Используйте команду:
sudo systemctl status NetworkManager
Если он не активен, запустите его:
sudo systemctl start NetworkManager
Если сервис не установлен, установите его:
sudo apt update
sudo apt install network-manager
Пример
Предположим, что вы хотите подключиться к новой сети Wi-Fi с SSID "NewNetwork" и пароль "securepassword". Приведем шаги, которые помогут вам выполнить эту задачу с использованием nmcli
.
- Проведите сканирование доступных сетей:
nmcli device wifi list
- Подключитесь к выбранной сети:
nmcli device wifi connect "NewNetwork" password "securepassword"
Если подключение прошло успешно, вы увидите подтверждающее сообщение. В противном случае, будет возвращена ошибка, которую следует прочитать и принять меры в зависимости от контекста.
Применение
Для управления Wi-Fi на вашем Raspberry Pi с Ubuntu Server 20.04.1 LTS, убедитесь, что вы используете правильные практики конфигурации и управления сетями. Постоянно используйте NetworkManager, чтобы избегать конфликта между различными инструментами управления сетью. В случае, если nmcli
не показывает сети, несмотря на то, что NetworkManager работает, проверьте настройки аппаратного обеспечения и убедитесь, что ваш беспроводной адаптер корректно функционирует и поддерживает требуемые протоколы.
-
Убедитесь, что ваше устройство имеет все необходимые драйвера и пакет
network-manager
установлен и обновлен до последней версии. -
Проанализируйте конфигурационные файлы, такие как
/etc/NetworkManager/NetworkManager.conf
, на наличие некорректных величин, которые могут сконфликтовать с вашим сетевым управлением. -
Проверьте логи Network Manager для детальной диагностики:
sudo journalctl -u NetworkManager
Благодаря этому систематичному подходу вы сможете эффективно управлять своими Wi-Fi-сетями в среде Ubuntu 20.04 и избежать распространенных ошибках в конфигурации системного менеджера сетей.