[systemd-devel] Is it possible to load unit files from paths other than default paths ?
Andrei Borzenkov
arvidjaar at gmail.com
Thu Sep 22 06:56:39 UTC 2016
On Thu, Sep 22, 2016 at 9:18 AM, Raghavendra. H. R <raghuhr84 at gmail.com> wrote:
> Thank you for the suggestions.
> But with this suggestion i.e., generator file, I again need to add/modify
> some files.
>
You need to add/modify some files to implement your service anyway. I
do not see how one more file is a problem so far.
> All I'm looking into is I mount my binaries and unit files under /mnt. By
> setting any environment variable like SYSTEMD_UNIT_PATH, systemd should pick
> the unit files from /mnt and execute my binaries as per the instructions
> given in unit file.
>
Which is exactly what it does. You just need to set variable in
environment of systemd.
> In normal init.d systems, we have environment variables like PATH &
> LD_LIBRARY_PATH.
> No matter where I place my new executable or library, adding new path into
> these environment variables is enough to execute or link the library.
>
> Probably this kind of facility is not available in Systemd init systems.
>
> --
> Regards,
>
> Raghavendra. H. R
> (Raghu)
>
> On Wed, Sep 21, 2016 at 10:40 PM, Andrei Borzenkov <arvidjaar at gmail.com>
> wrote:
>>
>> 21.09.2016 14:26, Raghavendra. H. R пишет:
>> > Hi,
>> >
>> > I'm newbie with systemd boot system and I need help in resolving one
>> > issue.
>> >
>> > I would like to create a service under a customized path Eg:/mnt and
>> > systemd should be able to pick my unit file from this.
>> >
>> > I tried by setting *Environment=SYSTEMD_UNIT_PATH=/mnt *from the
>> > console
>>
>> This should be set in environment of srarted systemd, which in case of
>> systemwide init effectively means either you need to use some wrapper to
>> set it and exec systemd or hack initrd.
>>
>> Also SYSTEMD_UNIT_PATH does not really play nicely with priorities of
>> unit locations (run-time vs. sysadmin vs. shipped).
>>
>> May be it is simpler to install generator that copies your unit
>> definition in standard location. This guarantees it is available before
>> systemd starts.
>
>
More information about the systemd-devel
mailing list