ネットワーク構成が格納されているマウントをセットアップする必要がある新しいサービス(Debian Jessieの下)をセットアップしようとしているため、networking.serviceが開始する前にこのサービスを完了する必要があります。
私は次を試しました:
[Unit]
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
#Before=network-pre.target
Before=networking.service
[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
RequiredBy=networking.service
を使用systemd-analyze plot
すると、サービスが開始されていることがわかりますが、networking.service
約3秒早く開始されます。
どうやら私の設定は間違っていますが、問題を見つけるのに苦労しています...どんな助けも大歓迎です。
更新
私は現在、local-fs.target
代わりにサービス設定を前に開始するように変更することで解決しましたnetworking.service
:
[Unit]
DefaultDependencies=no
Description=mount/repair remaining filesystems (all persistent fs beyond "/")
Before=local-fs.target
[Service]
Type=oneshot
ExecStart=/opt/intermodul-mounts/start.sh
TimeoutSec=0
RemainAfterExit=yes
[Install]
RequiredBy=local-fs.target
それでも、なぜ私の最初の構成が期待どおりに機能しなかったのか理解したいのですが...?
/etc/network/interfaces
にあるip-up
スクリプトへの参照があります。そのパーティションは、複雑なスクリプトで実装されている必要がありますネットワークが設定される前に実行されます。現在、スクリプトは起動時にアクセスできないため、効果的に開始されません。その後実行すると、すべてのインターフェースが正しく表示されます。/opt/intermodul-mounts/start.sh
ip-up
service networking restart