Bug 1217341

Summary: Enabling service freshclam gives warning
Product: [openSUSE] openSUSE Tumbleweed Reporter: Freek de Kruijf <freek>
Component: OtherAssignee: Reinhard Max <max>
Status: RESOLVED INVALID QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Freek de Kruijf 2023-11-20 15:29:20 UTC
When enabling freshclam.service the following warning is displayed:

The unit files have no installation config (WantedBy=, RequiredBy=, UpheldBy=,
Also=, or Alias= settings in the [Install] section, and DefaultInstance= for
template units). This means they are not meant to be enabled or disabled using systemctl.
 
Possible reasons for having this kind of units are:
* A unit may be statically enabled by being symlinked from another unit's
  .wants/ or .requires/ directory.
* A unit's purpose may be to act as a helper for some other unit which has
  a requirement dependency on it.
* A unit may be started when needed via activation (socket, path, timer,
  D-Bus, udev, scripted systemctl call, ...).
* In case of template units, the unit is meant to be enabled with some
  instance name specified.

When looking is /usr/lib/systemd/system/freshclam.service the following is missing (copied from :/usr/lib/systemd/system/clamd.service)

[Install]
WantedBy=multi-user.target
Comment 1 Reinhard Max 2023-11-29 08:59:31 UTC
We converted freshclam from a service that sits in the background doing nothing most of the time to a systemd timer that gets triggered at regular interval and gets started only then.

Due to this change the service cannot be enabled anymore and the timer has to be enabled instead:

# systemctl enable freshclam.timer
Created symlink /etc/systemd/system/timers.target.wants/freshclam.timer → /usr/lib/systemd/system/freshclam.timer.

You can still manually start the service, but that will only trigger a single run of freshclam with no repetitions.

BTW, this is the respective change log entry:

-------------------------------------------------------------------
Tue Feb  9 16:00:25 UTC 2021 - Arjen de Korte <suse+build@de-korte.org>

- Don't daemonize freshclam, but use a systemd timer instead to
  trigger updates
  + timer.freshclam
  % service.freshclam
  % clamav-conf.patch