Skip to content

rngd.service fails on ArchLinux due to config file not being installed #2542

Description

@ChrisTX

ArchLinux in their rngd.service uses EnvironmentFile=/etc/conf.d/rngd, see here.
The file is not declared as optional (- prefix), and thus if it's not present, the service will fail to start, see the systemd docs.

However, dracut's 16rngd module in its module-setup.sh does not consider including this file, as it only considers /etc/sysconfig that is used by Fedora and co.

Thus, if rng-tools is installed on Arch, Dracut will include it by default, and will therefore cause rngd.service to consistently fail in initrd. This is automatic if that package is just installed.

Affected: 111 or master

Steps to reproduce:

  1. On Arch install dracut and rng-tools.
  2. Use dracut to generate initramfs.
  3. Startup will cause rngd.service failure.

Fix:
Works fine with install_items+=" /etc/conf.d/rngd " set as configuration. I would suggest adding a simple check if that file exists to modules-setup.sh and copy it over if so.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugOur bugs

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions