Webサーバーを実行するためにCentOS8(8.1.1911)最小インストールを実行しています。
一部のサービス/etc/systemd/system/multi-user.target.wants/
(例:
httpd.service
mariadb.service
named.service
squid.service
sshd.service
postfix.service
ありAfter=network.target
、何もありませんnetwork-online.target
。
これは、システムの起動時にネットワークが準備される前にこれらのサービスが開始され、リッスンポートにバインドできないために問題になります。幸いなことに、カップルはsshd
接続を再試行し続けるのが好きで、ネットワークがオンラインになると成功します。最後に、成功する前に失敗した/var/log/messages
バインディングの試みを見ることができます。ただし、すべてのサービスが最初の失敗後に再試行され、中断されたままになるわけではありません。
1つの解決策は、ie runを使用して各サービスにカスタムパラメータを追加することですWants
。After
systemctl
systemctl edit httpd
そして追加してください
[Unit]
Wants=network-online.target
After=network-online.target
これは機能し、サービスはネットワークがオンラインになり、再起動時に正常にバインドおよび開始されるのを待ちます。
今私の質問です。
追加したい各サービスを手動で編集したくありません。network-online.target
これにより、メンテナンスの問題が発生し、将来インストールされる新しいサービスでこの手順を忘れる可能性があるためです。私が望むのは、ポリシーを設定したりシステム全体で変更を加えたりする方法Wants
です。After
network.target
network-online.target
NetworkManager
まだ待たなければならないのに問題が発生するのでしょうかnetwork.target
?NetworkManager
代わりに別のものを待ってもらえますか?network.target
すべて待つと中断される可能性がある他のサービスはありますかnetwork-online.target
?- 他の創造的な解決策はありますか?