在 BusyBox 中覆盖 ifup 使用的 udchcp 标志

Mat*_*nga 4 udhcpc busybox

我正在开发一个我没有为其创建 BusyBox 构建的系统。我不想重新编译 BusyBox,因为担心我的配置与原始配置不完全匹配,除此之外,系统在此版本上运行良好。如果我知道一种方法可以像运行内核一样提取正在运行的 BusyBox 安装的配置,我可能会动摇这样做。

我想弄清楚如何禁用用于udhcpcifup命令调用的开关。我可以看到编译到我正在使用的构建中的默认值。他们是-R -n -p。我想让这个过程分叉到后台,我认为使用udhcpc_opts -bin/etc/networking/interfaces可以解决这个问题。我将叉子移到后台,然后进程终止。如果我只是打电话udhcpc -b无限期地将其分叉到后台。

有没有办法-n通过我可以放入的东西来覆盖开关udhcpc_opts?谢谢你。

小智 7

遇到同样的问题,不想重新编译busybox并想使用这些标志:“-t 0 -b”让udhcpc在后台永远尝试,但无法避免ifup默认传递的标志“-n”。

作为一个超级黑客(但它对我有用),我在 /etc/network/interfaces 中为 udhcpc_opts 使用了以下选项:

udhcpc_opts -t 0 -T 10 -A 20 -S &
Run Code Online (Sandbox Code Playgroud)

最后的“&”起到了作用,因为它将 udhcpc 作为后台任务启动,并且几乎与“-b”标志相同,但如果在命令行中指定了“-n”,它也可以工作。

请注意,必须将其添加到iface选项中才能工作,例如:

iface eth0 inet dhcp
    udhcpc_opts -t 0 -T 10 -A 20 -S &
Run Code Online (Sandbox Code Playgroud)