Avahi-0.8

Introduction à Avahi

Le paquet Avahi est un système qui facilite la découverte des services dans un réseau local.

This package is known to build and work properly using an LFS 11.3 platform.

Informations sur le paquet

Téléchargements supplémentaires

Dépendances de Avahi

Requises

GLib-2.74.5

Recommandées

Facultatives

D-Bus Python-1.3.2, libevent-2.1.12, PyGTK-2.24.0, Doxygen-1.9.6 et xmltoman (pour générer la documentation)

Notes utilisateur : https://wiki.linuxfromscratch.org/blfs/wiki/avahi

Installation de Avahi

Il doit y avoir un utilisateur et un groupe dédiés pour prendre le contrôle du démon avahi-daemon après son démarrage. Tapez les commandes suivantes en tant qu'utilisateur root :

groupadd -fg 84 avahi &&
useradd -c "Avahi Daemon Owner" -d /run/avahi-daemon -u 84 \
        -g avahi -s /bin/false avahi

Il doit y avoir un groupe d'accès dédiés pour les clients Avahi. Tapez les commandes suivantes en tant qu'utilisateur root :

groupadd -fg 86 netdev

Corrigez une régression qui provient d'une situation de compétition lorsqu'IPv6 est utilisé et que plusieurs interfaces réseau sont présentes sur le système :

patch -Np1 -i ../avahi-0.8-ipv6_race_condition_fix-1.patch

Corrigez un problème de sécurité dans avahi-daemon :

sed -i '426a if (events & AVAHI_WATCH_HUP) { \
client_free(c); \
return; \
}' avahi-daemon/simple-protocol.c

Installez Avahi en exécutant les commandes suivantes :

./configure \
    --prefix=/usr        \
    --sysconfdir=/etc    \
    --localstatedir=/var \
    --disable-static     \
    --disable-libevent   \
    --disable-mono       \
    --disable-monodoc    \
    --disable-python     \
    --disable-qt3        \
    --disable-qt4        \
    --enable-core-docs   \
    --with-distro=none   \
    --with-dbus-system-address='unix:path=/run/dbus/system_bus_socket' &&
make

Ce paquet n'a pas de suite de tests.

Maintenant, en tant qu'utilisateur root :

make install

Explication des commandes

--disable-static : Ce paramètre empêche l'installation des versions statiques des bibliothèques.

--disable-libveent : ce paramètre désactive l'utilisation de libevent-2.1.12. Supprimez-le si vous l'avez installé.

--disable-mono : Ce paramètre désactive la construction de l'intégration de Mono.

--disable-monodoc : Ce paramètre désactive la documentation pour l'intégration de Mono.

--disable-python : Ce paramètre désactive les scripts qui dépendent de Python. Il permet aussi à une installation régulière (sans destdir) de réussir entièrement.

--disable-qt3 : Ce paramètre désactive la construction obsolète des portions Qt3 du paquet.

--disable-qt4 : Ce paramètre désactive la construction obsolète des portions Qt4Core du paquet.

--enable-core-docs : Ce paramètre active la construction de la documentation.

--with-distro=none : C'est un script de démarrage obsolète de la distribution LFS. Cette option est le désactive.

--with-dbus-system-address=... : cette option empêche le paquet de référencer le répertoire obsolète /var/run.

--disable-dbus : Ce paramètre évite l'utilisation de D-Bus.

--disable-gtk : Ce paramètre évite l'utilisation de GTK+2.

--disable-gtk3 : Ce paramètre évite l'utilisation de GTK+3.

--disable-qt5 : ce paramètre désactive l'utilisation de Qt5 et permet de construire le paquet sans lui.

--disable-libdaemon : Ce paramètre évite l'utilisation de libdaemon. Si vous utilisez cette option, avahi-daemon ne sera pas construit.

--enable-tests : Cette option permet de construire les tests et les exemples.

--enable-compat-howl : Cette option active la couche de compatibilité avec HOWL.

--enable-compat-libdns_sd : Cette option active la compatibilité pour libdns_sd.

Configuration de avahi

Script de démarrage

Pour démarrer le démon avahi-daemon au démarrage, activez l'unité systemd précédemment installée en exécutant la commande suivante en tant qu'utilisateur root :

systemctl enable avahi-daemon

Pour démarrer le démon avahi-dnsconfd au démarrage, activez l'unité systemd précédemment installée en exécutant la commande suivante en tant qu'utilisateur root :

systemctl enable avahi-dnsconfd

Contenu

Programmes installés: avahi-autoipd, avahi-browse, avahi-browse-domains, avahi-daemon, avahi-discover-standalone, avahi-dnsconfd, avahi-publish, avahi-publish-address, avahi-publish-service, avahi-resolve, avahi-resolve-address, avahi-resolve-host-name, avahi-set-host-name, bshell, bssh et bvnc
Bibliothèques installées: libavahi-client.so, libavahi-common.so, libavahi-core.so, libavahi-glib.so, libavahi-gobject.so, libavahi-libevent.so libavahi-ui-gtk3.so, libavahi-qt5, libavahi-ui.so, libdns_sd.so et libhowl.so,
Répertoires installés: /etc/avahi/services, /usr/include/{avahi-client,avahi-common, avahi-compat-howl, avahi-compat-libdns_sd, avahi-core, avahi-glib, avahi-gobject, avahi-libevent, avahi-qt5, avahi-ui}, /usr/lib/avahi, /usr/share/avahi

Descriptions courtes

avahi-autoipd

est un démon de configuration des adresses réseau IPv4LL

avahi-browse

parcourt les services mDNS/DNS-SD utilisant le démon Avahi

avahi-browse-domains

parcourt les services mDNS/DNS-SD utilisant le démon Avahi

avahi-daemon

est le démon Avahi mDNS/DNS-SD

avahi-discover-standalone

parcourt les services mDNS/DNS-SD utilisant le démon Avahi

avahi-dnsconfd

est un serveur DNS Unicast pour la configuration du démon mDNS/DNS-SD

avahi-publish

enregistre un service mDNS/DNS-SD ou un nom d'hôte ou une adresse utilisant le démon Avahi

avahi-publish-address

enregistre un service mDNS/DNS-SD ou un nom d'hôte ou une adresse utilisant le démon Avahi

avahi-publish-service

enregistre un service mDNS/DNS-SD ou un nom d'hôte ou une adresse utilisant le démon Avahi

avahi-resolve

résout un ou plusieurs noms d'hôtes mDNS/DNS en adresses IP (et vice versa) en utilisant le démon Avahi

avahi-resolve-address

résout un ou plusieurs noms d'hôtes mDNS/DNS en adresses IP (et vice versa) en utilisant le démon Avahi

avahi-resolve-host-name

résout un ou plusieurs noms d'hôtes mDNS/DNS en adresses IP (et vice versa) en utilisant le démon Avahi

avahi-set-host-name

change le nom d'hote mDNS

bssh

parcourt les serveurs SSH sur le réseau local

bvnc

parcourt les serveurs VNC sur le réseau local