systemd-timesyncd
私は数年間それを私のシステムタイマーとして使用してきました。私はDebianを使用しています誘導体と言うラズベリーパイ私のラズベリーパイの場合。 SNTPクライアントには非常に満足していますが、スタンドアロンアプリケーションで試しsystemd-timesyncd
てみたいです。chronyd
次のコマンドを使用して設定を一覧表示できますsystemd-timesyncd
。
$ systemctl cat systemd-timesyncd
存在するバスターsystemd-timesyncd
、このリストには、他のタイミングサービス(NTPデーモン)がインストールされていることが判明した場合に「自己許す」ことができるコードが含まれています。
# /lib/systemd/system/systemd-timesyncd.service.d/disable-with-time-daemon.conf
[Unit]
# don't run timesyncd if we have another NTP daemon installed
ConditionFileIsExecutable=!/usr/sbin/ntpd
ConditionFileIsExecutable=!/usr/sbin/openntpd
ConditionFileIsExecutable=!/usr/sbin/chronyd
ConditionFileIsExecutable=!/usr/sbin/VBoxService
存在するある点でリリース後バスター(同時公開雄牛の目??)、上記のスキームが修正されました。このコマンドには、他のタイマーが見つかった場合にsystemctl cat systemd-timesyncd
開始を制限または禁止する参照は含まれません。systemd-timesyncd
この変化の歴史を覚えている人はいますか?さらに重要なことに、systemd-timesyncd
他のタイミングデーモンがインストールされていることが見つかった場合、そのデーモンの起動は抑制され続けますか?どこで/どのように行われますか?
答え1
サービスsystemd-timesyncd
自体はもはや競合を確認しません。代わりに、競合はsystemd-timesyncd
独自のパッケージ内で処理されます。他のタイミングサービスパッケージとの競合:今、2つのタイムサーバーを持つことは不可能です。インストール済み(Debian パッケージを使用).
systemd-timesyncd
詳しくは、パッケージにアイテムがあるのがうまくいく方法ですConflicts: time-daemon
。time-daemon
all time daemonsが提供する仮想パッケージです。、すべてがクラッシュするので、一度に一度だけデーモンをインストールできます(パッケージは自己競合できないため、明らかな自己競合は問題になりません)。これは、特定の機能を提供するコレクションの単一パッケージを使用できるようにする Debian の標準的なメカニズムです。systemd
これらのパッケージの競合はパッケージ自体では定義できないため、パッケージの分割が重要です。
これは手動でインストールされたタイムサーバーを処理しないため、より脆弱に見える可能性があります。ただし、これらの項目はとにかく入力してはいけないため、/usr/sbin
以前のソリューションではこれを処理できませんでした。さらに、時間デーモンを自動的に有効および無効にすることは信頼できないことが判明しました。当時、問題を解決することは不可能に見えました。。