Introduksjon til Avahi
Avahi pakken er et system som
forenkler tjenesteoppdagelse på et lokalt nettverk.
Notat
Utviklingsversjoner av BLFS kan ikke bygge eller kjøre noen
pakker riktig hvis LFS eller avhengigheter har blitt oppdatert
siden den siste stabile versjonene av bøkene.
Pakkeinformasjon
Ytterligere Nedlastinger
Avahi Avhengigheter
Påkrevd
GLib-2.82.1 (GObject Introspection anbefalt)
Anbefalt
GTK+-3.24.43 og libdaemon-0.14
Valgfri
D-Bus Python-1.3.2, libevent-2.1.12,
Doxygen-1.12.0, GTK+-2
(avviklet), og xmltoman (for å
generere dokumentasjon)
Installasjon av Avahi
Det bør være en dedikert bruker og gruppe til å ta kontroll på
avahi-daemon nissen
etter at det er startet. Utfør følgende kommandoer som root
bruker:
groupadd -fg 84 avahi &&
useradd -c "Avahi Daemon Owner" -d /run/avahi-daemon -u 84 \
-g avahi -s /bin/false avahi
Det bør også være en dedikert privilegert tilgangsgruppe for
Avahi klienter. Utfør følgende
kommando som root
bruker:
groupadd -fg 86 netdev
Fiks en regresjon som resulterer i en konkurranse tilstand når IPv6
er i bruk og flere nettverkskort er tilstede på systemet:
patch -Np1 -i ../avahi-0.8-ipv6_race_condition_fix-1.patch
Rett opp en sikkerhetssårbarhet i avahi-daemon:
sed -i '426a if (events & AVAHI_WATCH_HUP) { \
client_free(c); \
return; \
}' avahi-daemon/simple-protocol.c
Installer Avahi ved å kjøre
følgende kommandoer:
./configure \
--prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
--disable-libevent \
--disable-mono \
--disable-monodoc \
--disable-python \
--disable-qt3 \
--disable-qt4 \
--disable-qt5 \
--enable-core-docs \
--with-distro=none \
--with-systemdsystemunitdir=no \
--with-dbus-system-address='unix:path=/run/dbus/system_bus_socket' &&
make
Denne pakken kommer ikke med en testpakke.
Nå, som root
bruker:
make install
Parameterforklaringer
--disable-static
: Denne
bryteren forhindrer installasjon av statiske versjoner av
bibliotekene.
--disable-libevent
: Denne
parameteren deaktiverer bruken av libevent-2.1.12. Fjern
hvis du har den installert.
--disable-mono
: Denne
parameteren deaktiverer Mono
bindinger.
--disable-monodoc
: Denne
parameteren deaktiverer dokumentasjon for Mono bindinger.
--disable-python
: Denne
parameteren deaktiverer skript som er avhengig av Python. Det lar også en vanlig installasjon
fullføre.
--disable-qt3
: Denne
parameteren deaktiverer forsøk på å bygge de foreldede Qt3 deler av pakken.
--disable-qt4
: Denne
parameteren deaktiverer forsøk på å bygge de foreldede Qt4Core deler av pakken.
--enable-core-docs
: Denne
parameteren aktiverer bygging av dokumentasjonen.
--with-distro=none
: Det er
et foreldet oppstartsskript i distribusjonen for LFS. Dette
alternativet deaktiverer det.
--with-systemdsystemunitdir=no
: Uten
den nissen klarer ikke å starte i BLFS, som ikke støtter
systemd.
--with-dbus-system-address=
: Dette
alternativet forhindrer at pakken refererer til den utdaterte
/var/run
mappen.
--disable-dbus
: Denne parameteren
deaktiverer bruken av D-Bus.
--disable-gtk
: Denne parameteren
deaktiverer bruken av GTK+2.
--disable-gtk3
: Denne parameteren
deaktiverer bruken av GTK+3.
--disable-qt5
: Denne parameteren
deaktiverer bruken av Qt5, og
tillater bygging uten den.
--disable-libdaemon
: Denne parameteren
deaktiverer bruken av libdaemon.
Hvis du bruker dette alternativet, avahi-daemon vil ikke bli bygget.
--enable-tests
: Dette alternativet gjør
det mulig å bygge tester og eksempler.
--enable-compat-howl
: Dette
alternativet aktiverer kompatibilitetslag for HOWL.
--enable-compat-libdns_sd
: Dette
alternativet aktiverer kompatibilitetslag for libdns_sd.