LINUX.ORG.RU

LFS+systemd не видит Wifi

 , ,


0

0

Доброго времени суток!

Решил все-таки поставить до конца себе BLFS, но встал вопрос, как конфигурировать для него сеть.

dmesg выдал следующее:

[    5.347364] systemd[1]: Listening on networkd rtnetlink socket.
[    5.347379] systemd[1]: Starting networkd rtnetlink socket.
[    5.726667] systemd-journald[1144]: [b]Failed to set file attributes: Inappropriate ioctl for device[/b]
[    5.779496] systemd[1]: Started Journal Service.
[    5.792387] systemd-sysctl (1146) used greatest stack depth: 12704 bytes left
[    6.399048] cfg80211: Calling CRDA to update world regulatory domain
[    6.943899] r8169 0000:03:00.0 enp3s0: renamed from eth0
[    7.216243] ath9k 0000:04:00.0 wlp4s0: renamed from wlan0
[    8.192080] Adding 12582908k swap on /dev/sda3.  Priority:-1 extents:1 across:12582908k 
[    8.922335] EXT4-fs (sda11): re-mounted. Opts: errors=remount-ro
[    8.998055] systemd-journald[1144]: Received request to flush runtime journal from PID 1
[    9.551057] cfg80211: Calling CRDA to update world regulatory domain
[   12.703051] cfg80211: Calling CRDA to update world regulatory domain
[   15.855040] cfg80211: Calling CRDA to update world regulatory domain
[   19.007072] cfg80211: Calling CRDA to update world regulatory domain
[   22.159065] cfg80211: Calling CRDA to update world regulatory domain
[   25.311072] cfg80211: Calling CRDA to update world regulatory domain
[   28.463071] cfg80211: Calling CRDA to update world regulatory domain
[   31.615039] cfg80211: Calling CRDA to update world regulatory domain
[   34.767043] cfg80211: Exceeded CRDA call max attempts. Not calling CRDA
[   71.986051] IPv6: ADDRCONF(NETDEV_UP): wlp4s0: link is not ready
[  211.211519] EXT4-fs (sda4): mounted filesystem with ordered data mode. Opts: (null)

networkctl -a:

IDX LINK             TYPE               OPERATIONAL SETUP     
  1 lo               loopback           n/a         n/a       
  2 enp3s0           ether              off         unmanaged 
  3 wlp4s0           wlan               no-carrier  configuring 
  4 sit0             sit                off         unmanaged 

4 links listed.

networkctl status:

cat /networkctl.status 
* 3: wlp4s0
   Link File: /lib/systemd/network/99-default.link
Network File: n/a
        Type: wlan
       State: no-carrier (configuring)
        Path: pci-0000:04:00.0
      Driver: ath9k
      Vendor: Qualcomm Atheros
       Model: AR9285 Wireless Network Adapter (PCI-Express) (AW-NE785 / AW-NE785H 802.11bgn Wireless Full or Half-size Mini PCIe Card)
  HW Address: 00:25:d3:80:be:06 (AzureWave Technologies, Inc)
         MTU: 1500

ifconfig говорит, что интерфейс подымается, но

iwlist wlp4s0 scanning
говорит, что ссылка не создана. Вопрос: какая ссылка ему нужна и на что он ругается?

★★

не знаю что там у вас за траблы с systemd, в сортах как говорится, не разбираемся.

любой wi-fi устанавливается и настраивается одинаково, в любом линуксе, везде, ВЕЗДЕ одно и тоже.

1) узнай, какой чип использует твой wi-fi адаптер. самый простой способ для новичка сделать это, выполнить lspci -v | grep driver загрузившись в другой готовый линукс и подключив этот адаптер. или lsusb в зависимости от.

2) в ядре найди драйвер этого чипа и включи, пересобери ядро и загрузись с ним.

3) wi-fi адаптер будет видно в dmesg, но в 99.9% случаях если это не ath9k, то у тебя затребуют firmware. в dmesg ты увидишь, что драйвер ядра пытается загрузить блоб из /lib/firmware, но тщетно, потому что его нет. так вот, идёшь сюда: https://git.kernel.org/cgit/linux/kernel/git/firmware/linux-firmware.git/tree/ ищешь файлик который просят в dmesg, скачиваешь, кладёшь в /lib/firmware, и перазапускаешь ifconfig wlan0 down; ifconfig wlan0 up

4) всё, драйвер работает, теперь ставишь пакет wpa_supplicant (в зависимостях у него libnl), затем командой /usr/sbin/wpa_passphrase "point" "password" >> /etc/wpa_supplicant.conf добавляешь точку доступа и пароль к ней в конфиг.

5) wpa_supplicant -Dnl80211 -iwlan0 -c/etc/wpa_supplicant.conf

6) dhcpcd wlan0

7) И О ЧУДО НИКАКИХ ПЯТЕН, КАКИМ ПОРОШКОМ БУДЕШЬ СТИРАТЬ? КАКИМ? вот, что делает с вами ваш systemd, нагромодили кучу говна в котором потом не могут разобраться, хотя лфс это просто как пять копеек.

Spoofing ★★★★★
()

Во-первых, убери systemd из тегов. networkd — это про сетевой уровень и выше, а ты ещё линк не поднял.

Во-вторых, приведи сообщение iwlist'а.

В-третьих, попробуй iw dev wlp4s0 scan.

intelfx ★★★★★
()
Последнее исправление: intelfx (всего исправлений: 1)

Lfs is For Suckers

anonymous
()
Ответ на: комментарий от intelfx

iwlist:

wlp4s0 Interface doesn't support scanning.

iwconfig:

# iwconfig wlp4s0 ESSID "DarkStar"
Cannot read /proc/net/wireless
Error for wireless request "Set ESSID" (8B1A) :
    SET failed on device wlp4s0 ; Invalid argument.
# cat /proc/net/wireless
cat: /proc/net/wireless: No such file or directory

iw не стоит пока.

Ядро собрано с поддержкой моего Wifi-адаптера. dmesg говорит, что драйвер найден (именно ath9k):

[    1.705944] ACPI: PCI Interrupt Link [LN3A] enabled at IRQ 19
[    1.706314] r8169 0000:03:00.0 eth0: RTL8168b/8111b at 0xffffc90000538000, 90:e6:ba:59:94:db, XID 18000000 IRQ 26
[    1.706318] r8169 0000:03:00.0 eth0: jumbo features [frames: 4080 bytes, tx checksumming: ko]
[    1.706592] ACPI: PCI Interrupt Link [LN4A] enabled at IRQ 18
[    1.753975] ath: phy0: Enable LNA combining
[    1.755415] ath: EEPROM regdomain: 0x8283
[    1.755417] ath: EEPROM indicates we should expect a country code
[    1.755420] ath: doing EEPROM country->regdmn map search
[    1.755421] ath: country maps to regdmn code: 0x3
[    1.755423] ath: Country alpha2 being used: RU
[    1.755424] ath: Regpair used: 0x3
[    1.757000] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[    1.757292] cfg80211: Calling CRDA to update world regulatory domain
[    1.757355] ieee80211 phy0: Atheros AR9285 Rev:2 mem=0xffffc900005e0000, irq=18

aido ★★
() автор топика
Ответ на: комментарий от Spoofing
lspci -v |grep driver
	*********Smth else drivers**********
	Kernel driver in use: r8169
	Kernel driver in use: ath9k
aido ★★
() автор топика
Ответ на: комментарий от aido

Ну ты попросту ядро недособрал. Wireless Extensions, которые используются iwconfig/iwlist, во-первых, устарели (вместо них нетлинк и утилита iw), а во-вторых, их нужно отдельно включать (CONFIG_CFG80211_WEXT в ядре).

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

А теперь конфиги:

cat /etc/systemd/network/80-dhcp.network
[Match]
Name=*s0

[Network]
DHCP=both
cat /etc/hosts
# Begin /etc/hosts (network card version)

127.0.0.1 localhost
#::1       localhost
#<192.168.0.2> <HOSTNAME.example.org> [alias1] [alias2] ...
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

# End /etc/hosts (network card version)
aido ★★
() автор топика
Ответ на: комментарий от aido

Опять же, это сейчас не важно. networkd — это по большей части сетевой уровень (IP) и выше, а ты беспроводной линк ещё не поднял.

intelfx ★★★★★
()
Ответ на: комментарий от aido

минут через 50 отпишусь, как ведро подымется.=)

Ты что не умеешь ядро в несколько потоков собирать?

make -jN bzImage
make -jN modules
make install
make modules_install
kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

1) Не все проги можно в несколько потоков собирать, поэтому с ядром раньше так не «рисковал» 2) машинка и так старая и не быстрая: два потока на двух ядрах греют проц до 80 градусов.

aido ★★
() автор топика
Ответ на: комментарий от aido

Не все проги можно в несколько потоков собирать

Ядро можно.

машинка и так старая и не быстрая: два потока на двух ядрах греют проц до 80 градусов.

Значит нужно проверить систему охлаждения. С другой сторогы, смысл на старом железе ставит дистрибутив, который нужно собирать из исходников. Если есть желание получить выигрышь в производительности, собрав систему под такое старое железо, то собирай систему на современном быстром ПК, а сюда переноси уже собранную.

kostik87 ★★★★★
()
Ответ на: комментарий от intelfx

Судя по комментарию ТС он собирает в один поток. Ну и всё же уверен, что оптимизированное ядро, т.е. в котором включены только нужные опции в два потока будет собираться максимум пол часа даже на таком процессоре.

kostik87 ★★★★★
()
Ответ на: комментарий от intelfx

Все работает. Действительно, забыл ключ CONFIG_CFG80211_WEXT[\inline]. Тема закрыта.

aido ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.