Linux ubuntu 20.04. не работает wifi

Драйверы

Драйверы Wi-Fi в Linux. Поддержка Wi-Fi адаптеров в Linux

В настоящее время Linux поддерживает большинство Wi-Fi карт и драйверы для них уже предустановлены в системе (они являются частью ядра). То есть при покупке нового Wi-Fi адаптера или установке Linux на ноутбук в подавляющем большинстве случаев не требуется никаких действий — Wi-Fi адаптер будет просто работать.

В редких случаях понадобится установить из стандартных репозиториев драйвер и/или прошивку.

В исключительных случаях нужно компилировать драйвер из исходного кода.

Если вы знакомы со статьёй «Модули ядра Linux», то вы знаете, что многим устройствам для правильной работы нужны две вещи: драйвер и прошивка. Драйвер запрашивает прошивку из файловой системы в /lib/firmware. Это специальный файл, необходимый для аппаратного обеспечения, это не бинарный файл. Затем дайвер делает все, что нужно для загрузки прошивки в устройство. Прошивка выполняет программирование оборудования внутри устройства.

Список установленных драйверов вы найдёте в папке

echo /usr/lib/modules/`uname -r`/kernel/drivers/net/wireless

Вывод драйверов по производителям:

tree /usr/lib/modules/`uname -r`/kernel/drivers/net/wireless

Если по каким-либо причинам драйвер ещё не попал в ядро, то он может присутствовать в стандартных репозиториях в виде отдельных пакетов, например, в Kali Linux дополнительно доступны:

  • realtek-rtl8188eus-dkms (драйвер для RTL8188EUS)
  • realtek-rtl88xxau-dkms (драйвер для RTL8812AU/21AU и RTL8814AU)

Также вы найдёте в стандартных репозиториях пакеты прошивок firmware-* (например, firmware-realtek, firmware-atheros, firmware-iwlwifi и так далее). Если прошивка для вашего устройства не установлена, установите её.

В Arch Linux (BlackArch) все прошивки собраны в один пакет linux-firmware. Для некоторых устройств имеются отдельные пакеты драйверов (например, r8168 и broadcom-wl).

Итак, драйверы для большинства Wi-Fi адаптеров встроены в ядро и, следовательно, уже установлены на любом Linux. Начните с того, что подсоедините вашу беспроводную карту и попробуйте выполнить подключение к Точке Доступа.

Если возникли проблемы, поищите в репозиториях драйвер и/или прошивку для вашего устройства.

Как проверить, какой драйвер используется

# Для вывода списка только USB устройств и их драйверов
usb-devices
 
# Для вывода списка только PCI устройств и их драйверов
lspci -k
 
# Для вывода списка как USB, так и PCI устройств и их драйверов
sudo lshw

Установка необходимых пакетов и обновление

Для настройки нам понадобятся утилиты для работы с беспроводным сетевым оборудованием (которые скорее всего уже установлены в вашей системе), утилиты для работы с сетевым мостом , собственно сам демон ТД , какой нибудь DHCP сервер (я предпочитаю , т.к. он одновременно может выступать как DNS-форвардер и как DHCP сервер, и к тому же, обладает удобным и хорошо комментированным файлом настройки). Обязательно стоит обновить систему, т.к. скорее всего в комплекте обновления будет новое linux ядро, а с каждой новой версией ядра вы получаете и новые версии драйверов, что может заметно расширить возможности вашего адаптера.

Обновляем систему:

sudo apt-get update
sudo apt-get upgrade

Затем перезагружаемся:

sudo shutdown -r now

или

sudo reboot

И ставим необходимые пакеты:

sudo apt-get install wireless-tools bridge-utils hostapd dnsmasq

Драйверы для 4313

Давайте просто перечислим драйвер для чипсетов Broadcom и как они работают с 4313:

Broadcom STA. Предлагается дополнительными драйверами. Старый. Ужасно. Абсолютный мусор. Пропусти это. Если вы уже установили его, удалите его. b43-fwcutter. Многие люди видят «Broadcom» и прыгают на это, но это несовместимо с 4313 (что новее). Если вы его установили, очистите его. Ndiswrapper. Еще более flaky чем водитель STA. Мне удалось заставить его работать около 10 минут, прежде чем все взорвалось. brcm80211 aka brcmsmac. Это (относительно) новый драйвер, который недавно был добавлен в Ubuntu (поскольку драйвер был добавлен в ядро). Это должно хорошо работать и (в последней версии Ubuntu, Natty и Oneiric) должно «просто работать». Это дроид, которого вы ищите. Используйте этот драйвер для 4313. Если вы не используете Natty или Oneiric, у вашего ядра, вероятно, не будет этого драйвера. Вы должны работать как минимум 2.6.27, и я бы рекомендовал 2.6.28 в качестве минимального минимума (вы можете проверить, что вы делаете, запустив uname -r). Если вы отстаете от версий, я бы предложил обновление, но для быстрого исправления вы можете взглянуть на ядра ядра и попробовать один из них. Установка пакетов ядра редко бывает опасной, потому что вы обычно можете просто вернуться к старой, используя экран загрузки grub.

Вы знаете, что вы, вероятно, находитесь на правильном драйвере, если вы запустите lsmod | grep brc, и вы увидите brcm80211 или brcmsmac на выходе.

Почему Ubuntu не видит сеть Windows?

Как я уже написал выше Nautilus для подключения и просмотра общих папок Windows использует виртуальную файловую систему gvfs. А та, в свою очередь использует библиотеку libsmbclient для получения необходимых данных. Поэтому мы можем попытаться исправить ситуацию переопределив некоторые параметры в /etc/samba/smb.conf. Но работает это далеко не всегда.

1. Установить Samba

Если файловый сервер Samba у вас не установлен, то его надо установить для того чтобы был создан файл /etc/samba/smb.conf с параметрами по умолчанию. Они потом будут использоваться библиотекой libsmbclient и самой утилитой smbclient, которую вы можете применять для тестирования. Для установки выполните:

Проверьте конфигурационный файл Samba на ошибки с помощью такой команды:

2. Рабочая группа

По умолчанию используется рабочая группа WORKGROUP. Убедитесь, что ваша рабочая группа имеет именно это имя, также убедитесь, что в /etc/samba/smb.conf задано правильное имя рабочей группы в параметре workgroup:

3. Версия протокола

В современных системах Windows для общего доступа к папкам используется файловая система CIFS, использующая современные версии протоколов SMB2 и SMB3. Эти протоколы не поддерживают обзор доступных общих папок так, как это ожидает получить Nautilus. Для того чтобы всё работало надо использовать старый протокол NT1. Чтобы его включить добавьте параметр client max protocol после параметра workgroup:

После этого сохраните изменения и перезагрузите компьютер и проверьте.

4. Правильный порядок разрешения имён

Неверный порядок разрешения сетевых имен тоже может стать проблемой. Чтобы исправить его найдите в smb.conf параметр и приведите его к такому виду:

Здесь первым используется bcast, широковещательные сообщения, которые рассылаются по вашей локальной сети и ищут компьютеры с общими папками.

5. Не тот интерфейс

Если в вашем компьютере несколько сетевых интерфейсов, возможно smbclient пытается использовать не тот интерфейс. Чтобы посмотреть список интерфейсов используйте команду:

Затем найдите в /etc/samba/smb.conf параметр interface и замените в его значении eth0 на имя вашего интерфейса, который обеспечивает связь с нужной локальной сетью. Например на enp0s8:

После этого надо перезапустить службы Samba:

6. Отладка

Если сеть Windows всё ещё не работает, вы можете попытаться отлаживать GVFS чтобы понять где именно возникает проблема и в чём её суть. Для этого надо завершить текущий сервер GVFS и запустить свой в терминале с включённой опцией отладки. Для этого выполните:

Затем откройте Nautils и войдите в сетевое окружение, сеть Windows. При этом в терминале будут выводится сообщения об ошибках работы службы. Вы можете использовать эти сообщения чтобы искать информацию в Google или попросить помощи на форумах.

7. Проблема в GVFS

Баг в GVFS, о котором я писал выше наблюдался для Samba версии 4.8 и ниже. Если сервер поддерживает протокол более высокого уровня, то клиент пытается использовать этот протокол, например SMB2 или SMB3, но на этих протоколах не работает отображение доступных ресурсов. Если у вас именно эта проблема, то для полного решения придется ждать обновления или использовать обходное решение описанное ниже.

8. Подключение напрямую

Даже если у вас не работает обнаружение сетевых ресурсов Windows, вы все ещё можете подключится к нужному компьютеру и получить с него файлы. Откройте пункт Другие места на левой панели Nautilus. Внизу окна вы увидите надпись Подключится к серверу введите smb://адрес_сервера в поле слева и нажмите Enter:

После этого система предложит ввести имя пользователя и пароль для доступа к общему ресурсу. Этот пользователь должен реально существовать на машине, к которой вы собираетесь подключится.

Введите пароль и вы увидите доступные общие папки:

9. Общий доступ в Windows

Убедитесь, что в Windows общий доступ был включён. Если общий доступ отключен, то вы не сможете никак получить доступ к ресурсам. Откройте проводник и перейдите в пункт Сеть. Если сетевой доступ отключён, то система выдаст соответствующее предупреждение:

Кликните по нему чтобы включить общий доступ, затем выберите Включить сетевое обнаружение и общий доступ к файлам.

После этого система ещё раз спросит надо ли разрешить доступ для всех общественных сетей. Ответьте утвердительно:

После этого вы сможете получить доступ к общим ресурсам этого компьютера.

Вопросы и ответы по Wi-Fi в Linux

Почему меняется MAC адрес, даже если не используется программа для этого

Многие современные дистрибутивы настроены постоянно менять MAC адрес. Подробности об этом, а также как отключить или наоборот включить эту функцию смотрите в статье «Как поменять MAC-адрес в Linux, как включить и отключить автоматическую смену (спуфинг) MAC в Linux».

Как узнать, будет ли поддерживаться Wi-Fi карта для аудита Wi-Fi сетей

Самый простой вариант, это выбрать адаптер из данного списка: «USB Wi-Fi адаптеры с поддержкой режима монитора и беспроводных инъекций».

Если вы хотите определить, поддерживает режим монитора и беспроводные инъекции другой адаптер, не включённый в список, то изучите «Как определить, какой Wi-Fi адаптер подойдёт для Kali Linux».

Современные Wi-Fi карты для беспроводного аудита

Двухдиапазонные беспроводные адаптеры с поддержкой режима монитора и беспроводными инъекциями, а также с поддержкой стандарта AC:

  • Alfa AWUS1900 (чипсет: Realtek RTL8814AU)
  • TRENDnet TEW-809UB (чипсет: Realtek RTL8814AU)
  • ASUS USB-AC68 (чипсет: Realtek RTL8814AU)
  • Alfa AWUS036ACH (чипсет: Realtek RTL8812AU)
  • Alfa AWUS036AC (чипсет: Realtek RTL8812AU)
  • ASUS USB-AC56 (чипсет: Realtek RTL8812AU)

Любой из этих адаптеров будет актуален ещё много лет.

Как увидеть, что происходит с беспроводными интерфейсами

Следующие команды помогут вам увидеть абсолютно всё, что происходит за сценой во время, например, неудачных подключений.

Вы можете использовать вывод следующих команд для решения любых проблем с Wi-Fi.

Следующая команда в реальном времени будет показывать всё, что происходит в вашей системе — например, при подключении беспроводного адаптера, она покажет, какой драйвер загружен или какие проблемы возникли. Также будут выведены сообщения от приложений:

journalctl -f

Следующая команда расскажет о всё, что происходит на уровне — как IP адреса присваиваются интерфейсам и какие маршруты прописываются в системе:

ip monitor

А эта команда покажет все события, связанные с беспроводными сетевыми интерфейсами:

iw event

Эти три команды — важнейший источник информации для разрешения неочевидных проблем. Изучайте их вывод или предоставьте вывод этих команд если вы пытаетесь совместно разрешить вашу проблему с Wi-Fi.

Как узнать, сколько трафика было передано

ip -s -h a show <ИНТЕРФЕЙС>

3. Настройка сетевого интерфейса

Для настройки сетевых интерфейсов в операционных системах, основанных на Debian, используется файл /etc/network/interfaces. Здесь должно находится описание для каждого интерфейса, способ получения IP а другие параметры. В одном файле может быть настроено несколько интерфейсов. Описание каждого интерфейса начинается со слова auto после которого идет имя интерфейса.

Это означает, что указанный интерфейс должен быть запущен при выполнении ifup с опцией -a, именно она используется при инициализации системы. После строки auto идут другие строки настроек, которые касаются именно этого интерфейса. Вот так, например, выглядит строка для включения локального интерфейса:

Перед тем как рассматривать все более подробно, поговорим про опции, которые можно использовать:

  • pre-up — выполнить команду перед запуском интерфейса;
  • post-up — выполнить команду после запуска интерфейса;
  • up — выполнить команду при запуске интерфейса;
  • pre-down — команда перед отключением;
  • post-down — команда после отключения;
  • iface — указывает имя интерфейса;
  • inet — указывает
  • description — создать имя синоним для устройства;
  • address — устанавливает ip адрес для статического соединения;
  • netmask — установка маски сети;
  • broadcast — широковещательный адрес;
  • metric — приоритет для шлюза по умолчанию;
  • gateway — шлюз по умолчанию;
  • hwaddress — установить MAC адрес;
  • mtu — размер одного пакета.

Это далеко не все опции, которые можно использовать, но основные из них и уже с помощью этого можно настроить большинство из того, что нужно. Дальше рассмотрим различные варианты настройки интерфейсов, самый часто используемый на домашних компьютерах — это получение ip адреса по DHCP, в таком случае, ip адрес может меняться при каждом запуске. Рассмотрим его первым.

Настройка динамического IP

Мы будем получать IP адрес через DHCP сервер, оттуда же будут получены шлюзы и DNS сервер, поэтому для работы достаточно добавить две строчки. Например, настроем получение IP по DHCP для интерфейса eth0:

Но если необходимо, то вы можете установить вручную ip адрес DNS сервера:

Для локального интерфейса настройка будет выполняться таким образом:

Здесь мы не получаем адрес по DHCP, но присваиваем локальный адрес 127.0.0.1.

Настройка статического IP адреса

Если вы хотите установить именно статический IP, то здесь все будет немного сложнее. Нам нужно знать не только этот свободный IP адрес, но и шлюз, маску сети и DNS сервер. Для настройки используется такой набор строк:

Здесь указывается, что мы будем использовать метод получения ip адреса static, а затем расписаны все параметры. Но это еще далеко не все, что можно сделать с помощью файла /etc/network/interfaces. Также вы можете создавать виртуальные интерфейсы.

Настройка виртуальных интерфейсов

В некоторых случаях нам может понадобиться создать виртуальный интерфейс. Это позволяет добавить еще один IP адрес к интерфейсу. Чтобы создать такой интерфейс достаточно дописать его номер после двоеточия:

Имя интерфейса, для которого создается виртуальный интерфейс должно совпадать с реальным.

Настройка мостов

Сетевые мосты между виртуальными интерфейсами в системе позволяют настроить полноценный доступ к интернету из виртуальных машин. Они могут применяться для KVM,qemu,XEN и других конфигураций. Для настройки моста используйте:

Здесь мы указываем имя интерфейса br0, дальше выполняем стандартную настройку получения статического IP адреса, затем связываем этот мост с интерфейсом eth0.

Как в Линукс настроить Вай-Фай интернет?

В большинстве ноутбуков с системой LINUX настройка WI-FI через консоль не требуется, посольку все действия выполнены заранее и покупателя остается только подключить устройство. Сразу после установки все будет функционировать, и клиенты смогут самостоятельно подключаться к сеткам и даже создавать точки доступа. Чтобы проверить,  как обстоит вопрос с этим в конкретном ноутбуке, необходимо просто попытаться подключиться к беспроводной сетке. Если соединение не работает, значит, придется выполнять настройку адаптера самостоятельно.

Для начала, необходимо выяснить, кто является производителем адаптера. Наиболее популярными в этой сфере считаются такие: Broadcom, Atheros, Intel, Realtek. Для каждого варианта было разработано по несколько вариантов драйверов, которые можно установить

Важно удостовериться, что драйвер поддерживался картой. После скачивания драйвера останется его запустить

Возможно, что потребуются специальные прошивки, но это можно уточнить дополнительно.

После выполнения общей настройки модуля WI-FI для Линуксоидов, стоит рассмотреть разные варианты установки драйвера. К примеру, как выполнить  настройка WI-FI в Ubuntu или в Mint.

Настройка сети через терминал в Ubuntu

Тут мы рассмотрим автоматическую настройку сети для Ubuntu 16.04 без Network Manager с помощью стандартных скриптов системы, которые остались от Upstart и пока всё ещё используются. Давайте сначала определим, какие шаги нам нужно предпринять, чтобы всё заработало:

  • Включаем сетевой интерфейс и подключаемся к сети;
  • Устанавливаем IP-адрес;
  • Получаем адреса DNS-серверов.

Собственно, готово. Эти шаги очень символичны, потом что система всё сделает за нас сама. Нам нужно только выполнить нужные настройки. Но сначала давайте посмотрим, какие сетевые интерфейсы подключены к системе. Мне нравится команда:

Но если хотите, можете использовать ifconfig:

В нашей системе только один интерфейс — это enp0s3, есть еще lo, но он виртуальный и указывает на эту машину.

Настройки сети находятся в файле /etc/network/interfaces.

Нас будут интересовать в этом файле строчки auto и iface. Первая указывает, что нужно активировать интерфейс при загрузке, вторая же определяет настройки самого интерфейса.

Настройка динамического получения IP-адреса

Добавьте в этот файл такие строки, чтобы запускать интерфейс при загрузке и получать IP-адрес автоматически по DHCP:

auto enp0s3 iface enp0s3 inet dhcp

Синтаксис строки auto прост. Он состоит из самой команды и имени сетевого интерфейса. Рассмотрим подробнее:

$ iface интерфейс inet тип

Тип получения IP-адреса может иметь несколько значений, но нас в этой статье будут интересовать только два: dhcp и static.

После завершения настройки сохраните файл и перезапустите сетевой сервис:

sudo service networking restart

Всё, если сетевой кабель подключён, и вы всё сделали правильно, Сеть будет работать.

Настройка статического адреса Ubuntu

При настройке статического IP-адреса компьютер не будет связываться с DHCP-сервером, поэтому здесь придётся указать намного больше параметров.

Содержимое нашего конфигурационного файла будет выглядеть вот так:

auto eth0 iface eth0 inet static address 192.168.1.7 gateway 192.168.1.1 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255

С первыми двумя строчками все понятно, а следующие задают параметры настройки интерфейса:

  • address — наш IP-адрес;
  • gateway — шлюз, через который будем получать доступ в интернет;
  • netmask — маска сети;
  • network — адрес сети, имеет тот же адрес, что и шлюз, только с нулем вместо единицы;
  • broadcast — широковещательный адрес сети, отправленный на него пакет придет всем компьютерам локальной сети.

Как видите, network и broadcast — это первый и последний IP-адреса сети. Теперь сохраните файл и перезапустите сеть:

sudo service networking restart

Если все параметры были указаны правильно, всё будет работать. Но если допущена хоть одна ошибка, доступ к сети вы не получите.

Это была автоматическая настройка локальной сети Гbuntu, но я ещё расскажу, как всё сделать вручную, без конфигурационных файлов.

Чего удалось достичь

ИБ удалось избыть настолько, что задержки снизились с пиковых значений 1-2 секунд до 40 msec. Наиболее наглядной иллюстрацией будет картинка на которой видны WiFi сессии на 100 рабочих станций до и после патча.

До патча, лишь 5 станций успешно стартовали. Чудовищные > 15 секунд тормоза. Кликабельно.

После патча, все станции успешно стартовали. Задержки приемлемые 150-300 msec. Кликабельно.

Теперь ложка дегтя. Пока лишь драйвера ath9k полностью поддерживают все эти новшества, уже почти готов. Остальным пока придется подождать, но уверен, остальные драйвера тоже будут активно дорабатываться после того, как патчи попадут в стабильную ветку.

Использованные материалы и полезные ссылки

  • Making WiFI Fast
  • Linux WiFi latencies
  • Петиция в FCC
  • Проект Make WiFi Fast.
  • Queueing in the Linux Network Stack
  1. Latency
  2. Bufferbloat
  3. Benchmark
  4. Round Trip Time

Установка драйвера WiFi

Драйвер устройства — это программа, которая сообщает машине, как правильно обращаться с роутером. Хотя ПК может распознать беспроводной адаптер, но предустановленные базовые драйверы могут работать плохо. В связи с чем потребуется найти тот, который поддерживается ОС, например, на ноутбуках HP.

Драйверы устройств с открытым исходным кодом можно найти во многих дистрибутивах Linux, включая Ubuntu. Проприетарные или закрытые драйверы свободно не распространяются и, следовательно, не могут быть предварительно установлены системой.

Важно! Если Ubuntu адаптеры WIFI не найдены из-за того, что драйвер не установлен по умолчанию, тогда он может быть доступен только в «бинарной» или платной версии, и в этом случае нужно обратиться на сайт производителя

Отсутствует модуль драйвера

Бывают случаи, что не работает WIFI Ubuntu, если в списке предустановленных драйверов отсутствует нужная программа и для адаптера потребуется установить самостоятельно. Перед этим нужно выяснить, какая WiFi-карта размещена в системе, для этого открывают терминал, набрав команду lspci

На экране буден продемонстрирован список компонентов PCI, внутри которого нужно найти «сетевой контроллер», например, беспроводной адаптер Realtek RTL8188CE. Далее выясняют, какая версия ядра, при помощи команды uname — r

Порядок установки драйвера Realtek TR Link на ОС Ubuntu:

  1. Зайти на сайт Realtek, найти необходимый драйвер.
  2. Загрузить соответствующий для карты WiFi и распаковвать его в домашний каталог, например, в папку «rtl8192ce».
  3. Открыть инструменты, необходимые для компиляции драйвера:
    • sudo apt-get update
    • sudo apt-get install —reinstall Ubuntu-headers-generic build-essential
  4. Выгрузить и блокировать исходные модули/драйверы ядра Natty. В противном случае они дестабилизируют драйвер Realtek, который нужно установить: sudo rmmod rtl8192ce.
  5. Для того чтобы функция «gksu gedit /etc/modprobe.d/blacklist.conf»
    внесла в черный список исходные драйверы/модули ядра, открывают: gedit.
  6. Теперь нужно вставить следующие две строки в конец файла:
    • blacklist rtl8192ce
    • blacklist rtlWiFi.
  7. Перейти в каталог драйвера, который был скачан раньше: cd rtl8192ce.
  8. Для завершения операции нужно выполнить такие команды:
    • make clean
    • sudo su
    • make
    • make install
    • exit

Проверка драйверов

Далее нужно перезагрузить ПК и проверить правильность установленного драйвера. Запускают команду lspci.

Строка «Используемый драйвер ядра» должна иметь вид «rtl8192CE».

Драйверы устройств, разработанные для операционной системы MAC/OS, вообще нельзя использовать с другой ОС. Однако в случае беспроводных адаптеров можно установить оболочку совместимости NDISwrapper, которая позволяет Ubuntu использовать некоторые беспроводные драйверы Windows в случае, когда они в системе недоступны, например, драйвер адаптера беспроводной сети Broadcom для Windows 7. Для этого открывают терминальную строку и вводят sudo lsmod.

На экране будет продемонстрирован список текущих модулей.

Далее прописывают команду для активации пользовательского модуля, например, с названием «xxxx name»: sudo modprobe your-xxxx-name.

Затем вводят команду для проверки правильности загрузки lsmod.

Автоматическая загрузка модуля

Пользователь сможет запустить модуль драйвера при загрузке, прописав:
sudo nano / etc / modules

После открытия редактора добавляют его имя и сохраняют запись. После перезагрузки проверяют возможность сетевой карты обнаруживать доступные сети.

Step 3: Auto Connect At Boot Time

To automatically connect to wireless network at boot time, we need to edit the file. It’s a good idea to copy the file from directory to directory, then edit the file content, because we don’t want newer version of to override our modifications.

sudo cp /lib/systemd/system/wpa_supplicant.service /etc/systemd/system/wpa_supplicant.service

Edit the file with a command line text editor, such as Nano.

sudo nano /etc/systemd/system/wpa_supplicant.service

Find the following line.

ExecStart=/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

Change it to the following. Here we added the configuration file and the wireless interface name to the command.

ExecStart=/sbin/wpa_supplicant -u -s -c /etc/wpa_supplicant.conf -i wlp4s0

It’s recommended to always try to restart wpa_supplicant when failure is detected. Add the following right below the line.

Restart=always

If you can find the following line in this file, comment it out (Add the # character at the beginning of the line).

Alias=dbus-fi.w1.wpa_supplicant1.service

Save and close the file. (To save a file in Nano text editor, press , then press to confirm. To exit, press .) Then enable wpa_supplicant service to start at boot time.

sudo systemctl enable wpa_supplicant.service

We also need to start at boot time to obtain a private IP address from DHCP server. This can be achieved by creating a systemd service unit for .

sudo nano /etc/systemd/system/dhclient.service

Put the following text into the file.

Description= DHCP Client
Before=network.target
After=wpa_supplicant.service


Type=forking
ExecStart=/sbin/dhclient wlp4s0 -v
ExecStop=/sbin/dhclient wlp4s0 -r
Restart=always
 

WantedBy=multi-user.target

Save and close the file. Then enable this service.

sudo systemctl enable dhclient.service

Почему Ubuntu не подключается к вай-фай сети

Причин, по которым операционная система не может подключиться к беспроводной сети, множество. Вот некоторые из них:

  • Нет беспроводного адаптера. Определить это можно с помощью команд ifconfig, Iwconfig, lspci, lsusb, lsmod. Если по результату их выполнения адаптер не появился в списке, то скорее всего причина в том, что его нет, он сломан или плохо подключен.
  • Модуль есть, но он отключен. Включить на некоторых портативных устройствах можно при помощи специальной клавиши в сочетании с «Fn».
  • Нет доступных для подключения открытых сетей Wi-Fi.

Проблема 1: Устройство не обнаружено

Если устройство не обнаруживается системой, то нужно войти в терминал и ввести следующую команду:

sudo lsusb или sudo lspci

Если вывод команд похож на то, что представлено ниже, то операционная система находит карту. Часто она называется «Сетевым адаптером» или Сетевым контроллером«.

Проблема 2: Отсутствует модуль драйвера

Если первые команды ничего не обнаружили, то система видит карту и можно предположить, что проблема кроется в прошивке, которая не дает инструкций ОС. Последняя просто не знает, что такое сетевая карта и что с ней делать. Чтобы она «узнала» ее, потребуются модули и драйвера. В терминале необходимо набрать:

sudo lsmod

Выведется список всех доступных модулей, чтобы активировать один из них, нужно выполнить следующую команду, где modulename — название модуля:

sudo modprobe modulename

После этого можно запустить опять ту же команду sudo lsmod, чтобы проверить, правильно ли загружен модуль.

Проблема 3: DNS

Очень редко случается, что из-за ДНС сервера возникают какие-либо проблемы с подключением к беспроводной или проводной сети, но все может быть. Проверить это можно, введя команду в терминал:

nmcli device show wlan1 | grep IP4.DNS

Она продемонстрирует локальный адрес маршрутизатора. Если это не работает, можно заменить wlan1 на параметр текущей сети.

Важно! Можно использовать и команду «ip address». После фиксации информации можно выполнить команду «ping адрес_маршрутизатора»

В случае отказа работать, можно проверить ДНС Гугл: ping 8.8.8.8.

В результате всех этих действий можно определить, где именно кроется проблема DNS.

Проблема 4: Нет сетевого менеджера

Случается и так, что менеджер был удален по ошибке. В таком случае не будет ни интернета, ни диспетчера сети, но и эта проблема решаема. Если предположить, что пакет типа apt до сих пор находится в кэше, можно выполнить строку:

sudo apt-get install network-manager

Если же кэш был очищен, то можно подключить кабель интернета напрямую и выполнить команду еще раз. В случае отсутствия положительного результата можно отредактировать конфигурационный файл командой:

sudo gedit /etc/network/interfaces

После этого стоит вставить в него и заменить следующие строки:

auto lo

iface lo inet loopback

auto wlan0

iface wlan0 inet dhcp

wpa-essid myssid

wpa-psk mypasscode

После сохранения настроек можно перезапустить весь интерфейс командой «sudo ifdown wlan0 && sudo ifup -v wlan0».

Таким образом, было разобрано, что делать, если Linux не подключается к Wi-Fi и не может расширить сеть. Подключение Ubuntu к Wi-Fi через терминал рекомендуется выполнять только опытным пользователям.

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий