Comment puis-je désactiver avahi-daemon?

33

Comment puis-je désactiver avahi-daemon et pouvez-vous m'expliquer comment il fonctionne s'il apparaît en tant que service mais que ce n'est pas dans rcN.d?

Vous pouvez arrêter de lire ici. En fait, s'il vous plaît faites à moins que vous vouliez enseigner un noob certains Ubuntu. La question ci-dessus doit être suffisamment claire pour qu'on puisse y répondre. Le reste est juste pour moi de réclamer une manière plus structurée de trouver son chemin autour d'Ubuntu. Je peux plus ou moins utiliser d'autres systèmes "UNIX-like".

Je suis un débutant, donc si j'agis de manière absurde, considérez-moi votre quotidien WTF mais aidez-moi à m'améliorer, s'il vous plaît.

A chaque démarrage, /sbin/init semble lancer un processus appelé avahi-daemon

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

en tant qu'utilisateur avahi

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

un ps -efww ef affiche 2 processus actifs, tous deux appelés avahi-daemon , et le PPID du premier avahi-daemon est en effet 1 , le second processus est juste un enfant du premier. Le PPID = 1 est ce qui me fait penser que cela a été démarré automatiquement.

Facultativement:

Je ne sais pas vraiment comment vérifier correctement ce qui est exécuté au démarrage du système, en y réfléchissant.

Est-ce la façon d'obtenir une liste des services qui s'exécutent au démarrage? initctl list | sort

De toute façon, il semble que je sois capable d'arrêter temporairement ce "service" via cette commande:

service avahi-daemon stop

ou même cette commande

/etc/init.d/avahi-daemon stop

directement, ce que ce /usr/sbin/service semble utiliser:

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

Lors du lancement, le script me rappelle que je contrôle un service "Upstart" et que je devrais utiliser l'invocation plus simple stop avahi-daemon . Je suppose que je devrai apprendre à propos de Upstart mais pour l'instant, tout ce que j'ai besoin d'apprendre c'est ceci:

Comment puis-je désactiver les services dans Ubuntu?

Voici ce que j'ai essayé (cela devrait être la bonne façon de le faire, ou n'est-ce pas?):

update-rc.d avahi-daemon disable

mais il se plaint:

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

donc je suis allé à la recherche du chemin d'accès au binaire:

# 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"

qui est ceci:

/usr/sbin/avahi-daemon

et tout ce qui pourrait être considéré comme un "fichier exécutable" dans etc :

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

pensant que je trouverais des scripts de démarrage dans /etc/rcN.d . J'ai trouvé d'autres choses à la place:

/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

semble que cette chose avahi-daemon est lancée sur les changements d'état du réseau? Existe-t-il un meilleur moyen de rechercher automatiquement les binaires démarrés sur un système?

J'aurais normalement oblitéré les liens symboliques dans les différents rc{3,5}.d à ce stade mais maintenant je ne suis pas trop sûr. Que commence exactement cette bête? Comment le désactiver sans apt-get remove ou apt-get purge ?

Autant que je sache, il n’ya pas beaucoup de ressources ouvertes:

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

il n’utilise pas non plus trop de cycles de processeur, sur la base d’un rapide coup d’œil à htop .

J'ai écrit ce one-liner pour voir si cela pouvait être génial sur une utilisation CPU en une minute, et ça ne le fait jamais, mais faites-moi savoir s'il existe de meilleures façons de vérifier cela:

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
    
posée Robottinosino 24.10.2012 - 22:06
la source

8 réponses

21

Les scripts de démarrage upstart fonctionnent dans /etc/init , où vous pouvez trouver avahi-daemon.conf . Toutes les choses listées dans initctl list correspondent aux scripts dans /etc/init , et elles ne sont pas exécutables, donc votre find les a manquées.

Pour désactiver un service contrôlé par Upstart, consultez Livre de recettes Upstart sur la désactivation des services : ajoutez # à start on line, ou utilisez des fichiers de substitution (exemple: sudo sh -c "echo manual > /etc/init/avahi-daemon.override" ).

    
réponse donnée Tuminoid 26.10.2012 - 07:56
la source
7
sudo systemctl disable avahi-daemon

a travaillé pour moi sur Ubuntu Gnome 15.10

    
réponse donnée Databits 21.03.2016 - 19:09
la source
6

J'ai trouvé que même si j'arrête avahi-daemon (et avahi-daemon.socket ), Firefox le redémarre toujours. Cependant, cela fonctionne et désactive ce démon agaçant de manière permanente:

apt-get remove avahi-daemon
    
réponse donnée Peter 14.09.2016 - 22:14
la source
4

Vous n’avez peut-être pas besoin de l’empêcher de démarrer lorsque le PC démarre, mais peut-être l’empêcher de respawn , quand vous le tuez.

Il suffit donc de commenter le respawn in /etc/init/avahi-daemon.conf

Tuer ce processus a toujours échoué, de sorte que airmon-ng check ne pouvait pas être transmis. Commentant la réapparition, il tue et ne me revient jamais en chasse.

    
réponse donnée Rexford 19.09.2015 - 19:57
la source
0

Comment utiliser

sysv-rc-conf

Pour ces choses? C'est très pratique!

(c'est-à-dire, installez-le d'abord avec apt-get, puis exécutez-le en tant que sudo)

    
réponse donnée El Sampsa 19.03.2017 - 19:07
la source
0

Juste utilisé ceci et fonctionne bien sur Ubuntu 16.04

service avahi-daemon stop

Je sais que l'OP utilise cette ligne, mais pour résumer pour savoir qui recherche une commande simple (comme moi).

    
réponse donnée jpenna 09.02.2018 - 19:20
la source
0

service avahi-daemon stop

Utilisez ceci. Fonctionne à merveille.

Utilisez ensuite airmon-ng check wlo1 pour vérifier les services qui se chevauchent. U ne devrait en trouver aucun.

    
réponse donnée ARNAB BISWAS 13.05.2018 - 04:30
la source
0

Il suffit de le purger. Ou désactivez-le dans rc3.d, rc4.d et rc5.d Donc, comme su / root

apt-get purge avahi-daemon

oui

Que ce soit hors de votre système. Vérifiez votre fichier /etc/rc3.d et d’autres et il devrait être parti du démarrage.

Ne pas utiliser systemd pour désactiver le meilleur moyen est de supprimer ou de modifier le script d’exécution en K au lieu de S dans les calques d’exécution.

    
réponse donnée Apple 25.05.2018 - 02:13
la source

Lire d'autres questions sur les étiquettes