发布网友 发布时间:2022-04-22 21:37
共1个回答
热心网友 时间:2022-04-26 13:08
avahi-daemon是一种Linux操作系统上运行在客户机上实施查找基于网络的Zeroconf service的服务守护进程。 该服务可以为Zeroconf网络实现DNS服务发现及DNS组播规范。 用户程序通过Linux D-Bus信息传递接收发现到网络服务和资源的通知。 该守护进程配合缓存用户程序的答复,以帮助减少因答复而产生的网络流量。
目前工作中使用到的目的是为了在手机端使用类似ZeroConf 软件,能在http服务中找到运行中的设备以及显示相关的信息,便于工作人员的维护。
记录工作遇到的问题
在文件系统添加了dbus、avahi 相关的配置
启动时,avahi-daemon无法正常启动,使用指令avahi-daemon时,启动失败,错误原因:dbus连接未成功,解决如下:
在/etc/init.d/目录下,找到dbus,使用指令 dbus start, 开启dbus服务
重新使用avahi-daemon指令开启服务,启动失败,错误原因:没有权限
根据错误提示,执行指令 chmod 771 /...(错误提示无权限目录)
再次执行avahi-daemon指令,启动失败,错误原因:socket 没有权限
这个错误是由linux内核中的部分配置引起的, ANDROID_PARANOID_NETWORK, android paranoid网络,对linux内核网络部分的改动,通过这个改动增加了网络的认证机制。从而导致avahi-daemon无法正常启动。修改linux内核中的相关配置。
将该网络的相关配置关闭后,avahi-daemon服务启动成功
avahi-daemon服务启动,但是缺少http服务,只有ssh与FTP服务。解决方法,添加http.service服务,在/etc/avahi/services目录下。添加服务后有可能会出现无法打开你添加的服务文件,可以使用chmod 4 (你添加的文件)。因为avahi-daemon需要有root的权限执行。