Faça o systemd parar de iniciar o serviço wpa_supplicant indesejado?

10

Eu queria desativar systemdtentativas indesejadas para iniciar automaticamente wpa_supplicant. Eu poderia simplesmente executar um

sudo systemctl disable wpa_supplicant.service --global

e eu não veria mais um wpa_supplicant na ps -efsaída. De qualquer forma, isso não funcionou. Como posso fazer isso funcionar?

Meu problema em questão pode ser melhor descrito pela saída de

$>systemctl status wpa_supplicant*
● wpa_supplicant.service - WPA supplicant
   Loaded: loaded (/usr/lib/systemd/system/wpa_supplicant.service; disabled; vendor preset: disabled)
   Active: active (running) since Sun 2016-08-28 20:57:37 CEST; 14min ago

onde, como você pode ver, o disabledserviço está carregado e ativo de qualquer maneira, graças ao systemd me ajudando completamente a fazer a coisa mais simples;)

Atualização
Parece que tive alguma sorte removendo brutalmente esses arquivos:

[email protected]
wpa_supplicant.service
[email protected]
[email protected]

da /usr/lib/systemd/systempasta. Adivinha? Após o reinício, o wpa finalmente não é mais iniciado systemd. Parece-me que deve ter havido uma maneira mais pacífica / conciliatória de conseguir systemdque o serviço não seja iniciado.

humanidade e paz
fonte
Mascarar a unidade não fez nada para você?
precisa
@KalvinLee Não tenho certeza se o que fiz (remover os arquivos) e mascarar (para o meu entendimento, isso manteria os links nomeados como os arquivos que apontam para isso /dev/nullnão é essencialmente a mesma coisa.) O que você sugere é algo que eu tento . Não devo ter procurado o suficiente no unix.se para ver essa disbale vs mask systemdpergunta. Vou tentar afirmar volta em breve, para atualizar a questão
humanityANDpeace
Desabilitar o modelo (wpa_supplicant @ .service) ajudou?
precisa saber é
1
@ maxf yes (veja que na atualização eu também removi o arquivo de modelo) e funcionou. Eu acho que a resposta real aqui foi que o que Kalvin Lee sugeriu é realmente desagradável (não fazer com que ela comece, mesmo que seja uma dependência ou masknão). systemctl maské a desativação real (ou seja, o serviço não existe mais tarde).
HumanidadeANDpeace

Respostas:

5

Encontrei o mesmo problema que o seu. Depois de cavar, encontrei uma pasta chamada:

/usr/share/dbus-1/system-services/fi.w1.wpa_supplicant1.service

Este arquivo é usado para permitir que o serviço seja ativado pelo d-bus. O d-bus pode ativar o serviço mesmo se estiver desativado. Confirmei que isso estava acontecendo renomeando o arquivo e depois reiniciando. Vi que, neste momento wpa_supplicant, não havia sido iniciado! Para perseguir a questão ainda mais para baixo seria necessária descobrir qual o programa está ativando wpa_supplicantvia d-bus. Eu não fiz isso, pois mascarar o arquivo da unidade funciona bem para meus propósitos.

BrettB
fonte
Observe que o NetworkNanager requer a execução de wpa_supplicant ( url ). Depois de remover o arquivo acima, perdi o acesso às redes wifi.
user3804598 5/01
1

Tentei seguir a sugestão de BrettB, mas não teve efeito no meu sistema. (Ubuntu 18.04.)

No entanto, o seguinte funcionou:

sudo systemctl disable wpa_supplicant
Mike Nakis
fonte