答案1
rc.local
执行时可能网络还没准备好。
以下代码将在连接之前等待网络:
(
until ping -nq -c3 W.X.Y.Z; do
# Waiting for network
sleep 5
done
ssh -R 32400:192.168.0.100:32400 [email protected] -N
)&
W.X.Y.Z
是可访问并响应 ping 的 IP 地址。它可能是您网络的默认网关、Google DNS (8.8.8.8) 等。
括号内的代码在新的 shell 中运行,并&
使它在后台运行。它不会阻止 的执行rc.local
。
until
和之间的命令done
将会重复,直到ping
成功,即得到答复(即网络已启动)。