Il Wi-Fi non funziona su Linux? Ecco come risolverlo

Il Wi-Fi non funziona su Linux? Ecco come risolverlo
Una fotografia di una finestra con il logo Wi-Fi su di essa.

Una delle grandi sfide che gli utenti tendono ad affrontare con Linux è il Wi-Fi. I driver Wi-Fi spesso non sono inclusi nel kernel e, di conseguenza, ci sono molti problemi nel far funzionare bene i moduli Wi-Fi non Intel sotto Linux. Qui spieghiamo cosa succede quando il Wi-Fi non funziona su Linux e come risolverlo.

Problemi hardware e software Wi-Fi

Un problema di connessione Wi-Fi può essere un problema hardware o software. I problemi hardware sono relativamente facili da diagnosticare: tutto ciò che devi fare è aprire il terminale e inserire il seguente comando:

Un terminale che mostra un test di loopback localhost.

Questo è un modo semplice per verificare se il tuo hardware fisico funziona. localhostfunziona come un indirizzo per controllare i circuiti della tua scheda NIC. Se il problema persiste, potrebbe essere necessario eseguire alcuni interventi sull’hardware, da soli o da qualcun altro.

Se il ping risulta pulito o non vedi nemmeno la tua scheda Wi-Fi, probabilmente hai un problema software.

Oltre a ciò, puoi anche verificare se il tuo sistema rileva un’interfaccia di rete attiva eseguendo ip addr. La maggior parte delle distribuzioni etichettano le schede wireless attualmente attive come “wl” seguito dal bus del dispositivo e dai numeri di slot nella scheda madre del computer.

Ad esempio, l’etichetta “wlp0s1” significa che si tratta di un’interfaccia di rete wireless sul bus 0, slot 1.

Un terminale che evidenzia il dispositivo wireless attualmente in esecuzione nel sistema.

Installa i driver dall’ISO di Ubuntu

Se la tua distribuzione non rileva affatto la tua rete Wi-Fi o se ricevi errori, puoi provare a installare o reinstallare i driver Wi-Fi dal file ISO di Ubuntu. Innanzitutto, devi scaricare l’ISO di Ubuntu corrispondente alla tua versione di Ubuntu. (Presumibilmente, devi scaricarlo su un dispositivo diverso o scaricarlo utilizzando la connessione Ethernet su Ubuntu.)

Apri un terminale, quindi inserisci la seguente sequenza di comandi per montare l’ISO di Ubuntu su un’unità virtuale:

Vai su “Software Updater” dalla dashboard, quindi fai clic sul pulsante Impostazioni nell’angolo inferiore sinistro della finestra.

Uno screenshot che evidenzia il

Fare clic sulla scheda Driver aggiuntivi , quindi selezionare l’ opzione Adattatore di rete wireless e fare clic su Applica modifiche .

Problema uno: dispositivo non rilevato

Se il dispositivo wireless non viene rilevato da Ubuntu (o da qualsiasi distribuzione), apri una sessione di terminale e digita il seguente comando:

Questo comando stamperà tutti i dispositivi USB attualmente collegati alla macchina. Cerca qualsiasi riga che contenga “Adattatore wireless” o “RTL”.

Un terminale che mostra il dispositivo Wi-Fi USB attualmente attivo in Linux.

Oltre a elencare tutti gli adattatori USB, puoi anche sondare il tuo sistema per eventuali dispositivi wireless PCI. Per fare ciò, esegui il seguente comando:

Proprio come con il lsusbcomando, cerca eventuali righe sull’output lspci che contengono un’etichetta “Controller di rete” o “Controller Ethernet”.

Un terminale che evidenzia il dispositivo Wi-Fi basato su PCI in Ubuntu Linux.

Trova l’esatto modulo driver attualmente utilizzato dal tuo dispositivo wireless eseguendo il comando seguente:

Evidenzia il valore della variabile “driver” e copialo negli appunti.

Un terminale che evidenzia il driver attualmente attivo per il dispositivo Wi-Fi.

Problema due: modulo driver mancante

Dopo aver eseguito con successo i comandi lsusbe lspciconfermando che la tua distribuzione Linux riesce a vedere la scheda wireless, puoi presumere che il firmware funzioni, solo che il sistema non ha idea di cosa fare con il dispositivo. È qui che sono necessari driver o moduli.

Digita il seguente comando quindi sostituisci “nomemodulo” con il contenuto degli appunti:

Ad esempio, se il tuo driver wireless è “iwlwifi”, sarebbe il seguente:

Successivamente, corri sudo lsmod | grep "modulename"per vedere se il kernel Linux ha caricato correttamente il tuo dispositivo Wi-Fi.

Un terminale che mostra il modulo Wi-Fi caricato nel kernel corrente.

Carica automaticamente il modulo driver all’avvio

Si tratta di un’occasione rara, ma a volte il modulo non persiste all’avvio. In questo caso, puoi forzarne il caricamento in modo permanente. Immettere il comando seguente nel terminale:

Aggiungi il nome del tuo modulo in basso e salva il file.

Un terminale che mostra il file di configurazione che può caricare i moduli del kernel all'avvio.

Riavviare la macchina per verificare se il kernel Linux ha caricato correttamente il dispositivo wireless.

Problema tre: DNS

È raro che il DNS costituisca un problema; tuttavia, vale la pena indagare se i problemi di connessione persistono. Dal terminale, digitare il comando seguente per verificare il risolutore DNS predefinito del sistema:

Per impostazione predefinita, questo sarà impostato sull’indirizzo IP del tuo router. Se non funziona, potresti dover cambiare “wlp0s1” con qualunque sia il tuo wireless. È inoltre possibile utilizzare il seguente comando per acquisire la designazione:

Una volta ottenute queste informazioni, esegui il ping dell’indirizzo del tuo risolutore DNS. Se funziona, puoi anche inviare un ping a una rete esterna come i risolutori DNS di Google:

Se tutti i dispositivi all’interno della tua rete restituiscono errori di caricamento della pagina, modifica i risolutori DNS sul tuo router sui server di Google o OpenNIC. Dovrai consultare il produttore del router per sapere come eseguire questa operazione, ma generalmente è possibile accedendo alla console di amministrazione del dispositivo. Puoi trovarlo sulla maggior parte dei router andando su “192.168.0.1” o “192.168.254.254” su un browser web.

Aggiunta di un server DNS personalizzato in NetworkManager

Detto questo, puoi anche modificare il risolutore DNS in base al dispositivo. Per fare ciò in Ubuntu, fai clic sul pulsante del menu di controllo nell’angolo in alto a destra del desktop, quindi seleziona l’ icona a forma di ingranaggio .

Uno screenshot che evidenzia il pulsante Impostazioni in Gnome.

Fai clic sulla categoria Wi-Fi , quindi cerca la categoria Reti visibili .

Uno screenshot che evidenzia la sezione delle reti visibili della categoria Wi-Fi.

Seleziona l’ icona a forma di ingranaggio sulla riga che contiene il nome del punto di accesso wireless.

Uno screenshot che evidenzia il pulsante Impostazioni per il punto di accesso wireless attualmente attivo.

Fare clic sulla scheda IPv4 nella barra superiore della finestra più piccola.

Uno screenshot che evidenzia la scheda IPv4 nel menu delle impostazioni del punto di accesso.

Vai alla sezione DNS , quindi disattiva lo spegnimento automatico .

Uno screenshot che evidenzia il DNS

Digitare “8.8.8.8,8.8.4.4” nella casella di testo DNS, quindi fare clic su Applica per confermare le impostazioni.

Uno screenshot che evidenzia i risolutori DNS personalizzati per la connessione Wi-Fi corrente.

Apri un nuovo terminale, quindi esegui il comando seguente per rimuovere eventuali dati precedenti del risolutore DNS:

Verifica se il tuo sistema ora utilizza le nuove impostazioni del risolutore DNS eseguendo quanto segue:

Controlla se le impostazioni DNS correnti hanno risolto il problema di rete caricando una pagina Web su un browser Web.

Uno screenshot del sito Web MakeTechEasier su una macchina Ubuntu con un risolutore DNS personalizzato.

Problema quattro: nessun gestore di rete

Diciamo che hai rimosso Network Manager o lo hai disinstallato per sbaglio. Questa è una situazione davvero problematica: non hai Internet né un gestore di rete, ma ci sono cose che puoi fare.

Supponendo che il pacchetto sia ancora nella cache, puoi andare al terminale e inserire:

Se il problema persiste, puoi forzare il sistema a connettersi a un punto di accesso wireless utilizzando wpa_supplicant. Si tratta di uno strumento da riga di comando che utilizza il driver del dispositivo wireless per connettersi a un punto di accesso senza utilizzare Network Manager.

Per iniziare, crea un file di configurazione per wpa_supplicant utilizzando il tuo editor di testo preferito:

Incolla il seguente blocco di codice all’interno del file di configurazione, quindi sostituisci “SSID” e “PASSWORD” con il nome del punto di accesso e la password del tuo router:

Salva il file di configurazione, quindi incolla la seguente riga di codice nella sessione del terminale:

Sostituisci il valore del flag “-i” con il nome della tua interfaccia wireless.

Un terminale che evidenzia il flag dell'interfaccia.

Richiedi un nuovo indirizzo IP dal tuo router ricaricando il demone DHCP:

Verifica se la tua connessione Wi-Fi funziona ora eseguendo il ping di un sito esterno:

Reinstalla Network Manager per ripristinare la piena funzionalità Wi-Fi del tuo sistema Linux:

Riavviare il computer per caricare la nuova installazione di Network Manager.

Comprendere come funzionano i moduli Wi-Fi e i driver del kernel è solo il primo passo per apprendere come funziona Linux dietro le quinte. Esplora di più il lato tecnico di questo sistema operativo creando un filesystem nascosto con Shufflecake .

Credito immagine: Dreamlike Street tramite Unsplash e Wikimedia Commons . Tutte le modifiche e gli screenshot di Ramces Red.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *