我面临着获取链路本地地址(Ipv4ll)的问题。为了实现这一点,我遵循以下程序。
首先,设置适当的路由来使用链路本地寻址。
$ route add default dev eth0 metric 99
$ route add -net 169.254.0.0 netmask 255.255.0.0 dev eth0 metric 99这些路线是正确设置的。这里没有问题。
然后,我使用avahi-autoipd查找有效的链接本地地址,如下所示
$ avahi-autoipd --daemonize --syslog --wait eth0这就产生了错误-
无法从守护进程接收返回值.
我试图在嵌入式linux平台上执行这些命令。我通过连接两个嵌入式linux平台建立了一个本地网络。
知道为什么会发生这种事吗?
发布于 2015-01-16 06:25:20
我有办法解决这个问题。需要在/var/lib中添加一个新用户"avahi-autoipd“,如下所示。
$ adduser avahi-autoipd -h /var/lib/avahi-autoipd
现在办理入住手续
$ cat /etc/passwd
您将在上面的命令中找到一个具有主目录路径设置的新用户。
然后,
$ avahi-autoipd eth0 &
现在重新启动,
$ reboot
请执行“ps”以查看所有进程
你会找到这样的东西
750 avahi-au 1860 S avahi-autoipd: eth0界169.254.11.49
751根1780 S avahi-autoipd: eth0标注分配器
我希望任何人都会发现它有用。
发布于 2018-03-07 19:11:26
也犯了同样的错误。
使用我的命令运行strace:strace avahi-autoipd eth0
并看到:
chown32("/var/lib/avahi-autoipd", 1000, 1000) = -1 ENOENT # (No such file or directory)
stat64("/var/lib/avahi-autoipd", 0x3ed58c28) = -1 ENOENT # (No such file or directory) 最后只是为/var/lib/avahi-autoipd重新构建文件夹,之后一切都正常工作。
https://stackoverflow.com/questions/27961229
复制相似问题