Linux OS Service ‘avahi-daemon’

The avahi-daemon Linux service runs on client machines to perform network-based Zeroconf service discovery. Avahi is an implementation of the DNS Service Discovery and Multicast DNS specifications for Zeroconf Networking. User applications receive notice of discovered network services and resources using the Linux D-Bus message passing. The daemon coordinates application efforts in caching replies, helping minimize network traffic.

Avahi provides a set of language bindings, including Python and Mono. Because of its modularized architecture, Avahi is already integrated into major desktop components like GNOME’s Virtual File System or KDE’s input/output architecture. Refer http://avahi.org/ for further specifications.

The avahi RPM package provides the /usr/sbin/avahi-daemon daemon and its configuration files.

Service Control

To manage the avahi-daemon service on demand, use the service(8) tool or run the /etc/init.d/avahi-daemon script directly:

# service avahi-daemon 
Usage: /etc/init.d/avahi-daemon {start|stop|status|restart|condrestart}
# /etc/init.d/avahi-daemon 
Usage: /etc/init.d/avahi-daemon {start|stop|status|restart|condrestart}

The available commands are:

Command Description
start Start the avahi-daemon daemon.
stop Stop the avahi-daemon daemon.
status Report if the avahi-daemon daemon is running.
restart Equivalent to a stop and then a start command sequence.
condrestart If the avahi-daemon daemon is currently running, this is the same as a restart command. If the daemon is not running, no action is taken. Often used in RPM package installation to avoid starting a service not already running.

To manage the avahi-daemon service at boot time, use chkconfig command:

# chkconfig --list avahi-daemon
avahi-daemon 0:off 1:off 2:off 3:off 4:off 5:off 6:off
# chkconfig avahi-daemon on
# chkconfig --list avahi-daemon
avahi-daemon 0:off 1:off 2:on 3:on 4:on 5:on 6:off

Configuration

Below is the sample configuration file /etc/avahi/avahi-daemon.conf:

# cat /etc/avahi/avahi-daemon.conf
# $Id: avahi-daemon.conf 1155 2006-02-22 22:54:56Z lennart $
#
# This file is part of avahi.
#
# avahi is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 2 of the
# License, or (at your option) any later version.
#
# avahi is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
# License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with avahi; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.

# See avahi-daemon.conf(5) for more information on this configuration
# file!

[server]
#host-name=foo
#domain-name=local
browse-domains=0pointer.de, zeroconf.org
use-ipv4=yes
use-ipv6=yes
#check-response-ttl=no
#use-iff-running=no
#enable-dbus=yes
#disallow-other-stacks=no
#allow-point-to-point=no

[wide-area]
enable-wide-area=yes

[publish]
#disable-publishing=no
#disable-user-service-publishing=no
#add-service-cookie=yes
#publish-addresses=yes
#publish-hinfo=yes
#publish-workstation=yes
#publish-domain=yes
#publish-dns-servers=192.168.50.1, 192.168.50.2
#publish-resolv-conf-dns-servers=yes

[reflector]
#enable-reflector=no
#reflect-ipv=no

[rlimits]
#rlimit-as=
rlimit-core=0
rlimit-data=4194304
rlimit-fsize=0
rlimit-nofile=30
rlimit-stack=4194304
rlimit-nproc=3
Related Post