I've tested this locally on 64-bit with:
dracut -a syslog -f -v foo.img `uname -r`
And I see this in the output:
I: *** Sourcing module syslog
I: Installing /sbin/rsyslogd
I: Installing /lib64/rsyslog/lmnet.so
I: Installing /lib64/rsyslog/imklog.so
I: Installing /lib64/rsyslog/imuxsock.so
I: Installing /usr/share/dracut/modules.d/98syslog/parse-syslog-opts.sh
I: Installing /usr/share/dracut/modules.d/98syslog/syslog-genrules.sh
I: Installing /usr/share/dracut/modules.d/98syslog/syslog-cleanup.sh
I: Installing /usr/share/dracut/modules.d/98syslog/rsyslogd-start.sh
I: Installing /usr/share/dracut/modules.d/98syslog/rsyslogd-stop.sh
I: Installing /usr/share/dracut/modules.d/98syslog/rsyslog.conf
# ex: ts=8 sw=4 sts=4 et filetype=sh
if type -P rsyslogd >/dev/null; then
- installs="rsyslogd /lib/rsyslog/lmnet.so /lib/rsyslog/imklog.so /lib/rsyslog/imuxsock.so"
+ installs="rsyslogd"
+ for i in {"$libdir","$usrlibdir"}/rsyslog/lmnet.so \
+ {"$libdir","$usrlibdir"}/rsyslog/imklog.so \
+ {"$libdir","$usrlibdir"}/rsyslog/imuxsock.so ; do
+ [ -e "$i" ] && installs="$installs $i"
+ done
elif type -P syslogd >/dev/null; then
installs="syslogd"
elif type -P syslog-ng >/dev/null; then