Disabilita WiFi (wlan0) su Pi 3


109

Ho un Pi 3 che utilizzerà sempre Ethernet, quindi cerca di capire come disabilitare il WiFi in modo tale che non si accenda nemmeno dopo un riavvio.

Se lo faccio ifconfigvedo il wlan0dispositivo. Posso fare ifconfig wlan0 downma tornerà di nuovo dopo un riavvio.

Ho provato a commentare qualcosa su wlan0(e wlan1) in /etc/network/interfacesma ciò non ha fatto differenza.

eth0 non è commentato, quindi può essere utilizzato.


Hai commentato anche wlan1in quel file?
Patrick Cook,

Sì. Ho lasciato solo lo e eth0.
Evan,

2
Qual è l'impostazione per wlan0in /etc/network/interfaces? Se è autocambiarlo in manualseguito da ifdown wlan0.
ott--


Grazie @ott. Mi hai appena ricordato come impedire a quello interno di afferrare un indirizzo DHCP mentre l'unità WLAN USB si collega con elettricità statica. Ho appena commentato la riga wpa_supplicant e ho aggiunto ifdown wlan0 - Grazie ancora.
SDsolar,

Risposte:


39

Vedi la risposta di Ludovic Ronsin di seguito sull'utilizzo di dtoverlay, un metodo aggiunto a gennaio 2017.

Questo post sembra parlarne. La risposta parla di disabilitare i driver modificando il file /etc/modprobe.d/raspi-blacklist.confe aggiungendo:

blacklist brcmfmac
blacklist brcmutil

In alternativa, è possibile utilizzare crontab -ee aggiungere:

@reboot sudo ifdown wlan0

Quindi quel comando viene eseguito ad ogni avvio.

Spero che questo aiuti, sto ancora aspettando che arrivi il mio Pi 3.


5
Il metodo della lista nera ha funzionato per me. Ho appena creato un /etc/modprobe.d/local-blacklist.conffile, anziché aggiungerlo a un file esistente.
Evan,

Per quanto ne so, il metodo della lista nera è più vicino alla riduzione amministrativa dell'interfaccia. Non spegne completamente l'interfaccia.
jww

2
@Patrick Cook Il secondo metodo ha funzionato per me, ma avevo bisogno di eseguire quel comando come root:sudo crontab -e
Matthias Herrmann

1
Mi piace usare il crontab per farlo. Per motivi di stile, modificherei il crontab di root invece di qualsiasi altro utente e lascerei perdere sudo. Per lo stretching, è necessario utilizzare ip link set wlan0 downinvece diifdown
tre

1
Se stai usando debian stretch e ifdown restituisce l' interfaccia sconosciuta wlan0, usa sudo ifconfig wlan0 downinvece : Se il problema persiste, utilizzare ifconfigper elencare tutte le interfacce di rete disponibili.
mat

188

Per disabilitare completamente il WiFi integrato dal firmware sul Pi3, aggiungere

dtoverlay=disable-wifi

in /boot/config.txt .

Questo è documentato qui . Assicurati di utilizzare un firmware aggiornato, questa funzione è stata aggiunta a gennaio 2017 .

C'è anche un overlay per la disattivazione a bordo del bluetooth: disable-bt. Se vuoi disabilitare sia il wifi che il bluetooth, devi aggiungere queste 2 linee:

dtoverlay=disable-wifi
dtoverlay=disable-bt

18
Corretta. /boot/config.txtè il modo più pulito possibile per disabilitare WiFi e altre periferiche.
Andrejs Cainikovs,

5
Sì! La risposta accettata ti porterà lì, ma questo è un modo molto migliore.
Clay

3
Al momento in cui ho scritto la mia risposta (quella attualmente accettata) non lo sapevo in questo modo, né so se fosse nemmeno un'opzione in quel momento. Questo è un metodo di gran lunga superiore a quello descritto nella mia risposta.
Patrick Cook,

2
La sovrapposizione non esisteva al momento in cui hai scritto la tua risposta. Come affermato nella mia risposta, questo è stato aggiunto a gennaio 2017. Quindi non preoccuparti, avevi ragione!
Ludovic Ronsin,

2
@deanresin Si prega di consultare la risposta aggiornata. TL; DR; Il modo in cui funziona la configurazione di dtoverlay può essere visto come una sequenza di comandi. Vengono eseguiti nell'ordine in cui vengono rilevati. Quindi puoi dichiararlo più di una volta. I parametri di sovrapposizione, se presenti, sono impostati con dtparam=...'comando' e si riferiscono al precedente dichiarato dtoverlay. Per maggiori informazioni, consultare la documentazione ufficiale su raspberrypi.org/documentation/configuration/…
Ludovic Ronsin,

20

Puoi usare

sudo iwconfig wlan0 txpower off

Questo dovrebbe disabilitare l'adattatore wifi.

Utilizzare sudo iwconfig wlan0 txpower onper abilitarlo di nuovo.

Riferimento: https://manpages.debian.org/buster/wireless-tools/iwconfig.8.en.html


no, in realtà chiude definitivamente l'adattatore fino a quando non viene ripristinato
yavuzaksan,

Prenderò la tua parola per quello allora. In futuro potresti voler includere ulteriori spiegazioni nella tua risposta, dal momento che questa è stata automaticamente contrassegnata ieri come "bassa qualità" (a causa di lunghezza e mancanza di formattazione) dal sistema, che è quando l'ho notato. Di per sé quel tipo di non importa; Ho respinto la bandiera. Tuttavia, un moderatore può scartare una bandiera (non agire su di essa) come "utile", e se fosse una bandiera "di bassa qualità", che automaticamente ti procura un downvote ...
goldilocks

... Non l'ho fatto, ma una delle altre mod probabilmente ha fatto l'abitudine (o perché hanno concordato la risposta come pubblicato originariamente non indicava molto sforzo), ecco come hai ottenuto un voto negativo (automatico ) e uno in alto (da me), poiché le bandiere a volte vengono lasciate in revisione da più mod. Nota: questa politica di "downvote automatico" non mi piace e in realtà mi sono lamentato con SE Meta per nulla (la giustificazione è che le persone effettive contrassegnano le cose come di bassa qualità ma "dimenticano" di effettuare anche il downvote).
Riccioli d'oro

1
@yavuzaksan Non riesco a riaccenderlo ora.
Erutan409

3
@Erutan409 per riattivare l'adattatore wifi è necessario scrivere due volte "sudo iwconfig wlan0 txpower auto". ma come dire dovresti scriverlo due volte, altrimenti non funzionerà (credo che ci sia qualche difetto nel firmware)
yavuzaksan


5

Oltre alla lista nera che ha il rischio di un blocco nel caso in cui sia necessario riavviare e non è disponibile alcuna Ethernet, è anche possibile scaricare il modulo del kernel come segue:

sudo modprobe -r -v brcmfmac

Ma non sono sicuro che scaricare i driver di dispositivo sia una buona idea poiché temo che il dispositivo wlan0 possa ancora consumare energia e ancora di più se le funzionalità di gestione dell'alimentazione dei driver di dispositivo non sono caricate, attualmente mantengo i driver caricati e mi assicuro semplicemente che il percorso predefinito tramite wlan0 è disabilitato:

sudo ip route del default via <Gateway IP> dev wlan0

Questo farà in modo che tutto il traffico passi attraverso eth0 e (si spera) sia più stabile e così via, ad esempio per il demone ntp.


2

Uso il seguente comando wpa_cli terminate, ho quel comando nel mio/etc/rc.local


1
Ciò disabilita il client WPA, quindi praticamente si interrompe completamente la connettività wireless. Non farlo
Zimano,

2

Ho modificato rc.local usando il comando sudo nano /etc/rc.local e ho aggiunto ifconfig wlan0 in esso. Tuttavia, se Ethernet non è connessa o IP non è assegnato all'interfaccia cablata, il WiFi è attivo. Ciò fornisce un modo di backup per connettere RasPi quando si esegue senza testa.

sembra come sotto,

_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi

# Disable WiFi if wired.
logger "Checking Network interfaces..."
if ethtool eth0 | egrep "Link.*yes" && ifconfig eth0 | grep "inet addr"; then
  logger 'Disabling WiFi...'
  ifconfig wlan0 down
else
  logger 'WiFi is still enabled: Ethernet is down or ethtool is not installed.'
fi

exit 0

Quindi salva usando CTRL + X e riavvia. Sembra funzionare per me, come dopo il riavvio di ifconfig non dà wlan0.


2

Sto usando il mio pi come punto di accesso (hotspot wifi). Questo funziona per me:

# Turn off
sudo service hostapd stop && sudo service isc-dhcp-server stop && sudo ifconfig wlan0 down && sudo service isc-dhcp-server start

E per riaccenderlo senza riavviare il pi, esegui questo:

# Turn on
sudo service isc-dhcp-server stop && sudo ifconfig wlan0 up && sudo service hostapd start && sudo service isc-dhcp-server start

0

Un'altra soluzione è quella di modificare il /etc/network/interfacesfile, commentare / rimuovere le righe sulla connessione Wi-Fi (wlan0) e aggiungere la riga:

iface wlan0 inet manual

-4

Il modo più semplice per disconnettersi da una rete Wifi su Pi 3 è inserire una password inutile! Fai clic sulla tua rete Wifi, ti chiederà di nuovo la password ma questa volta inserisci un testo casuale e verrai disconnesso.


5
C'è una differenza tra avere un'interfaccia abilitata, un dispositivo abilitato (di cui si tratta questa domanda) e avere un'interfaccia connessa a una rete, che è ciò di cui stai parlando. Non credo che l'OP sia preoccupato per questo.
Riccioli d'oro

@goldilocks Bene, se il Wifi è disconnesso in questo modo, utilizzerà sempre Ethernet ed è quello che OP richiede.
Chinmay Sarupria,

O modifica utilizzando sudo nano /etc/wpa_supplicant/wpa_supplicant.confper coloro che desiderano utilizzare questo metodo.
101
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.