RPMのインストール後に自動的にサービスを有効にする

RPMのインストール後に自動的にサービスを有効にする

オペレーティングシステム – Red Hat Enterprise Linux 8

.spec私のアプリケーションをビルドしてパッケージ化するためのファイルを作成しました。鉱山には、rpmそれを開始するために必要なファイルも含まれていますmy_app.servicesystemdただし、この機能はデフォルトで有効になっている必要がありますsystemctl enable my_app.servicerpmインストール後に有効にしたいです。 Googleで利用できるものを見つけました。systemd.default、内容は次のとおりです。

実装単位の対応するパッケージに事前設定されたファイルを提供することはお勧めできませんが、管理者ポリシーで変更できる展開または循環基本ポリシーにファイルを一元化することをお勧めします。

.presetこれは私のrpmにファイルを追加しないでください。さらに、ページの最後には次のようにman書かれています。

プリセットファイルがない場合、systemctlプリセットはデフォルトでインストールされているすべてのデバイスを有効にします。

正しく読み込んだ場合は、アプリのサービスファイルを自動的に有効にする必要がありますが、有効にはなりません。それとも手動を意味しますかsystemctl preset

ベストアンサー1

これは、rpmに.presetファイルを追加しないでください。

はい、.presetファイルをサービスのRPMパッケージに入れないでください。

しかし、そのようなことは起こりませんでした。

systemdRHELのパッケージにはデフォルトのプリセットが付属しているため、これは発生しません/usr/lib/systemd/system-preset/90-systemd.preset

流通包装の指示に従うには、次の2つのオプションがあります。

  • アプリケーションサービスをデフォルトのプリセットに含めるには、オペレーティングシステムパッケージプロバイダに連絡してください。
  • さらに実現可能な方法は、独自の配送プリセットパッケージを作成することです。通常、独自のリポジトリの「リリース」パッケージにプリセットを配置します。 1つの例は、別のものをインストールepel-releaseすることです。/usr/lib/systemd/system-preset/90-epel.preset

おすすめ記事