What causes an installation of an rpm of a service to be in an enabled state (for systemd) ?

Panu Matilainen pmatilai at laiskiainen.org
Fri Mar 28 12:34:05 UTC 2014


On 03/28/2014 02:09 PM, Kevin Wilson wrote:
> Hello,
>
> I am trying to find what causes an installation of a Fedora rpm of some
> service to
> be in the "enabled" status for systemd (or "disabled" or "static").
>
> More specifically:
> Let's take a look in bluez-5.16-1.fc20.x86_64.rpm. When installing it,
> I have F20 where the bluez rpm is not installed:
>
> rpm -q bluez
> shows:
> package bluez is not installed
> and
> ls -al   /etc/systemd/system/bluetooth.target.wants
> shows:
> ls: cannot access /etc/systemd/system/bluetooth.target.wants: No such file
> or directory
>
> Now, I run
> yum -y install bluez
> And after it:
>
> systemctl is-enabled bluetooth
> enabled
>
> ls -l   /etc/systemd/system/bluetooth.target.wants
> total 0
> lrwxrwxrwx 1 root root 41 Mar 28 15:03 bluetooth.service ->
> /usr/lib/systemd/system/bluetooth.service
>
> rpm -qf  /etc/systemd/system/bluetooth.target.wants
> file /etc/systemd/system/bluetooth.target.wants is not owned by any package
>
>
> I tried to look inside the rpm what causes installation of the symlink
> under
> /etc/systemd/system/bluetooth.target.wants, and could not find.
>
> Any ideas?

That is more of a systemd than rpm one - look at the scripts in that 
package:

[pmatilai at localhost ~]$ rpm -q --scripts bluez|head -6
postinstall scriptlet (using /bin/sh):

if [ $1 -eq 1 ] ; then
         # Initial installation
         /usr/bin/systemctl preset bluetooth.service >/dev/null 2>&1 || :
fi

That's what enables it, if the preset is set that way:
http://freedesktop.org/wiki/Software/systemd/Preset/

	- Panu -


More information about the Rpm-list mailing list