feedback.service
起動時にコンピュータをリモートマシン(イーサネットで直接接続)にtelnet接続したい。/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
フィードバック:
#!/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 更新=============================
root@host# systemctl list-dependencies network-online.target
network-online.target
● └─networking.service