Vous pouvez arrêter de lire ici. En fait, s'il vous plaît, faites-le sauf si vous souhaitez ENSEIGNER à un Ubuntu. La question ci-dessus devrait être suffisamment claire pour qu'on y réponde. Le reste, ce n'est que moi qui appelle à une manière plus structurée de se repérer dans Ubuntu. Je peux plus ou moins utiliser d'autres systèmes "de type UNIX".
Je suis un débutant, donc si j'agis avec absurdité, considérez-moi votre WTF quotidien, mais aidez-moi à m'améliorer, s'il vous plaît.
/sbin/init
semble lancer un processus appelé avahi-daemon
# initctl list | grep avahi
avahi-daemon start/running, process 1280
en tant qu'utilisateur avahi
name__
# id avahi
uid=107(avahi) gid=118(avahi) groups=118(avahi)
un ps -efww ef
montre 2 processus actifs, les deux appelés avahi-daemon
et le PPID
du premier avahi-daemon
est en effet 1
, le second processus n’est qu’un enfant du premier. Le PPID
= 1
est ce qui me fait penser que cela a été démarré automatiquement.
éventuellement:
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 le moyen d'obtenir une liste des services qui s'exécutent au démarrage?initctl list | sort
de toute façon, il semble que je puisse arrêter temporairement ce "service" avec cette commande:
service avahi-daemon stop
ou bien 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"
Une fois lancé, le script me rappelle que je contrôle un service "Upstart" et que je devrais utiliser l'appel plus simple, stop avahi-daemon
. Je suppose que j'aurai besoin de connaître Upstart, mais pour le moment, tout ce que j'ai besoin d'apprendre est la suivante:
comment désactiver les services dans Ubuntu?
Voici ce que j'ai essayé (ce 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
alors je suis allé à la recherche du chemin de la 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
name__:
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 en cours de lancement sur les changements d'état du réseau? Existe-t-il un meilleur moyen de rechercher les fichiers binaires démarrés automatiquement sur un système?
J'aurais normalement effacé les liens symboliques dans les divers rc{3,5}.d
à ce stade, mais je ne suis plus très sûr de le savoir. Qu'est-ce qui 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 trop 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, d'après un rapide coup d'œil sur htop
name__.
J'ai écrit ce document pour voir s'il fonctionnait mal avec une utilisation du processeur pendant une minute, et cela ne se produisait jamais, mais laissez-moi savoir s'il existe de meilleurs moyens 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
Les scripts de démarrage par défaut se trouvent dans /etc/init
, où vous pouvez trouver avahi-daemon.conf
. Tous les éléments énumérés dans initctl list
correspondent aux scripts de /etc/init
et ils ne sont pas exécutables. Par conséquent, votre find
les a manqués.
Pour désactiver un service contrôlé Upstart, voir Livre de recettes Upstart sur la désactivation de services : ajoutez soit #
à la ligne start on
ou utilisez des fichiers de remplacement (exemple: Sudo sh -c "echo manual > /etc/init/avahi-daemon.override"
).
Sudo systemctl disable avahi-daemon
a travaillé pour moi sur Ubuntu Gnome 15.10
J'ai constaté 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 ennuyeux de manière permanente:
apt-get remove avahi-daemon
Vous n’aurez peut-être pas besoin de l’empêcher de démarrer lors du démarrage de votre ordinateur, mais évitez peut-être de le remplacer par le nom respawn
.
Alors, commentez le respawn
dans /etc/init/avahi-daemon.conf
Tuer ce processus a toujours échoué, nous n'avons donc pas réussi à obtenir airmon-ng check
. Commentant le respawning, il tue et ne revient jamais pour me chercher.
service avahi-daemon stop
Utilisez ceci. Fonctionne à merveille.
Puis utilisez airmon-ng check wlo1 pour vérifier les services qui se chevauchent. U devrait en trouver aucun.
Je viens de l'utiliser et ça fonctionne très bien sur Ubuntu 16.04
service avahi-daemon stop
Je sais que le PO utilise cette ligne, mais pour résumer pour qui recherche une commande simple (comme moi).
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
Cela devrait être hors de votre système. Vérifiez votre /etc/rc3.d et les autres et il devrait être parti depuis le démarrage.
Ne pas utiliser systemd pour désactiver, le meilleur moyen consiste à supprimer ou à modifier le script d’exécution en K au lieu de S dans les couches d’exécution.
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 sous Sudo)