我希望我的電腦在啟動時遠端登入遠端電腦(直接與乙太網路連接)。我feedback.service
在下面添加/etc/systemd/system/
[Unit]
Description=Feedback relay daemon
Wants=network-online.target network.target
After=network-online.target network.target
[Service]
Type=oneshot
WorkingDirectory=/usr/local/
ExecStart=/usr/local/bin/feedback.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
回饋.sh:
#!/bin/bash
telnet 192.180.0.60 9000
exit 0
我使用該選項After=network-online.target
來確保該腳本在網路配置完成後運行。但是重啟後systemctl status feedback
仍然顯示No route to host
錯誤。看來feedback.sh
啟動時路由表沒有設定好。
我已經檢查了遠端主機是否已啟動並且網路是否可以存取。ping
重新啟動完成後我可以遠端主機。我嘗試sleep 10
在腳本頂部添加,然後效果很好。
#!/bin/bash
sleep 10
telnet 192.180.0.60 9000
exit 0
但這只是一個解決方法。我需要一個真正的解決方案。
====================2019/08/22 更新========================2019/08/22 更新======================== == ====
root@host# systemctl list-dependencies network-online.target
network-online.target
● └─networking.service