Desativar WiFi (wlan0) no Pi 3


109

Consegui um Pi 3 que sempre usa ethernet, então tente descobrir como desativar o Wi-Fi de forma que ele nem ligue após a reinicialização.

Se eu fizer um ifconfig, vejo o wlan0dispositivo. Eu posso fazer, ifconfig wlan0 downmas ele voltará a funcionar novamente após uma reinicialização.

Tentei comentar algo sobre wlan0(e wlan1) no /etc/network/interfacesmas isso não fez diferença.

eth0 não é comentado para que possa ser usado.


Você também comentou o wlan1arquivo?
Patrick Cook

Sim. Apenas esquerda lo e eth0.
Evan

2
Qual é o cenário para wlan0nos /etc/network/interfaces? Se for, automude para manualseguido de ifdown wlan0.
29--16


Obrigado, @ott. Você acabou de me lembrar como fazer com que o interno pare de pegar um endereço DHCP enquanto a unidade WLAN USB se conecta com estática. Eu apenas comentei a linha wpa_supplicant e adicionei ifdown wlan0 - Obrigado novamente.
SDsolar

Respostas:


39

Veja a resposta de Ludovic Ronsin abaixo sobre o uso do dtoverlay, um método adicionado em janeiro de 2017.

Este post parece estar falando sobre isso. A resposta fala sobre a desativação dos drivers editando o arquivo /etc/modprobe.d/raspi-blacklist.confe adicionando:

blacklist brcmfmac
blacklist brcmutil

Como alternativa, você pode usar crontab -ee adicionar:

@reboot sudo ifdown wlan0

Portanto, esse comando é executado em cada inicialização.

Espero que isso ajude, ainda estou esperando o meu Pi 3 chegar.


5
O método da lista negra funcionou para mim. Apenas criei um /etc/modprobe.d/local-blacklist.confarquivo, em vez de anexá-lo a um arquivo existente.
Evan

Até onde eu sei, o método da lista negra está mais perto de reduzir a interface administrativamente. Ele não desliga completamente a interface.
JWW

2
@Patrick Cozinhe Segundo método funcionou para mim, mas eu precisava para executar esse comando como root:sudo crontab -e
Matthias Herrmann

1
Eu gosto de usar o crontab para fazer isso. Por uma questão de estilo, eu editaria o crontab raiz em vez de qualquer outro usuário e deixaria de fora sudo. Para esticar, você precisa usar ip link set wlan0 down, em vez deifdown
threeve

1
Se você estiver usando o debian stretch e o ifdown retornar a interface desconhecida wlan0 , use: em sudo ifconfig wlan0 downvez disso. Se ainda assim não funcionar, use ifconfigpara listar todas as interfaces de rede disponíveis.
esteira

188

Para desativar completamente o Wi-Fi integrado do firmware no Pi3, adicione

dtoverlay=disable-wifi

em /boot/config.txt .

Isso está documentado aqui . Certifique-se de usar um firmware atualizado, esse recurso foi adicionado em janeiro de 2017 .

Há também uma sobreposição para desativar a bordo do bluetooth: disable-bt. Se você quiser desativar o wifi e o bluetooth, precisará adicionar estas 2 linhas:

dtoverlay=disable-wifi
dtoverlay=disable-bt

18
Corrigir. /boot/config.txté a maneira mais limpa possível de desativar o Wi-Fi e outros periféricos.
Andrejs Cainikovs 14/03

5
Sim! A resposta aceita o levará até lá, mas é uma maneira muito melhor.
Clay

3
No momento em que escrevi minha resposta (a atual aceita), eu não sabia dessa maneira, nem sei se era mesmo uma opção naquele momento. Este é um método muito superior ao descrito na minha resposta.
Patrick Cook

2
A sobreposição não existia no momento em que você escreveu sua resposta. Conforme indicado na minha resposta, isso foi adicionado em janeiro de 2017. Portanto, não se preocupe, você estava certo!
Ludovic Ronsin

2
@deanresin Por favor, veja a resposta atualizada. TL; DR; A maneira como a configuração do dtoverlay funciona pode ser vista como uma sequência de comando. Eles são executados na ordem em que são encontrados. Então você pode declarar mais de uma vez. Os parâmetros de sobreposição, se houver, são configurados com dtparam=...'comando' e referem-se ao declarado anteriormente dtoverlay. Para obter mais informações, consulte a documentação oficial em raspberrypi.org/documentation/configuration/…
Ludovic Ronsin

20

Você pode usar

sudo iwconfig wlan0 txpower off

Isso deve desativar o adaptador wifi.

Use sudo iwconfig wlan0 txpower onpara habilitá-lo novamente.

Referência: https://manpages.debian.org/buster/wireless-tools/iwconfig.8.en.html


Não, na verdade ele faz permanenty fechar o adaptador até que você fez-lo novamente
yavuzaksan

Vou aceitar sua palavra para isso então. No futuro, talvez você queira incluir mais explicações em sua resposta, pois isso foi marcado automaticamente ontem como "baixa qualidade" (devido a tamanho e falta de formatação) pelo sistema, que foi quando eu o notei. Em si, esse tipo de coisa não importa; Eu demiti a bandeira. No entanto, um moderador pode descartar uma bandeira (não agir sobre ela) como "útil", e se for uma bandeira de "baixa qualidade", isso automaticamente leva a um voto negativo ...
goldilocks

... Eu não fiz isso, mas um dos outros mods provavelmente saiu do hábito (ou porque eles concordaram com a resposta como originalmente postada não indicavam muito esforço), e foi assim que você conseguiu um voto negativo (automático ) e uma para cima (de mim), já que às vezes as bandeiras são deixadas para revisão por vários mods. Observe que eu não gosto dessa política de "voto negativo automático" e, na verdade, reclamei sobre o SE Meta sem sucesso (a justificativa é que as pessoas reais sinalizam as coisas como de baixa qualidade, mas "esquecem" de votar também).
goldilocks

1
@yavuzaksan Não consigo ligá-lo agora.
Erutan409

3
@ Erutan409 para reativar o adaptador wifi, você deve escrever duas vezes "sudo iwconfig wlan0 txpower auto". mas como dizem que você deve escrevê-lo duas vezes caso contrário não vai funcionar (eu acredito que há alguma falha no firmware)
yavuzaksan


5

Além da lista negra, que corre o risco de um bloqueio, caso você precise reiniciar e não haja Ethernet disponível, você também pode descarregar o módulo do kernel da seguinte maneira:

sudo modprobe -r -v brcmfmac

Mas não tenho certeza se descarregar os drivers de dispositivo é uma boa idéia, pois temo que o dispositivo wlan0 ainda consuma energia e, ainda mais, se os recursos de gerenciamento de energia dos drivers de dispositivo não estiverem carregados, atualmente mantenho os drivers carregados e simplesmente certifique-se de que a rota padrão via wlan0 está desabilitada:

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

Isso garantirá que todo o tráfego seja via eth0 e (esperançosamente) seja mais estável e assim por diante, por exemplo, para o daemon ntp.


2

Eu uso o seguinte comando wpa_cli terminate, eu tenho esse comando no meu/etc/rc.local


1
Isso desativa o cliente WPA, então você basicamente desativa completamente a conectividade sem fio. Não faça isso.
Zimano 30/10

2

Modifiquei o rc.local usando o comando sudo nano /etc/rc.local e adicionei o ifconfig wlan0 nele. No entanto, se a Ethernet não estiver conectada ou o IP não estiver atribuído à interface com fio, o WiFi estará ativado. Isso fornece uma maneira de backup para conectar o RasPi ao executar sem cabeça.

parece como abaixo,

_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

Salve usando CTRL + X e reinicie. Parece funcionar para mim, pois após a reinicialização, o ifconfig não fornece wlan0.


2

Estou usando meu pi como um ponto de acesso (ponto de acesso wifi). Isso funciona para mim:

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

E para ativá-lo novamente sem reiniciar o pi, execute o seguinte:

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

0

Outra solução é editar o /etc/network/interfacesarquivo, comentar / remover linhas sobre a conexão Wi-Fi (wlan0) e adicionar linha:

iface wlan0 inet manual

-4

A maneira mais fácil de desconectar-se de uma rede Wifi no Pi 3 é inserir uma senha inútil! Clique na sua rede Wi-Fi, ela solicitará novamente a senha, mas desta vez insira um texto aleatório e você será desconectado.


5
Há uma diferença entre ter uma interface ativada, um dispositivo ativado (do que trata esta questão) e ter uma interface conectada a uma rede, e é disso que você está falando. Eu não acho que o OP esteja preocupado com isso.
goldilocks

@goldilocks Bem, se o Wifi estiver desconectado dessa maneira, ele sempre usará a Ethernet e é isso que o OP está pedindo.
Chinmay Sarupria

Ou edite usando sudo nano /etc/wpa_supplicant/wpa_supplicant.confpara aqueles que desejam usar esse método.
101/10/19
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.