Настройка Wi-Fi в Debian: что делать если не видит, не работает WiFi

Привет! В этой статье мы разберем настройку Wi-Fi в системе Debian. Конечно, можно попробовать поднять беспроводную сеть еще на этапе установки, но не всегда это получается. Плюс старые инструкции по Debian часто уже частично устарели: где-то советуют WEP, где-то предлагают править все через старый файл interfaces, а где-то вообще используют давно неактуальные пакеты и команды. Поэтому ниже я оставлю рабочую и более современную схему, но при этом сохраню общую логику статьи – от установки до GNOME, KDE и ручной настройки.

Введение

Сразу уточню самый важный момент. На текущий день в обычном Debian для настольной системы чаще всего удобнее работать через NetworkManager, а не через ручное редактирование Wi-Fi в старом стиле. Ручная настройка через /etc/network/interfaces все еще возможна, но ее я бы оставил для минимальных установок, серверов без GUI, очень старых ноутбуков или случаев, когда вы точно понимаете, что делаете. Для GNOME и KDE ручной wpa_supplicant обычно уже не первый выбор. Это прямо соответствует и современным рекомендациям Debian по настройке сети на десктопе.

Еще одна важная правка. Название беспроводного интерфейса у вас почти наверняка будет не «wlan0» и уж точно не «eth». В современных Debian обычно используются предсказуемые имена вроде wlp2s0, wlan1 или похожие. Поэтому везде ниже, где я показываю команды, подставляйте именно свое имя интерфейса. Проверить его можно очень просто командой:

ip link

Перед началом использования графических интерфейсов убедитесь, что установлен NetworkManager. А вот с группой «netdev» история уже не такая жесткая, как раньше. В современных GNOME и KDE доступ часто дается через D-Bus и саму desktop-среду, поэтому вручную добавлять пользователя в «netdev» требуется не всегда. Но если с правами есть проблемы, тогда это по-прежнему полезный совет.

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

При установке ОС

Старые инструкции по Debian часто начинались с того, что нужно заранее таскать флешку с микропрограммой и быть готовым к боли. На текущий день ситуация стала лучше. В официальных установочных образах Debian, начиная со свежей волны инсталляторов, прошивки из non-free-firmware уже учитываются гораздо лучше, чем раньше. Но полностью проблема не исчезла: на части ноутбуков, USB-адаптеров и новых чипсетов установщик все равно может не поднять Wi-Fi сразу. Поэтому здесь я бы дал такой практический порядок действий:

  1. Если установщик сам предлагает загрузить отсутствующую микропрограмму, можно действительно вставить флешку с нужной прошивкой и нажать «Загрузить отсутствующую микропрограмму со сменного носителя». Это все еще рабочий путь.
  2. Но если с Wi-Fi на этапе установки начинаются странности, я бы не воевал с этим слишком долго. Намного проще закончить установку по кабелю, через USB-модем, через раздачу с телефона по USB или вообще временно без сети, а уже после установки нормально поднять Wi-Fi в системе.
  3. Если беспроводной интерфейс отображается не как «wlan0», не пугайтесь. Это нормально. На свежих системах чаще встречаются имена вроде «wlp2s0» или «wlan1».
  4. Если вам предлагают выбрать тип сети, то для обычного домашнего или офисного Wi-Fi нужен режим «Infrastructure» или «Managed». «Ad Hoc» – это очень старый и редкий сценарий, для обычного роутера он не нужен.
  5. Вводите имя сети и пароль аккуратно. И здесь важная правка к старым мануалам: префикс s: перед паролем относится к старым WEP-сценариям и в обычной настройке WPA2/WPA3 он не нужен. Для современного домашнего Wi-Fi такой совет только путает.

После этого настройка на этапе установки либо пройдет, либо нет. И если нет – это не трагедия. Самая частая ошибка здесь в том, что человек пытается любой ценой заставить установщик дружить с Wi-Fi, хотя потом в уже установленной системе это делается гораздо проще и чище. Так что если инсталлятор упрямится, не тратьте лишний час – заканчивайте установку и переходите к шагам ниже.

И еще одна важная поправка. В старом тексте была фраза про WEP и обязательную перенастройку на WPA2-PSK. Сейчас я бы сказал жестче: WEP вообще не стоит рассматривать как нормальный вариант защиты. Для домашней сети минимально разумный вариант – WPA2-PSK (AES), а если роутер и адаптер поддерживают – можно использовать WPA2/WPA3 или чистый WPA3. Более подробно про это можно почитать в наших отдельных материалах: что такое WPA, WPA2, WPA3 и что выбрать – TKIP или AES.

Настройка Wi-Fi в Debian: что делать если не видит, не работает WiFi

WPA2-PSK

Теперь перейдем к нормальной настройке уже после установки системы. Здесь я бы сразу разделил два варианта. Первый – современный и удобный: через NetworkManager и команду nmcli. Второй – ручной: через wpa_supplicant и, при желании, /etc/network/interfaces. Для обычного ноутбука с Debian я бы почти всегда начинал именно с первого варианта.

  1. Ставим базовые пакеты для ручной и полу-ручной настройки:
sudo apt update
sudo apt install wpasupplicant iw

Здесь тоже есть важная поправка. Старые инструкции часто советуют wireless-tools и команду iwconfig. Они все еще существуют в пакетах Debian, но для современной системы инструмент iw считается более правильным, а iwconfig уже относится к старому Wireless Extensions. Поэтому ниже я буду ориентироваться именно на iw.

  1. Проверяем, что система видит беспроводной интерфейс:
iw dev

Если интерфейс не появился, это действительно очень похоже на проблему с прошивкой или драйвером, а не с самой настройкой Wi-Fi. Дополнительно полезно посмотреть:

lspci -nnk
lsusb
dmesg | grep -i firmware

Если в логах видно, что не хватает микропрограммы, обычно нужен пакет из компонента non-free-firmware. Для Intel это часто firmware-iwlwifi, для Realtek – firmware-realtek, для Broadcom – firmware-brcm80211, для Atheros – firmware-atheros. Главное – сначала понять чипсет, а уже потом ставить пакет.

  1. Смотрим доступные сети:
sudo iw dev wlp2s0 scan | less

Вместо wlp2s0 подставьте свой интерфейс. Если сетей слишком много, можно упростить просмотр через grep, но для обычного случая и так хватит. Если здесь ваша сеть не видна, а на телефоне она есть, проверьте, не скрыта ли она, не работает ли только в 5 ГГц и поддерживает ли этот диапазон ваш адаптер. Если сеть скрытая, вот отдельная инструкция как подключиться к скрытой Wi-Fi сети.

  1. Самый удобный вариант при установленном NetworkManager – подключиться сразу командой:
sudo nmcli dev wifi list
sudo nmcli dev wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ"

На свежих Debian с GNOME, KDE и даже многими легкими окружениями это часто самый чистый и быстрый способ. Никаких лишних правок в interfaces, никаких плясок с ручным запуском демонов. Если у вас уже стоит NetworkManager, именно так я бы и подключался в консоли. Для сравнения похожих команд можно еще заглянуть в нашу статью про Wi-Fi в Ubuntu – по части NetworkManager и nmcli логика там очень близкая.

  1. Если же вам нужен именно ручной способ через wpa_supplicant, генерируем конфиг:
sudo wpa_passphrase "ИМЯ_СЕТИ" "ПАРОЛЬ" | sudo tee /etc/wpa_supplicant/wpa_supplicant-wlp2s0.conf > /dev/null

После этого закрываем доступ к файлу, потому что в нем будет храниться ключ сети:

sudo chmod 600 /etc/wpa_supplicant/wpa_supplicant-wlp2s0.conf

Вот здесь как раз была одна из серьезных ошибок старой инструкции. Ограничивать права нужно не на /etc/network/interfaces, а именно на конфиг wpa_supplicant, если вы храните там пароль. Сам файл interfaces так не защищают ради одной только Wi-Fi сети.

  1. Если хотите использовать классический ifupdown-подход, откройте /etc/network/interfaces и добавьте туда что-то вроде:
auto wlp2s0
iface wlp2s0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant-wlp2s0.conf

После этого можно поднять интерфейс так:

sudo ifdown wlp2s0 2>/dev/null
sudo ifup wlp2s0

Но тут снова напомню важное: если у вас установлен NetworkManager, не надо одновременно заставлять один и тот же Wi-Fi интерфейс жить и через ifupdown, и через NetworkManager. Они будут друг другу мешать. Именно поэтому на современных Debian для десктопов чаще советуют оставить /etc/network/interfaces максимально простым и отдать Wi-Fi в руки NetworkManager.

Если дома обычный роутер и обычный ноутбук, то в 99% случаев вам не нужно вручную прописывать RSN, CCMP, hidden SSID, pairwise и все остальные строки старого образца. Команда wpa_passphrase сама создаст базовый рабочий конфиг, а дальше все будет чище и понятнее. Старые пошаговые разборы каждой строки сейчас полезны скорее для понимания теории, чем для повседневной настройки.

GNOME

Устанавливаем пакет:

sudo apt update
sudo apt install network-manager network-manager-gnome

Но здесь тоже нужно обновить старую логику статьи. На свежем Debian с GNOME NetworkManager очень часто уже установлен и работает из коробки. Поэтому слепо ставить пакет с нуля требуется не всегда. Сначала проверьте, не активен ли сервис:

systemctl status NetworkManager

Если он выключен, включаем:

sudo systemctl enable --now NetworkManager

Перезайдите в GNOME. Теперь вы либо увидите значок сети в верхней панели, либо сможете зайти в «Настройки» – «Wi-Fi». На новых версиях GNOME именно второй путь часто даже удобнее старой иконки в трее. Выбираем нужную беспроводную сеть, вводим пароль и подключаемся.

Если у вас невидимая Wi-Fi сеть, то ищите пункт вроде «Подключиться к скрытой сети» или «Join Hidden Network». Далее вводим имя сети, пароль и не забываем указать тип защиты в строке «Безопасность». Для домашней сети почти всегда это будет WPA/WPA2 Personal, а если роутер совсем современный – возможно и смешанный режим с WPA3. Если сомневаетесь, лучше сначала проверить настройки на самом роутере или почитать наши материалы про WPA2/WPA3 и про скрытую сеть.

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

nmcli dev wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ"

И да, старый текст про обязательное добавление пользователя в «netdev» для GNOME сегодня уже нельзя считать универсальным. В большинстве обычных desktop-установок все работает и без этого. Но если у пользователя нет прав на управление соединениями, тогда уже можно добавить его в группу и перелогиниться.

KDE

Установка:

sudo apt update
sudo apt install network-manager plasma-nm

Здесь старую инструкцию пришлось поправить довольно сильно. Пакет network-manager-kde и запуск «knetworkmanager» – это уже из другой эпохи. В актуальном Debian для Plasma используется пакет plasma-nm, а сама работа с сетью идет через встроенный сетевой виджет Plasma и NetworkManager. Никаких «Run Command» и древних заклинаний в обычной домашней системе уже не нужно.

После установки и запуска NetworkManager в KDE Plasma в системном трее появится привычная иконка сети. Нажимаем по ней, выбираем нужную Wi-Fi сеть, вводим ключ и подключаемся. Если сеть скрытая, ищите пункт подключения к скрытой беспроводной сети или зайдите в «Параметры системы» – «Сеть» – «Wi-Fi». Там логика примерно та же, что и в GNOME, только внешний вид другой.

Если вам удобнее настраивать сеть через команды, Plasma этому никак не мешает. Вы все так же можете использовать nmcli, а сам графический интерфейс лишь сохраняет профиль подключения. Это удобно тем, что при проблемах можно быстро сравнить – не косячит ли GUI, и нормально ли подключается сеть из консоли.

WiFi в Debian не работает

Старый заголовок про Debian 9 я специально обновил, потому что проблема вечная, а вот привязка к конкретной версии уже давно устарела. Если Wi-Fi в Debian не работает, я бы шел вот по такому порядку, без хаоса и без бессмысленных переустановок:

  1. Проверяем, видит ли система сам адаптер:
lspci -nnk
lsusb
  1. Проверяем, не заблокирован ли он программно или аппаратно:
rfkill list

Если видите «Soft blocked: yes», можно попробовать:

sudo rfkill unblock wifi
  1. Проверяем, виден ли интерфейс и поднят ли он:
ip link
nmcli device status
  1. Смотрим логи на тему прошивки и драйвера:
dmesg | grep -i firmware
dmesg | grep -i wlan
journalctl -u NetworkManager
  1. Если не хватает прошивки – ставим нужный пакет из non-free-firmware. Очень часто это один из вариантов:
sudo apt install firmware-iwlwifi
sudo apt install firmware-realtek
sudo apt install firmware-atheros
sudo apt install firmware-brcm80211

Если пакет не находится, значит сначала надо проверить источники APT и убедиться, что у вас включен компонент non-free-firmware. На свежих Debian это уже норма, а не что-то экзотическое. И да, не ставьте все пакеты подряд только «на удачу». Намного правильнее сначала определить чипсет адаптера.

  1. Проверяем, не пытаются ли NetworkManager и ifupdown одновременно управлять одним и тем же интерфейсом.

Это очень частая причина странного поведения. Например, вы руками уже что-то прописали в /etc/network/interfaces, а потом еще пытаетесь подключать тот же Wi-Fi через GNOME или KDE. В результате одно подключение поднимается, второе его сбивает, и человек думает, что «Debian не умеет в Wi-Fi». На деле просто конфликтуют два способа управления сетью.

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

Еще один частый вопрос – а что делать, если сети видны, но подключение не проходит? Тогда я бы проверил уже не Debian, а сам роутер: режим безопасности, WPA2/WPA3, AES/TKIP, скрытый SSID и диапазон 2.4/5 ГГц. Особенно если старый адаптер не видит только одну сеть, а соседние видит. Здесь полезны наши статьи про TKIP и AES и про подключение к скрытой Wi-Fi сети.

Короткий FAQ

Нужно ли сейчас править Wi-Fi через /etc/network/interfaces?
Не обязательно. Для обычного Debian на ноутбуке или ПК с GNOME/KDE чаще удобнее и правильнее использовать NetworkManager. Ручной способ оставляйте для минимальных систем, серверов или если вы точно знаете, зачем он вам нужен.

 

Почему в статье старое имя интерфейса wlan0, а у меня wlp2s0?
Потому что в современных Linux давно используются предсказуемые имена интерфейсов. Это нормально. Просто подставляйте свое имя в команды.

 

iwconfig все еще нужен?
Работать он может, но для современных систем я бы ориентировался на iw. Это более актуальный инструмент, а сам Debian прямо рекомендует переходить на него вместо старого iwconfig.

 

Можно ли подключиться к Wi-Fi вообще без GUI?
Да. Самый удобный консольный путь на desktop-системе – nmcli. Если NetworkManager нет, можно использовать wpa_supplicant и ifupdown или systemd-networkd, но это уже более ручной сценарий.

 

Если Wi-Fi не поднялся при установке Debian, это плохо?
Нет. Такое все еще бывает. Намного важнее то, как система видит адаптер уже после установки. Очень часто в установленной Debian все поднимается намного проще, чем в самом инсталляторе.

Видео

Автор статьи
Бородач 2860 статей
Сенсей по решению проблем с WiFiем. Обладатель оленьего свитера, колчана витой пары и харизматичной бороды. Любитель душевных посиделок за танками.
WiFiGid
Комментарии: 3
  1. Павел

    Всё получилось, да геморрой конечно, но в целом, по статье все делал и нормально работает теперь

  2. Аноним

    Спасибо, автору :idea:

  3. НИкита

    Ничего не получается и эту штука не запускается, а я не могу понять почему…АААААА :evil:

Добавить комментарий
После отправки комментарий может не отображаться - это нормально. Сразу же после модерации он будет опубликован. Если Вы хотите быстро узнать о получении ответа, рекомендуем оставить свой e-mail (это необязательно). E-mail используется исключительно для Вашего оповещения, мы не занимаемся спамом.

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Нажимая на кнопку "Отправить комментарий", я даю согласие на обработку персональных данных и принимаю политику конфиденциальности.