rc.localが電話の起動とネットワークルーティングの変更を追加するのに最適な場所ですか?

rc.localが電話の起動とネットワークルーティングの変更を追加するのに最適な場所ですか?

私はフォローしましたこのガイド私のパイにインターネット接続が全くない4G帽子を手に入れたので、すべてが大丈夫です。ponバックグラウンドで開始され、パスが追加されたらpingを送信できます。

私が望むのは、パイを操作してパスを追加するponことです。

私は現在fileでこれをやっていますが、rc.local非常に汚れたアプローチだと確信しています。

sleep 20
sudo pon &
sleep 20
sudo route add -net "0.0.0.0" ppp0

exit 0

ppp0最終的にPythonを実行する前に、新しく定義されたパスでネットワークが正しく機能していることを確認したいと思います。

私は見たことがないこの同様の質問しかし、正しい方法はわかりません。pre-up.dインターフェイスを変更して実行できますか?

どんな助けでも大変感謝します。

ベストアンサー1

起動時にsystemdを介して実行されるスクリプトを作成できます。

まず、コマンドのスクリプトを作成します。実行権限があることを確認してください。

次に、次の部分を含み、次に/etc/systemd/system終わるファイル名を使用してサービスファイルを作成します。.service

[Unit]
Description=Description of script/service

[Service]
ExecStart=/bin/bash [path to script]

[Install]
WantedBy=multi-user.target

その後、systemctlデーモンを再ロードします。

systemctl daemon-reload

最後に、次のファイル名としてsystemctlインストールスクリプトを使用しますservicename

systemctl enable --now [servicename]

関連:

おすすめ記事