ГлавнаяОперационные системыLinuxWi-Fi не работает в Linux? Вот как это исправить

Wi-Fi не работает в Linux? Вот как это исправить

Одной из серьезных проблем, с которой пользователи Linux сталкиваются, является Wi-Fi. Драйверы Wi-Fi часто не включены в ядро, и в результате возникает множество проблем с правильной работой модулей Wi-Fi сторонних производителей под Linux. Здесь мы расскажем, что происходит, когда Wi-Fi не работает в Linux, и как это исправить.

Совет : узнайте, как достичь найти сохраненные пароли Wi-Fi в Linux .

Аппаратные и программные проблемы с Wi-Fi

Проблема с подключением к Wi-Fi может быть аппаратной или программной. Проблемы с оборудованием относительно легко диагностировать — все, что вам нужно сделать, это открыть терминал и ввести следующую команду:

ping localhost
Терминал, показывающий тест шлейфа локального хоста.

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

Если пинг чистый или вы даже не видите свою карту Wi-Fi, скорее всего, у вас проблема с программным обеспечением.

Кроме того, вы также можете проверить, обнаруживает ли ваша система активный сетевой интерфейс, запустив ip addr. Большинство дистрибутивов помечают активные в данный момент беспроводные карты буквой «wl», за которой следуют номера шин и слотов устройства на материнской плате компьютера.

Например, метка «wlp0s1» означает, что это интерфейс беспроводной сети на шине 0, слот 1.

Терминал, показывающий беспроводное устройство, работающее в данный момент в системе.

Примечание. Если вы не можете пользоваться Интернетом, вам может быть необходимо отключить IPv6 на вашем компьютере с Linux .

Установить драйверы из Ubuntu ISO

Если ваш дистрибутив вообще не обнаруживает вашу сеть Wi-Fi или вы получаете ошибки, вы можете попробовать установить или переустановить драйверы Wi-Fi из ISO-файла Ubuntu. Во-первых, вам нужно скачайте ISO-образ Ubuntu , соответствующее вашей версии Ubuntu. (Предположительно, вам нужно загрузить его на другое устройство или загрузить через Ethernet-соединение в Ubuntu.)

Откройте терминал, затем введите следующую последовательность команд, чтобы смонтировать ISO-образ Ubuntu на виртуальный диск:

sudo mkdir /media/cdrom
sudo mount -o loop ~/Downloads/ubuntu-*.iso /media/cdrom

Перейдите в раздел «Обновление программного обеспечения» на панели управления, затем нажмите кнопку Настройки в левом нижнем углу окна.

Снимок экрана, на котором выделена кнопка «Настройки...» в утилите Software Updater.

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

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

Если беспроводное устройство не обнаруживается Ubuntu (или любым другим дистрибутивом), откройте сеанс терминала и введите следующую команду:

sudo lsusb

Эта команда распечатает все USB-устройства, подключенные в данный момент к вашему компьютеру. Найдите любую строку, содержащую «Беспроводной адаптер» или «RTL».

sudo lsusb | grep "RTL"
Терминал, показывающий активное в данный момент USB-устройство Wi-Fi в Linux.

Помимо перечисления всех USB-адаптеров, вы также можете проверить свою систему на наличие любых беспроводных устройств PCI. Для этого выполните следующую команду:

sudo lspci

Как и в случае с командой lsusb, найдите в выводе lspci любые строки, содержащие метку «Сетевой контроллер» или «Контроллер Ethernet».

Терминал, показывающий устройство Wi-Fi на базе PCI в Ubuntu Linux.

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

sudo lshw -C network | grep "driver"

Выделите значение переменной «driver» и скопируйте его в буфер обмена.

Терминал, выделяющий активный в данный момент драйвер для устройства Wi-Fi.

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

После успешных команд lsusbи lspci, подтверждающих, что ваш дистрибутив Linux видит беспроводную карту, вы можете предположить, что прошивка работает, просто Система понятия не имеет, что делать с устройством. Вот здесь и нужны драйверы или модули.

Введите следующую команду и замените «имя модуля» содержимым буфера обмена:

sudo modprobe modulename

Например, если ваш драйвер беспроводной сети — «iwlwifi», он будет выглядеть следующим образом:

sudo modprobe iwlwifi

После этого запустите sudo lsmod | grep "modulename", чтобы проверить, правильно ли ядро ​​Linux загрузило ваше устройство Wi-Fi.

Терминал, показывающий, как модуль Wi-Fi загружается в текущее ядро.

Автоматически загружать модуль драйвера при загрузке

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

sudo nano /etc/modules

Добавьте имя вашего модуля внизу и сохраните файл.

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

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

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

Проблема третья: DNS

Проблемы с DNS возникают редко; однако стоит проверить, остались ли у вас проблемы с подключением. В терминале введите следующую команду, чтобы проверить DNS-преобразователь системы по умолчанию:

nmcli device show INTERFACE-NAME | grep IP4.DNS

По умолчанию здесь будет установлен IP-адрес вашего маршрутизатора. Если это не сработает, возможно, вам придется изменить «wlp0s1» на то, что использует ваша беспроводная сеть. Для получения обозначения также можно использовать следующую команду:

ip addr | grep ": "

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

ping 8.8.8.8

Если все устройства в вашей сети выдают ошибки загрузки страниц, измените преобразователи DNS на вашем маршрутизаторе на серверы Google или OpenNIC. Вам придется проконсультироваться у производителя вашего маршрутизатора, как это сделать, но обычно это делается путем доступа к консоли администратора устройства. Его можно найти на большинстве маршрутизаторов, перейдя по адресу «192.168.0.1» или «192.168.254.254» в веб-браузере.

Добавление собственного DNS-сервера в NetworkManager

Тем не менее, вы также можете изменить преобразователь DNS для каждого устройства. Чтобы сделать это в Ubuntu, нажмите кнопку Меню управления в правом верхнем углу рабочего стола, затем выберите Значок шестеренки.

Снимок экрана, на котором выделена кнопка «Настройки» в Gnome.

Нажмите категорию Wi-Fi, затем найдите категорию Видимые сети.

Снимок экрана, показывающий раздел видимых сетей категории Wi-Fi.

Выберите значок шестеренки в строке, содержащей имя вашей точки беспроводного доступа.

Снимок экрана, на котором выделена кнопка «Настройки» для активной в данный момент точки беспроводного доступа.

Нажмите вкладку IPv4 на верхней панели меньшего окна.

Снимок экрана, на котором выделена вкладка IPv4 в меню настроек точки доступа.

Перейдите в раздел DNS, затем выключите параметр Автоматический.

Снимок экрана, на котором показан переключатель DNS «Автоматический» на вкладке IPv4.

Введите «8.8.8.8,8.8.4.4» в текстовом поле DNS, затем нажмите Применить, чтобы сохранить настройки.

Снимок экрана, на котором показаны пользовательские преобразователи DNS для текущего подключения Wi-Fi.

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

resolvectl flush-caches

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

resolvectl status | grep "Current DNS Server"

Проверьте, решили ли текущие настройки DNS проблему с вашей сетью, загрузив веб-страницу в веб-браузере.

Снимок экрана веб-сайта MakeTechEasier на компьютере с Ubuntu со специальным преобразователем DNS.

Полезно знать: узнайте больше о серверах имен и преобразователях DNS от использование копания в Linux .

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

Предположим, вы удалили Network Manager или удалили его случайно. Это действительно неприятная ситуация: у вас нет Интернета и сетевого менеджера, но кое-что можно сделать.

Предполагая, что пакет все еще находится в вашем кеше, вы можете подойти к терминалу и ввести:

# Debian/Ubuntu
sudo apt install network-manager
 
# Fedora
sudo dnf install NetworkManager
 
# Arch Linux
sudo pacman -Syu networkmanager

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

Для начала создайте файл конфигурации для wpa_supplicant с помощью вашего любимого текстового редактора:

sudo nano /etc/wpa_supplicant.conf

Вставьте следующий блок кода в файл конфигурации, затем замените «SSID» и «PASSWORD» именем точки доступа и паролем вашего маршрутизатора:

network={
    ssid="SSID"
    password="PASSWORD"
}

<

Сохраните файл конфигурации, затем вставьте следующую строку кода в сеанс терминала:

sudo wpa_supplicant -B -i INTERFACE-NAME -c /etc/wpa_supplicant.conf -D nl80211

Замените значение флага «-i» на имя вашего беспроводного интерфейса.

Терминал, подсвечивающий флаг интерфейса.

Примечание. эта команда будет работать только на новых беспроводных картах. Если вы пытаетесь подключить старую карту Wi-Fi, замените значение флага «-D» на «wext».

Запросите новый IP-адрес у маршрутизатора, перезагрузив демон DHCP:

sudo dhclient INTERFACE-NAME

Проверьте, работает ли ваше Wi-Fi-соединение, выполнив проверку связи с внешним сайтом:

ping -c 5 maketecheasier.com

Переустановите Network Manager, чтобы восстановить полную мощность Wi-Fi вашей системы Linux:

sudo apt install network-manager

Перезагрузите компьютер, чтобы загрузить новую установку Network Manager.

Понимание того, как работают модули Wi-Fi и драйверы ядра, — это лишь первый шаг в изучении того, как работает Linux под капотом. Узнайте больше о технической стороне этой операционной системы от создание скрытой файловой системы с помощью Shufflecake .

Изображение предоставлено: Сказочная улица через Unsplash и Викисклад . Все изменения и скриншоты Рамсеса Реда.

ПОХОЖИЕ СТАТЬИ

Популярные записи