Kubuntu 19.04にアップグレードした後、DNSサービスの初期化後に開始できるようにサービスを作成する方法がわかりません。
これまでは、After=network.target
、しかし今はそれは機能しません。私も試しましたAfter=network-online.target
、しかし運がありません。
だから問題はsystemd-resolved
、どうすればこの問題を解決できますか?
更新:
ERROR: getaddrinfo: Temporary failure in name resolution
ERROR: failed to resolve the provided hostname
これらは2つの関連ログです。したがって、問題がDNSサービスに関連していることを確認できます。
サービスファイルに依存関係を追加してください:
After=nss-lookup.target
これにより、ホスト/名前のルックアップが機能するようになります。
詳細はドキュメントにあります: https://www.freedesktop.org/software/systemd/man/systemd.special.html
nss-lookup.target
すべてのホスト/ネットワークネームサービスルックアップの同期ポイントとして使用する必要があるターゲット。これは、nss-user-lookup.targetを使用する必要があるUNIXユーザー/グループ名のルックアップとは無関係であることに注意してください。完全なホスト/ネットワーク名前解決の可用性が不可欠であるすべてのサービスは、このターゲットの後に注文する必要がありますが、それを引き込まないでください。systemdは、このターゲットユニットのタイプAfter =の依存関係を、LSBを持つすべてのSysV initスクリプトサービスユニットに自動的に追加します。 「$ named」機能を参照するヘッダー。
ネットワークを完全に待機するために、systemd https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/ のドキュメントで、サービスに追加するように指示されています。
After=network-online.target
Wants=network-online.target
関連する「待機」サービスが有効になっていることを確認するには:
$ systemctl is-enabled NetworkManager-wait-online.service systemd-networkd-wait-online.service
disabled
enabled