Como posso desabilitar o avahi-daemon?

33

Como posso desabilitar o avahi-daemon e você pode me explicar como ele funciona se aparecer como um serviço, mas não está em rcN.d?

Você pode parar de ler aqui. Na verdade, por favor, a menos que você queira ensinar um noob algum Ubuntu. A questão acima deve ser clara o suficiente para ser respondida. O resto é apenas eu pedindo uma maneira mais estruturada de encontrar o caminho do Ubuntu. Eu posso mais ou menos usar outros sistemas "semelhantes ao UNIX".

Eu sou um iniciante, então, se eu agir sem sentido, considere-me sua WTF diária, mas me ajude a melhorar, por favor.

A cada inicialização, /sbin/init parece estar lançando um processo chamado avahi-daemon

# initctl list | grep avahi
avahi-daemon start/running, process 1280

como usuário avahi

# id avahi
uid=107(avahi) gid=118(avahi) groups=118(avahi)

a ps -efww ef mostra dois processos ativos, ambos chamados de avahi-daemon , e o PPID do primeiro avahi-daemon é de fato 1 , o segundo processo é apenas um filho do primeiro. O PPID = 1 é o que me faz pensar que isso foi iniciado automaticamente.

Opcionalmente:

Eu realmente não sei como verificar corretamente o que é executado na inicialização do sistema, pensando nisso.

Esta é a maneira de obter uma lista de serviços que são executados na inicialização? initctl list | sort

de qualquer forma, pareço ser capaz de parar temporariamente este "serviço" através deste comando:

service avahi-daemon stop

ou mesmo este comando

/etc/init.d/avahi-daemon stop

diretamente, que é o que este /usr/sbin/service parece estar usando:

env -i LANG="$LANG" PATH="$PATH" TERM="$TERM" "$SERVICEDIR/$SERVICE"

Quando iniciado, o script me lembra que estou controlando um serviço "Upstart" e que devo usar a invocação mais simples stop avahi-daemon . Eu acho que vou precisar aprender sobre o Upstart, mas por enquanto, tudo que eu preciso aprender é isso:

como faço para desativar serviços no Ubuntu?

Aqui está o que eu tentei (essa deve ser a maneira correta de fazer isso, ou não é?):

update-rc.d avahi-daemon disable

mas reclama:

System start/stop links for /etc/init.d/avahi-daemon do not exist

então fui procurar o caminho para o binário:

# Let me know if there is a better way to get the path above
readlink "/proc/$(echo 'ps --no-headers -o pid -C avahi-daemon | head -n 1')/exe"

qual é este:

/usr/sbin/avahi-daemon

e qualquer coisa que possa ser considerada um "arquivo executável" em etc :

find /etc -type f -name '*avahi*' -perm -u+x

pensando em encontrar scripts de inicialização em /etc/rcN.d . Eu encontrei outras coisas em vez disso:

/etc/dhcp/dhclient-exit-hooks.d/zzz_avahi-autoipd
/etc/dhcp/dhclient-enter-hooks.d/avahi-autoipd
/etc/resolvconf/update-libc.d/avahi-daemon
/etc/network/if-up.d/avahi-autoipd
/etc/network/if-up.d/avahi-daemon
/etc/network/if-down.d/avahi-autoipd
/etc/avahi/avahi-autoipd.action

parece que essa coisa avahi-daemon está sendo lançada em mudanças de estado de rede? Existe uma maneira melhor de procurar binários iniciados automaticamente em um sistema?

Eu normalmente teria obliterado os links simbólicos nos vários rc{3,5}.d neste estágio, mas agora não tenho muita certeza. O que exatamente começa essa fera? Como desabilitá-lo sem apt-get remove ou apt-get purge ?

Ele não tem muitos recursos abertos, até onde eu posso ver:

lsof -p $(echo 'ps --no-headers -o pid -C avahi-daemon | head -n 1')

nem usa muitos ciclos de CPU, com base em uma rápida olhada em htop .

Eu escrevi este one-liner para ver se ele funciona bem no utilitário da CPU por um período de um minuto, e isso nunca acontece, mas me avise se há maneiras melhores de verificar isso:

for i in {1..59}; do ps -p $(echo 'ps --no-headers -o pid -C avahi-daemon | head -n 1') --no-headers -o pcpu; sleep 1; done
    
por Robottinosino 24.10.2012 / 22:06

8 respostas

21

Scripts de inicialização de inicialização ao vivo em /etc/init , onde você pode encontrar avahi-daemon.conf . Todas as coisas listadas em initctl list correspondem a scripts em /etc/init e não são executáveis, portanto, seu find as perdeu.

Para desativar um serviço controlado pelo Upstart, consulte o livro de receitas do Upstart sobre a desativação de serviços : adicione # to start on line, ou use arquivos de substituição (exemplo: sudo sh -c "echo manual > /etc/init/avahi-daemon.override" ).

    
por Tuminoid 26.10.2012 / 07:56
7
sudo systemctl disable avahi-daemon

funcionou para mim no Ubuntu Gnome 15.10

    
por Databits 21.03.2016 / 19:09
6

Descobri que, mesmo se eu parar avahi-daemon (e avahi-daemon.socket ), o Firefox sempre reinicia. No entanto, isso funciona e desativa permanentemente esse daemon irritante:

apt-get remove avahi-daemon
    
por Peter 14.09.2016 / 22:14
4

Pode ser que você não precise impedi-lo de inicializar quando o PC inicializar, mas talvez evitá-lo de respawn quando ele for ativado, quando você o eliminar.

Então, apenas comente o respawn em /etc/init/avahi-daemon.conf

Matar esse processo sempre falhou, por isso não foi possível obter airmon-ng check para passar. Comentando o respawning, ele mata e nunca volta a me caçar.

    
por Rexford 19.09.2015 / 19:57
0

Que tal usar

sysv-rc-conf

Para essas coisas? É muito útil!

(ou seja, primeiro instale-o com o apt-get e execute-o como sudo)

    
por El Sampsa 19.03.2017 / 19:07
0

Só usei isso e funciona bem no Ubuntu 16.04

service avahi-daemon stop

Eu sei que o OP usa esta linha, mas para resumir quem está procurando por um comando simples (como eu).

    
por jpenna 09.02.2018 / 19:20
0

serviço avahi-daemon stop

Use isso. Faz maravilhas.

Em seguida, use o airmon-ng check wlo1 para verificar os serviços sobrepostos. Você não deve encontrar nenhum.

    
por ARNAB BISWAS 13.05.2018 / 04:30
0

Apenas purgar. Ou desabilite-o em rc3.d, rc4.d e rc5.d Então, como su / root

apt-get purga avahi-daemon

sim

Do que deveria estar fora do seu sistema. Verifique seu /etc/rc3.d e outros e ele deve ter saído da inicialização.

Não use o systemd para desativar. A melhor maneira é remover ou alterar o runscript para K em vez de S nas camadas de execução.

    
por Apple 25.05.2018 / 02:13