Usando um local não padrão para serviços avahi

1

Eu quero usar o avahi em um sistema com rootfs somente leitura em que /etc não é gravável.

Eu posso iniciar avahi-daemon com a opção -f para especificar um local não padrão para o arquivo avahi-daemon.conf (o local padrão é /etc/avahi/avahi-daemon.conf ). No entanto, não consigo encontrar uma maneira de especificar um local não padrão para as definições de serviço (o local padrão é /etc/avahi/services ). Existe alguma opção para isso?

    
por Grodriguez 10.02.2015 / 10:49

2 respostas

0

Parece que o Avahi não fornece nenhuma opção de configuração para procurar definições de serviço em um local não padrão (além de reconstruir com um --prefix personalizado, mas isso obviamente tem outras implicações). No caso de alguém precisar disso, essas são as opções que encontrei:

  • Symlink / etc / avahi / services para um diretório diferente. Para que isso funcione, o daemon do avahi deve ser iniciado com a opção --no-chroot ; caso contrário, não poderá sair da prisão chroot.
  • Vincule a montagem de um diretório diferente em / etc / avahi / services. Isso não requer que --no-chroot seja usado.

Ambas as opções funcionam bem.

    
por 12.02.2015 / 18:20
-1

(Usando uma janela de resposta, pois tem mais opções de formatação)

Observe que as definições de serviço do Avahi permitem curingas. Isso pode ser adequado para permitir a mesma definição em vários hosts, permitindo assim o uso de somente leitura / etc:

<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
  <name replace-wildcards="yes">%h</name>
  <service>
    <type>_ssh._tcp</type>
    <port>22</port>
  </service>
</service-group>
    
por 11.02.2015 / 13:34