if-up.d 中的脚本超时

if-up.d 中的脚本超时

我遇到了一个非常奇怪的问题。我编写并放在 /etc/network/if-up.d/ 中的脚本在运行后不会退出。

我的脚本是:

#! /bin/bash
Dev="eth0"
echo "$IFACE" >> /debug
if [ "$IFACE" = "$Dev" ] || [ "$IFACE" = "--all" ]; then
    echo "run start" >> /debug
    bash /LANRoute
    echo "run end" >> /debug
fi
echo "end" >> /debug
exit 0

在启动时,此脚本总是超时(5 分钟以上)。但如果我在 bash 中手动运行 /LANRoute,则运行它会在 2 分钟内完成。即使我删除了 /LANRoute 文件,启动仍然停留在超时状态。

/debug文件的内容:

eth0
lo
run start
end
run end
end

看起来这个脚本运行了两次并且都顺利结束了。

如果我删除这个脚本,它就可以正常启动。是什么原因导致启动超时?

谢谢。

相关内容