Раньше, я никогда не озадачивался относительно WiFi соединения, есть провода и ладно. А тут вдруг решил — есть же этот самый WiFi, почему бы и не воспользоваться возможностью.
Я вообще не понимаю, как это работает, но я понимаю, что должны присутствовать WiFi-адаптер, драйвер на него, некий конфиг с настройками сети и утилита для указания параметров подключения (наличие которой, видимо не обязательно, если всё можно указывать в конфиге).
Для удовлетворения любопытства про общую теорию беспроводных сетей и про то, как оно обычно устроено в Linux-ах, предлагаю воспользоваться поиском самостоятельно.
Здесь же сосредоточимся на том, как это выглядит применительно к Slackware.
Для настройки способа управления сетью традиционно предназначен сценарий netconfig. Если вы в процессе установки ответили утвердительно на вопрос о настройке сети, то вы его уже видели, при установке запускается тоже он.
text
# netconfig
text
┌───────────────────────ENTER HOSTNAME──────────────────────────┐
│ First, we'll need the name you'd like to give your host. │
│ Only the base hostname is needed right now. (not the domain) │
│ │
│ Enter hostname: │
│ ┌───────────────────────────────────────────────────────────┐ │
│ │ │ │
│ └───────────────────────────────────────────────────────────┘ │
├───────────────────────────────────────────────────────────────┤
│ < OK > <Cancel> │
└───────────────────────────────────────────────────────────────┘
┌──────────────ENTER DOMAINNAME FOR 'sw-cur-64'────────────────┐
│ Now, we need the domain name for this machine, such as: │
│ │
│ example.org │
│ │
│ Do not supply a leading '.' │
│ │
│ Enter domain name for sw-cur-64: │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ │ │
│ └──────────────────────────────────────────────────────────┘ │
├──────────────────────────────────────────────────────────────┤
│ < OK > <Cancel> │
└──────────────────────────────────────────────────────────────┘
text
┌───────────CONFIGURATION TYPE FOR ' '────────────────────┐
│ Now we need to know how your machine connects to the network. │
│ If you have an internal network card and an assigned IP address, │
│ gateway, and DNS, use the 'static IP' choice to enter these │
│ values. If your IP address is assigned by a DHCP server (commonly │
│ used by cable modem and DSL services), select 'DHCP'. If you do │
│ not have a network card, select the 'loopback' choice. You may │
│ also select 'NetworkManager' if you would like to have the │
│ NetworkManager daemon automatically handle your wired and wireless │
│ network interfaces (this is simple and usually works). Which type │
│ of network setup would you like? │
│ ┌────────────────────────────────────────────────────────────────┐ │
│ │ static IP Use a static IP address to configure ethernet │ │
│ │ DHCP Use a DHCP server to configure ethernet │ │
│ │ loopback Set up a loopback connection (modem or no net) │ │
│ │ NetworkManager Autoconfigure network using NetworkManager │ │
│ └────────────────────────────────────────────────────────────────┘ │
├────────────────────────────────────────────────────────────────────┤
│ < OK > <Cancel> │
└────────────────────────────────────────────────────────────────────┘
Первые три варианта предполагают настройку сети (и WiFi) сценариями /etc/rc.d/rc.inet1 на основе файла конфигурации /etc/rc.d/rc.inet1.conf.
Четвертый вариант предполагает настройку сети при помощи NetworkManager-а (или wicd из /extra).
Варианты на основе rc.inet1 требуют прав root для смены настроек, что в случае, например, ноутбука, подключающегося в различных местах, не очень удобно.
Варианты с NM или wicd этим недостатком не страдают -- сетью управляет запущенный от root демон, а управление им производится от имени обычного пользователя при помощи клиентского приложения.
Если установлен wicd, то он перекрывает NM полностью (подробности см. в стартовых сценариях).
WiFi обеспечивает среду передачи, поверх которой работают протоколы более высокого уровня (см. 7-и уровневая модель OSI).
Для работы в режимах WPA/WPA2 необходим wpa_supplicant.
Для работы беспроводного адаптера необходим драйвер в ядре, возможно прошивка (firmware), заливаемая в адаптер при включении машины.
Из предыдущих ваших сообщений нам известно, что ваш беспроводной адаптер:
Ну что ж, у меня для вас две новости.
1) В составе ядра linux 5.4 пока нет готового драйвера для устройства RTL8723DE [10ec:d723].
2) На просторах Интернета такой драйвер опубликован: https://github.com/lwfinger/rtlwifi_new.git#branch=extended
Начать стоит с загрузки и подготовки исходников ядра (т.к. пакета с исходниками 5.4_rc5 я вам не давал):
text
# cd /tmp
# wget https://git.kernel.org/torvalds/t/linux-5.4-rc5.tar.gz
# cd /usr/src
# tar xf /tmp/linux-5.4-rc5.tar.gz
# ln -sf linux-5.4-rc5 linux
# cd linux-5.4-rc5
# cat /boot/config-generic-5.4.0-rc5 > .config
# make modules_prepare
# cd /usr/src
# git clone -b extended --single-branch https://github.com/lwfinger/rtlwifi_new.git
# cd rtlwifi_new
# make && make install && make clean
Убеждаемся, что собралось без ошибок.
Загружаем
text
# modprobe -r rtl8723de
# modprobe rtl8723de
Убеждаемся, что при загрузке не ругнулось на отсутствующую фирмварь.
Проверяем, что устройство появилось в выводе команды
text
# iwconfig
Вспоминаем прочитанное ранее:
The ONLY option you are likely to need is "ant_sel". The penny-pinchers at some laptop vendors,
mostly HP, decided to save a few cents to install only one antenna. That would not have been a
problem as the driver contains the logic necessary to handle this case; however, the idiots
failed to correrctly encode that information in the devices ROM. Accordingly, the driver follow
the ROM setting and uses the WRONG antenna. Effectively, the device has NO usable antennas.
To test if this is the case on your system, please run the following commands (set 1):
# DEVICE=$(iw dev | grep Interface | cut -d " " -f2)
# iw dev $DEVICE scan | egrep "SSID|signal|\(on"
If the signal for the AP to which you wish to connect is -60 or less, then you have this problem.
The fix is to supply the "ant_sel" option. Run the following commands (set 2):
At this point, do a complete shutdown! The device may retain the old setting with a warm reboot.
To be safe, do a power off. After the system come back up, rerun the set 1 comamands again. If
The signals are now a lot stronger, you are done. If not, repeat command set 2 with "ant_sel=1".
If that does not help, I have no idea what is wrong.
bash-5.0# cd /usr/src
bash-5.0# tar xf linux-5.4-rc5.tar.gz
tar: linux-5.4-rc5.tar.gz: Функция open завершилась с ошибкой: Нет такого файла или каталога
tar: Error is not recoverable: exiting now
# tar xf /tmp/linux-5.4-rc5.tar.gz
ну или где он там у вас лежит...
Добавлено: 31.10.2019 22:24:30
Хозяйке на заметку: root-а получайте по "su -" или "su -l" или "su -l root".
Хозяйке на заметку: перед выполнением команды "из Интернета", тем более от root, обязательно стоит разобраться, что она делает (man в помощь).
bash-5.0# make modules_prepare
***
*** Configuration file ".config" not found!
***
*** Please run some configurator (e.g. "make oldconfig" or
*** "make menuconfig" or "make xconfig").
***
Makefile:660: include/config/auto.conf.cmd: Нет такого файла или каталога
make: *** [Makefile:669: .config] Ошибка 1
Добавлено: 01.11.2019 02:29:10
"bormant" написал:
Хозяйке на заметку: root-а получайте по "su -" или "su -l" или "su -l root".
А у меня отдельный терминал для рута, я настроил в mwm: :)
text
"Xterm Root" f.exec "xterm su -l -fg white -bg black -name root"
Вот только судя по форме приглашения "bash-5.0#" /etc/profile, выполняющийся внутри login shell, почему-то так и не отработал...
Добавлено: 31.10.2019 22:36:00
"booidea" написал:
В оба каталога?
распаковать в /boot:
text
# cd /boot; tar xf /tmp/config-5.4_rc5.tar.gz
Затем:
text
# cd /usr/src/linux-5.4-rc5
# cat /boot/config-generic-5.4_rc5 > .config
[quote="booidea"]отдельный терминал для рута, я настроил в mwm
Вот только судя по форме приглашения "bash-5.0#" /etc/profile, выполняющийся внутри login shell, почему-то так и не отработал...[/quote]
Ну вот да, странно, я только сейчас задумался. Хотя права рута, не ругается… Оно запускает терминал и сразу же требует пароль. Может надо строку отредактировать и какие-то дополнительные параметры передавать?
Ну да, что-то я в пакетики запамятовал положить в прошлый раз config-и...
Хотя, посмотрел сейчас внутрь пакетов, на месте конфиги в /boot, только называются чуть иначе, тот, что был нужен:
/boot/config-generic-5.4.0-rc5
Добавлено: 31.10.2019 22:56:08
Фирмварь уже идет в комплекте в родном пакете от Slackware kernel-firmware и для WiFi, и для Bluetooth:
/lib/firmware/rtl_bt/rtl8723d_fw.bin
/lib/firmware/rtl_bt/rtl8723d_config.bin
/lib/firmware/rtlwifi/rtl8723defw.bin
make[1]: выход из каталога «/usr/src/linux-5.4-rc5»
make -C /lib/modules/5.4.0-rc5/build M=/usr/src/rtlwifi_new modules
make[1]: вход в каталог «/usr/src/linux-5.4-rc5»
WARNING: Symbol version dump ./Module.symvers
is missing; modules will have no dependencies and modversions.
Building modules, stage 2.
MODPOST 19 modules
make[1]: выход из каталога «/usr/src/linux-5.4-rc5»
Making backups
Install rtlwifi SUCCESS
bash-5.0# iwconfig
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=0 dBm
Retry short limit:7 RTS thr=2347 B Fragment thr:off
Encryption key:off
Power Management:on
lo no wireless extensions.
Если опять все плохо -- похоже антенну на карту вообще не подключили.
PS. Моя б воля, писал бы "modprobe -r rtl8723de; modprobe rtl8723de" вместо выключения/включения. Но автор драйверов пишет, что даже при перезагрузке настройка может "залипнуть" в железке, и драйвер на это повлиять никак не сможет -- нет оснований ему не верить.
Добавлено: 01.11.2019 00:59:48
Полагаю, в каком-то виде антенна поймается, а значит вопрос с драйвером успешно закрыт. Останется выбрать вариант настройки WiFi и собственно настроить его. Начните с предлагаемого по умолчанию NetworkManager.
Выбор NM должен сделать исполняемым rc.networkmanager, убеждаемся в наличии прав на исполнение:
text
# ls -l /etc/rc.d/rc.networkmanager
Не помню, запускают ли его тут же, проверьте
text
# sh /etc/rc.d/rc.networkmanager status
Если не запущен:
text
# sh /etc/rc.networkmanager start
Затем запустите от пользователя nm-applet (в иксах) и настройте соединение сообразно параметрам точки доступа. Для NM есть также консольные CLI и TUI клиенты.
Добавлено: 01.11.2019 08:31:16
Запамятовал, в KDE свой клиент — KNetworkManager, если правильно путаю, но у вас и не KDE, насколько я понял.
Очевидно что роутер и надо выключить. :) А по поводу DE, так 4-KDE на мой вкус - идеален. *THUMBSUP* Жалко в gentoo собрать не могу. :[ Там i3 использую - просто великолепен со своими tabs *HI*