diff --git a/modules.d/95cifs/module-setup.sh b/modules.d/95cifs/module-setup.sh index 4d0f8c57..6abc4752 100755 --- a/modules.d/95cifs/module-setup.sh +++ b/modules.d/95cifs/module-setup.sh @@ -36,12 +36,16 @@ installkernel() { install() { local _nsslibs inst_multiple -o mount.cifs - inst_multiple /etc/services /etc/nsswitch.conf /etc/protocols + inst_multiple -o /etc/services /etc/nsswitch.conf /etc/protocols + inst_multiple -o /usr/etc/services /usr/etc/nsswitch.conf /usr/etc/protocols inst_libdir_file 'libcap-ng.so*' - _nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' "$dracutsysrootdir"/etc/nsswitch.conf \ - | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|') + _nsslibs=$( + cat "$dracutsysrootdir"/{,usr/}etc/nsswitch.conf 2> /dev/null \ + | sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' \ + | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|' + ) _nsslibs=${_nsslibs#|} _nsslibs=${_nsslibs%|} diff --git a/modules.d/95nfs/module-setup.sh b/modules.d/95nfs/module-setup.sh index bc8bee6d..38da5957 100755 --- a/modules.d/95nfs/module-setup.sh +++ b/modules.d/95nfs/module-setup.sh @@ -77,7 +77,9 @@ cmdline() { install() { local _nsslibs inst_multiple -o rpc.idmapd mount.nfs mount.nfs4 umount sed /etc/netconfig chmod "$tmpfilesdir/rpcbind.conf" - inst_multiple /etc/services /etc/nsswitch.conf /etc/rpc /etc/protocols /etc/idmapd.conf + inst_multiple -o /etc/idmapd.conf + inst_multiple -o /etc/services /etc/nsswitch.conf /etc/rpc /etc/protocols + inst_multiple -o /usr/etc/services /usr/etc/nsswitch.conf /usr/etc/rpc /usr/etc/protocols if [[ $hostonly_cmdline == "yes" ]]; then local _netconf @@ -94,8 +96,11 @@ install() { inst_libdir_file 'libnfsidmap_nsswitch.so*' 'libnfsidmap/*.so' 'libnfsidmap*.so*' - _nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' "$dracutsysrootdir"/etc/nsswitch.conf \ - | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|') + _nsslibs=$( + cat "$dracutsysrootdir"/{,usr/}etc/nsswitch.conf 2> /dev/null \ + | sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' \ + | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|' + ) _nsslibs=${_nsslibs#|} _nsslibs=${_nsslibs%|} diff --git a/modules.d/95ssh-client/module-setup.sh b/modules.d/95ssh-client/module-setup.sh index 2a75446f..75fc94f3 100755 --- a/modules.d/95ssh-client/module-setup.sh +++ b/modules.d/95ssh-client/module-setup.sh @@ -69,8 +69,8 @@ install() { inst_sshenv _nsslibs=$( - sed -e 's/#.*//; s/^[^:]*://; s/\[[^]]*\]//' \ - "$dracutsysrootdir"/etc/nsswitch.conf \ + cat "$dracutsysrootdir"/{,usr/}etc/nsswitch.conf 2> /dev/null \ + | sed -e 's/#.*//; s/^[^:]*://; s/\[[^]]*\]//' \ | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|' ) _nsslibs=${_nsslibs#|}