urasue
2020年12月17日 18時11分
お世話になっております。
浦末です。
システム起動時、LTEが接続できた後にサービスを実行するようにしたいです。
下記の記事を参考に、試してみましたが、有線LANが繋がっている時は
うまくいきませんでした。
有線LANが繋がっていても、LTE接続を待機できる方法は無いでしょうか?
■SystemdのUnitファイルを作成し、起動順序を持たせて自作のプログラムを起動させる方法
https://armadillo.atmark-techno.com/forum/armadillo/3345
サービスの設定は、下記の通りです。
/etc/systemd/system/hogehoge.service
[Unit] Description = parking system daemon After = systemd-networkd-wait-online.service [Service] ExecStart = /root/hoge.sh Restart = no Type = simple [Install] WantedBy = multi-user.target
デフォルトゲートウェイは、LTEのppp0としています。
有線LAN側は、デフォルトゲートウェイを無効にしております。
コメント
urasue
at_syunya.ohshio
2020年12月21日 10時55分
大塩です。
> システム起動時、LTEが接続できた後にサービスを実行するようにしたいです。
> 下記の記事を参考に、試してみましたが、有線LANが繋がっている時は
> うまくいきませんでした。
>
> 有線LANが繋がっていても、LTE接続を待機できる方法は無いでしょうか?
/etc/network/if-up.d/ を使用する方法はどうでしょうか。
/etc/network/if-up.d/ は、インターフェース起動時に直下のスクリプトを自動実行する機能があります。
ここに3G/LTE接続時にのみ動作するスクリプトを設置することで、実現可能かと思います。
スクリプト名は任意で問題ありません。
以下、設置するスクリプトのサンプルコードです。
以上です。