When using systemd I'm unable to get parameters parsed to lldpd. When settings various options in /etc/conf.d/lldpd. I tried setting -ccc in order to be able to use the CDP protocol, but this gets ignored by systemd. When using OpenRC it should work, because command_args="${LLDPD_OPTS}" is set in /etc/init.d/lldpd, but when using systemd, the system just simply loads the defaults. The service file is as below: [Service] Type=oneshot RemainAfterExit=yes ExecStart=/usr/sbin/lldpd Reproducible: Always Steps to Reproduce: 1. Set parameters for lldpd in /etc/conf.d/lldpd on a system running systemd 2. Start lldpd using systemd 3. No parameters are given Actual Results: No parameters are parsed Expected Results: The parameters set being parsed.
Using /etc/conf.d to control the behavior of systemd services is prohibited on Gentoo. https://wiki.gentoo.org/wiki/Project:Systemd/Ebuild_policy#Unit_file_guidelines If you want to pass different parameters to the service, use "systemctl edit" and override the ExecStart setting. For example: systemctl edit lldpd.service [Service] # Clear the existing ExecStart setting ExecStart= # Set the new value ExecStart=/usr/sbin/lldpd -ccc Alternatively, you can just copy lldpd.service from /lib/systemd/system to /etc/systemd/system, and edit the file directly.