Inilah masalah yang menarik. Beberapa minggu yang lalu, saya menguji Manjaro 18.0.4 Illyria di laptop HP Pavilion saya, dan saya menemukan fenomena yang menarik. Laptop dilengkapi dengan kartu Broadcom Wireless, dan dalam sesi langsung, baik dengan driver gratis maupun tidak gratis, jaringan sudah berjalan dengan baik. Namun, setelah instalasi, saya tidak memiliki Nirkabel.
Melihat tampilan sistem, saya menemukan kesalahan yang mengatakan kesalahan WLC_SCAN (-22). Begitu saya mencapai Intertubes dengan pencarian ini, semuanya kacau balau. Saya menemukan lusinan posting forum Arch dan Manjaro berbicara tentang masalah ini. Ada beberapa solusi yang ditawarkan, tetapi tidak efektif atau sangat sulit untuk diterapkan. Jadi saya memutuskan untuk mencoba memperbaikinya sendiri, maka panduan ini. Ikuti saya.
Masalah lebih detail
Seperti yang terjadi, dalam kasus saya, saya memang memiliki ikon Nirkabel yang muncul, dan Manajer Jaringan memang mencantumkan sejumlah titik akses di sekitar laptop. Tetapi ketika saya mencoba menghubungkan, tidak ada yang terjadi. Saya akan mengetikkan kata sandi, menunggu, dan kemudian, titik akses yang dipilih akan hilang begitu saja dari daftar, dan tidak ada koneksi yang dibuat. Menjalankan dmesg, saya melihat teks berikut:
[ 526.274664] IPv6:ADDRCONF(NETDEV_UP):wlo1:tautan tidak siap
[ 526.276614] ERROR @wl_cfg80211_scan :
[ 526.276619] Kesalahan WLC_SCAN (-22)
Saya memang memiliki kartu jaringan Nirkabel yang diidentifikasi (dan berjalan). Modul kernel wl (gratis) telah dimuat ke dalam memori. Namun, sistem tidak dapat membuat koneksi. Menonaktifkan IPv6 tidak membantu - ini hanyalah artefak karena tidak menggunakan IPv6 di router.
Saya memang mencoba beberapa perbaikan cepat yang disarankan di berbagai utas. Salah satunya adalah menggunakan tombol perangkat keras pada casing laptop untuk menghidupkan/mematikan antena Nirkabel, lalu memeriksa statusnya dengan perintah rfkill. Beberapa orang melaporkan bahwa ini membantu mereka "membuka blokir" kartu mereka. Itu tidak berhasil untuk saya.
rfkill list
0:hp-wifi:LAN Nirkabel
Diblokir lunak:tidak
Diblokir keras:ya
1:hp-bluetooth:Bluetooth
Diblokir lunak:ya
Diblokir keras:ya
2:phy0:LAN Nirkabel
Diblokir lunak:tidak
Diblokir keras:tidak
Saya tidak ingin mulai mengutak-atik yaourt pada titik ini, mencoba broadcom-wl-dkms, dan tip dan trik lain yang disebutkan. Saya ingin melihat apakah saya dapat menyelesaikan ini dengan sedikit perubahan pada status sistem saya, dan mudah-mudahan, tidak perlu mengunduh apa pun melalui jaringan kabel (atau yang serupa).
Solusi
Melihat distribusi lain yang saya gunakan pada mesin ini - termasuk Fedora 30 yang agak bermasalah, serta distribusi lain yang memiliki konektivitas dan kecepatan jaringan yang baik dan masuk akal, saya menyadari bahwa saya harus menggunakan modul kernel b43 untuk perangkat Nirkabel. daripada gumpalan wl. Langkah pertama adalah secara manual membongkar modul yang ada (wl) dan memuat yang b43:
sudo modprobe -r wl
sudo modprobe b43
Setelah saya melakukan ini, masalahnya berubah. Saya tidak lagi memiliki Wireless sama sekali, meskipun modul b43 telah dimuat ke dalam memori. Jadi saya memeriksa pesan sistem sekali lagi, dan saya melihat kesalahan berikut:
[ 120.170582] Dukungan untuk core revisi 0x17 dan 0x18 dinonaktifkan oleh modul param allhwsupport=0. Coba b43.allhwsupport=1
[ 120.170590] b43:probe of bcma0:1 gagal dengan kesalahan -524
[ 120.170611] Driver Broadcom 43xx dimuat [ Features:PNLS ]
Seperti yang dikatakan kesalahan, saya perlu memuat modul dengan parameter yang berbeda:
sudo modprobe b43 allhwsupport=1
Kesuksesan! Setelah saya melakukan ini, kartu Nirkabel hidup kembali, saya dapat terhubung dan menggunakan jaringan dengan baik. Jadi masalahnya terpecahkan - tetapi kita masih perlu memahami mengapa dan kemudian mengaktifkan penggunaan modul b43 secara otomatis saat boot.
Modul yang masuk daftar hitam
Untuk beberapa alasan, baik edisi gratis maupun tidak gratis dari Manjaro Illyria memiliki modul b43 dalam daftar hitam, yang akan menjelaskan mengapa modul tersebut tidak dimuat saat boot. Anda dapat memeriksanya dengan memeriksa isi file bernama linux419-broadcom-wl.conf di bawah /etc/modprobe.d. Di dalamnya, seluruh rangkaian modul yang relevan terdaftar, termasuk b43, b43legacy, bcma, ssb, dan lainnya.
Aktifkan pemuatan b43 saat boot
Sekarang kita memiliki perbaikan manual, kita perlu membuatnya permanen. Ini membutuhkan pengeditan dua file. Pertama, Anda perlu menambahkan b43 ke daftar modul untuk boot di /etc/modules-load.d/modules.conf. Jika Anda mengecat isi file ini, itu akan menampilkan sesuatu seperti:
# Daftar modul yang akan dimuat saat boot
Anda perlu menambahkan b43 di bawahnya, seperti ini:
# Daftar modul yang akan dimuat saat boot
b43
Tapi itu tidak semua. Kita perlu menambahkan opsi pemuatan modul di bawah /etc/modprobe.d. Ini mirip dengan apa yang kami lakukan dengan kartu Realtek Wireless untuk membuatnya bekerja pada kernel 3.X yang lebih lama. Anda perlu membuat file konfigurasi dengan format berikut:"nama modul".conf. Dalam hal ini, b43.conf. Di dalam file ini, kita memerlukan opsi allhwsupport:
opsi b43 allhwsupport=1
Untuk memverifikasi, file akan terlihat seperti ini:
cat /etc/modprobe.d/b43.conf
opsi b43 allhwsupport=1
Dan itu saja. Nyalakan ulang, dan Nirkabel Anda akan aktif dan berjalan.
Kesimpulan
Di sana kita pergi. Ini tidak sepele. Tetapi saya menemukan ini lebih elegan daripada kompilasi dan pembuatan modul secara manual, dan harus menggunakan jaringan terpisah hanya untuk mengambil paket yang diperlukan. Fakta bahwa ada juga dua direktori berbeda yang perlu Anda gunakan untuk mengaktifkan pemuatan modul juga membuat ini sedikit lebih rumit.
Bagaimanapun, solusi jangka panjangnya adalah membuat distro secara otomatis mendeteksi perangkat keras yang berpotensi "buruk" yang sudah dalam tahap langsung dan melakukan penyesuaian yang sesuai - instal alat kompilasi dan header, modifikasi konfigurasi sistem terlebih dahulu, dan semacamnya, jadi ketika pengguna masuk dalam pertama kalinya, semuanya bekerja. Saya harap Anda menemukan tutorial ini bermanfaat. Hati-hati, orang Manjari.