システム単位のファイルディレクトリに$ HOMEなどのLinuxグローバル変数はありますか?

システム単位のファイルディレクトリに$ HOMEなどのLinuxグローバル変数はありますか?

systemdデバイスを設定する必要があるbashスクリプトベースのインストーラを作成しています。/etc/systemd/systemまたは、同じ一般的なシステム単位ファイルの場所をハードコードできますが、/usr/lib/systemd/system新しい単位ファイルとサービスを追加するためにシステムが好む場所を検出できるスクリプトが必要です。

既存のサービス単位ファイルを使用して検索してこれを実行できますが、呼び出すことがfindできる既存のグローバル変数がすでに存在する場合(たとえば、複雑すぎないようにしたい)。$HOME

答え1

私が知る限り、すべてのシステムは同じです。マンページは多くの洞察を提供します。 https://www.freedesktop.org/software/systemd/man/systemd.unit.html

System Unit Search Path

/etc/systemd/system.control/*
/run/systemd/system.control/*
/run/systemd/transient/*
/run/systemd/generator.early/*
/etc/systemd/system/*
/etc/systemd/system.attached/*
/run/systemd/system/*
/run/systemd/system.attached/*
/run/systemd/generator/*
/usr/lib/systemd/system/*
/run/systemd/generator.late/*

サービス単位ファイルを作成する場合は、/etc/systemd/system「管理者生成システム単位」という説明を使用してファイルをインストールする必要があります。

コードには、これらのパスのほとんどが変更されたように見えず、ハード/etc/systemd/systemコーディングされているように見えるようにするいくつかの場所があります。

関連情報