Hello community, here is the log from the commit of package dracut-sshd for openSUSE:Factory checked in at 2020-11-03 15:16:05 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dracut-sshd (Old) and /work/SRC/openSUSE:Factory/.dracut-sshd.new.3463 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dracut-sshd" Tue Nov 3 15:16:05 2020 rev:2 rq:845447 version:0.6.1 Changes: -------- --- /work/SRC/openSUSE:Factory/dracut-sshd/dracut-sshd.changes 2020-06-03 20:33:03.073272051 +0200 +++ /work/SRC/openSUSE:Factory/.dracut-sshd.new.3463/dracut-sshd.changes 2020-11-03 15:16:27.676034015 +0100 @@ -1,0 +2,7 @@ +Mon Nov 2 14:00:13 UTC 2020 - Daniel Molkentin <daniel.molken...@suse.com> + +- Update to upstream version 0.6.1-2 (jsc#SLE-12273) +- Add patch to provide hints after logging in via SSH for + Adds 0001-Give-users-better-hints-after-logging-in.patch + +------------------------------------------------------------------- Old: ---- dracut-sshd-0.5.1-2.tar.gz New: ---- 0001-Give-users-better-hints-after-logging-in.patch dracut-sshd-0.6.1-2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dracut-sshd.spec ++++++ --- /var/tmp/diff_new_pack.SmgZzo/_old 2020-11-03 15:16:28.504034812 +0100 +++ /var/tmp/diff_new_pack.SmgZzo/_new 2020-11-03 15:16:28.504034812 +0100 @@ -18,13 +18,14 @@ %define pkg_rel -2 Name: dracut-sshd -Version: 0.5.1 +Version: 0.6.1 Release: 0 Summary: Provide SSH access to initramfs early user space License: GPL-3.0-or-later Group: System/Boot URL: https://github.com/gsauthof/dracut-sshd -Source: https://github.com/gsauthof/dracut-sshd/archive/%{name}-%{version}%{pkg_rel}.tar.gz +Source: https://github.com/gsauthof/dracut-sshd/archive/%{version}%{pkg_rel}/%{name}-%{version}%{pkg_rel}.tar.gz +Patch1: 0001-Give-users-better-hints-after-logging-in.patch BuildRequires: dracut Requires: dracut BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -37,8 +38,7 @@ (i.e. early userspace). %prep -%setup -q -n %{name}-%{name}-%{version}%{pkg_rel} -%autopatch -p1 +%autosetup -p1 -n %{name}-%{version}%{pkg_rel} %build # empty @@ -50,6 +50,7 @@ %files %dir %{_prefix}/lib/dracut/modules.d/46sshd %{_prefix}/lib/dracut/modules.d/46sshd/module-setup.sh +%{_prefix}/lib/dracut/modules.d/46sshd/profile %{_prefix}/lib/dracut/modules.d/46sshd/sshd.service %config(noreplace) %{_prefix}/lib/dracut/modules.d/46sshd/sshd_config ++++++ 0001-Give-users-better-hints-after-logging-in.patch ++++++ >From a4309f3b986ffb9a8ca50c3a9a2eaad43a6c97bb Mon Sep 17 00:00:00 2001 From: Daniel Molkentin <dmolken...@suse.com> Date: Tue, 27 Oct 2020 18:50:08 +0100 Subject: [PATCH] Give users better hints after logging in Uses .profile and only executes for SSH sessions --- 46sshd/module-setup.sh | 3 +++ 46sshd/profile | 15 +++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 46sshd/profile diff --git a/46sshd/module-setup.sh b/46sshd/module-setup.sh index c9caca6..56a19b9 100755 --- a/46sshd/module-setup.sh +++ b/46sshd/module-setup.sh @@ -52,6 +52,9 @@ install() { /usr/bin/install -m 600 "$authorized_keys" \ "$initdir/root/.ssh/authorized_keys" + /usr/bin/install -m 600 "${moddir}/profile" \ + "$initdir/root/.profile" + inst_binary /usr/sbin/sshd inst_multiple -o /etc/sysconfig/sshd /etc/sysconfig/ssh \ /etc/sysconfig/dracut-sshd diff --git a/46sshd/profile b/46sshd/profile new file mode 100644 index 0000000..3950349 --- /dev/null +++ b/46sshd/profile @@ -0,0 +1,15 @@ +if [ -n "$SSH_TTY" ]; then + export PS1="initramfs-ssh:\${PWD}# " + cat << EOF + +Welcome to the early boot SSH environment. Please type + + systemd-tty-ask-password-agent + +(or press "arrow up") to unlock your disks and continue +the boot process. This shell will terminate automatically +a few seconds after the unlocking process has succeeded. + +EOF +fi + -- 2.28.0 ++++++ dracut-sshd-0.5.1-2.tar.gz -> dracut-sshd-0.6.1-2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/.travis.yml new/dracut-sshd-0.6.1-2/.travis.yml --- old/dracut-sshd-dracut-sshd-0.5.1-2/.travis.yml 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/.travis.yml 2020-05-28 21:04:13.000000000 +0200 @@ -1,5 +1,5 @@ -dist: xenial +dist: bionic sudo: required diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/46sshd/module-setup.sh new/dracut-sshd-0.6.1-2/46sshd/module-setup.sh --- old/dracut-sshd-dracut-sshd-0.5.1-2/46sshd/module-setup.sh 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/46sshd/module-setup.sh 2020-05-28 21:04:13.000000000 +0200 @@ -12,16 +12,7 @@ # called by dracut depends() { - # e.g. CentOS 7 doesn't has systemd-networkd - if [ -L /etc/systemd/system/multi-user.target.wants/systemd-networkd.service ]; then - # it's more lightweight than using the ifcfg dracut module - # and it isn't enabled, by default - echo systemd-networkd - else - # not necessarily a hard dependency, e.g. when the systemd-networkd is - # explicitly added and system itself uses NetworkManager - echo network - fi + return 0 } # called by dracut @@ -40,7 +31,11 @@ fi done - authorized_keys=/root/.ssh/authorized_keys + if [ -e /root/.ssh/dracut_authorized_keys ]; then + authorized_keys=/root/.ssh/dracut_authorized_keys + else + authorized_keys=/root/.ssh/authorized_keys + fi if [ ! -r "$authorized_keys" ]; then dfatal "No authorized_keys for root user found!" return 1 @@ -51,7 +46,7 @@ /usr/bin/install -m 600 "$authorized_keys" \ "$initdir/root/.ssh/authorized_keys" - inst_simple /usr/sbin/sshd + inst_binary /usr/sbin/sshd inst_multiple -o /etc/sysconfig/sshd /etc/sysconfig/ssh \ /etc/sysconfig/dracut-sshd @@ -65,22 +60,29 @@ grep '^sshd:' /etc/group >> "$initdir/etc/group" # Create privilege seperation directory - if [ -d /var/empty/sshd ]; then - mkdir -p -m 0755 "$initdir/var/empty/sshd" - else - mkdir -p -m 0755 "$initdir/var/lib/empty" - fi - - systemctl --root "$initdir" enable sshd + # /var/empty/sshd -> Fedora, CentOS, RHEL + # /var/emtpy -> Arch, OpenSSH upstream + # /var/lib/empty -> Suse + # /run/sshd -> Debian + # /var/chroot/ssh -> Void Linux + local d + for d in /var/empty/sshd /var/empty /var/lib/empty /run/sshd /var/chroot/ssh ; do + if [ -d "$d" ]; then + mkdir -p -m 0755 "$initdir$d" + break + fi + done - # as of Fedora 28, the systemd-networkd dracut module doesn't - # include those files - inst_multiple -o /etc/systemd/network/* + systemctl -q --root "$initdir" enable sshd # Add command to unlock luks volumes to bash history for easier use echo systemd-tty-ask-password-agent >> "$initdir/root/.bash_history" chmod 600 "$initdir/root/.bash_history" + # sshd requires /var/log/lastlog for tracking login information + mkdir -p -m 0755 "$initdir/var/log" + touch "$initdir/var/log/lastlog" + return 0 } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/README.md new/dracut-sshd-0.6.1-2/README.md --- old/dracut-sshd-dracut-sshd-0.5.1-2/README.md 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/README.md 2020-05-28 21:04:13.000000000 +0200 @@ -31,7 +31,7 @@ That means under normal circumstances the completion of all password prompts automatically resumes the boot process. -The command `systemd-tty-ask-password-agent --list` prints an overview +The command [`systemd-tty-ask-password-agent --list`][pwagent] prints an overview over all pending password prompts. ## Example: Emergency Shell @@ -72,7 +72,10 @@ Alternatively, you can install the latest stable version from the [dracut-sshd copr repository][copr]. -With a sshd that lacks systemd support (e.g. under Gentoo), one +Either way, once present under `/usr/lib/dracut/modules.d` it's +enabled, by default. + +With an sshd that lacks systemd support (e.g. under Gentoo), one has to adjust the systemd service file: # echo 'Skip this sed on Fedora/RHEL/CentOS/Debian/Ubuntu/...!' @@ -81,43 +84,55 @@ -i \ /usr/lib/dracut/modules.d/46sshd/sshd.service -It's enabled, by default - unless the Dracut network module is missing. Thus: +Make sure that `/root/.ssh/authorized_keys` contains the right +keys, as it's included in the [initramfs][iramfs]: - # dnf install -y dracut-network + # cat /root/.ssh/authorized_keys -(this package also contains the [`systemd-networkd`][networkd] -Dracut module) +That said, if `/root/.ssh/dracut_authorized_keys` is present +then it is included, instead. -When installing from copr, `dracut-network` is automatically -installed as dependency. +Of course, our initramfs image needs network support. The simplest +way to achieve this is to include [networkd][networkd]. To install +the networkd dracut module: -Make sure that `/root/.ssh/authorized_keys` contains the right -keys, as it's included in the [initramfs][iramfs]: + # dnf install -y dracut-network - # cat /root/.ssh/authorized_keys +When installing from copr, `dracut-network` is automatically +installed as dependency. Create a non-[NetworkManager][nm] network config, e.g. via [Networkd][networkd]: $ cat /etc/systemd/network/20-wired.network [Match] - Name=en* + Name=e* [Network] DHCP=ipv4 -Adjust the `Name=`, if necessary. In case the system doesn't have -networkd enabled one can just enable it for initramfs (cf. -[`add_dracutmodules`][addmod] and [`dracut --add -systemd-networkd`][dradd]). Alternatively, early boot network -connectivity can be configured by other means (i.e. kernel -parameters, see below). However, the author of this README -strongly recommends to use Networkd instead of NetworkManager on -servers and server-like systems. +Adjust the `Name=`, if necessary. -If the above example is sufficient you can install it via: +Note that the dracut networkd module doesn't include the system's +network configuration files by default and note that the module +isn't enabled, by default, either. Thus, you have to configure +Dracut for networkd (cf. the [install_items][iitems] and +[add_dracutmodules][addmod] directives). Example: + + # cat /etc/dracut.conf.d/90-networkd.conf + install_items+=" /etc/systemd/network/20-wired.network " + add_dracutmodules+=" systemd-networkd " + +Alternatively, early boot network connectivity can be configured +by other means (i.e. kernel parameters, see below). However, +the author of this README strongly recommends to use Networkd +instead of NetworkManager on servers and server-like systems. + +If the above example is sufficient you just need to copy the +example configuration files from the `example/` subdirectory: # cp example/20-wired.network /etc/systemd/network + # cp example/90-networkd.conf /etc/dracut.conf.d Finally regenerate the initramfs: @@ -239,6 +254,11 @@ configure network via additional [Dracut command line parameters][dracut-cmdline]. +This requires the activation of the network dracut module, e.g.: + + # cat /etc/dracut.conf.d/90-network.conf + add_dracutmodules+=" network " + On systems without networkd (e.g. CentOS 7/RHEL 8) this is the only way to enable network connectivity in early userspace. For example, the following parameters enable DHCP on all network interfaces in @@ -294,10 +314,18 @@ ## FAQ -- [How to make the early boot sshd listen on a non-standard port?] +- How to make the early boot sshd listen on a non-standard port? A: If you really [want to do that][port] you can provide a `/etc/sysconfig/dracut-sshd` that defines `SSHD_OPTS` ([see also][port]). +- Why does sshd hangs during early-boot when running dracut-sshd + inside a virtual machine (VM)? + A: Most likely the VM guest is short of entropy and thus sshd + blocks during startup (without logging a warning) for an + indefinite amount of time. Possible up to the systemd service + restart timeout. Directing some of the VM host's entropy into + the VM guest fixes this issue ([cf. these comments for + examples of how to do this][entropy]). ## Related Work @@ -313,7 +341,7 @@ - arguably more complex than dracut-sshd - certainly more lines of code and some options - comes with an unlock command that is superfluous in the - presence of `systemd-tty-ask-password-agent` - and it's kind of + presence of [`systemd-tty-ask-password-agent`][pwagent] - and it's kind of dangerous to use, e.g. when the password prompt times out the password is echoed to the console @@ -356,13 +384,12 @@ ## Tested Environments -- Fedora 29 -- Fedora 28 -- Fedora 27 -- CentOS 7 +- Fedora 27 to 32 +- CentOS 7, 8 - RHEL 8 beta 1 - Gentoo (by a contributor) - SUSE (by a contributor) +- Arch (by a contributor) [arch]: https://wiki.archlinux.org/index.php/Dm-crypt/Specialties#Remote_unlocking_.28hooks:_netconf.2C_dropbear.2C_tinyssh.2C_ppp.29 [bls]: https://systemd.io/BOOT_LOADER_SPECIFICATION @@ -373,7 +400,7 @@ [cryptssh]: https://github.com/dracut-crypt-ssh/dracut-crypt-ssh [cryptssh-uwe]: https://github.com/dracut-crypt-ssh/dracut-crypt-ssh/pull/17 [dracut]: https://dracut.wiki.kernel.org/index.php/Main_Page -[dracut-cmdline]: http://man7.org/linux/man-pages/man7/dracut.cmdline.7.html +[dracut-cmdline]: https://manpath.be/f32/7/dracut.cmdline [dropbear]: https://en.wikipedia.org/wiki/Dropbear_(software) [drop25519]: https://github.com/pts/pts-dropbear [ifcfg]: https://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-networkscripts-interfaces.html @@ -387,11 +414,13 @@ [networkd]: https://wiki.archlinux.org/index.php/systemd-networkd [nm]: https://wiki.archlinux.org/index.php/NetworkManager [ossh]: https://en.wikipedia.org/wiki/OpenSSH -[pwagent]: https://www.freedesktop.org/software/systemd/man/systemd-tty-ask-password-agent.html +[pwagent]: https://manpath.be/f32/1/systemd-tty-ask-password-agent [systemd]: https://en.wikipedia.org/wiki/Systemd [switchroot]: https://www.kernel.org/doc/Documentation/filesystems/ramfs-rootfs-initramfs.txt [tmpfs]: https://en.wikipedia.org/wiki/Tmpfs [tpm]: https://en.wikipedia.org/wiki/Trusted_Platform_Module -[addmod]: https://manpath.be/f30/5/dracut.conf#L29 -[dradd]: https://manpath.be/f30/8/dracut#L94 +[addmod]: https://manpath.be/f32/dracut/050-26.git20200316.fc32.x86_64/5/dracut.conf#L74 [port]: https://github.com/gsauthof/dracut-sshd/issues/9#issuecomment-531308602 +[entropy]: https://github.com/gsauthof/dracut-sshd/issues/12 +[iitems]: https://manpath.be/f32/dracut/050-26.git20200316.fc32.x86_64/5/dracut.conf#L74 + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/ci/concat-img.sh new/dracut-sshd-0.6.1-2/ci/concat-img.sh --- old/dracut-sshd-dracut-sshd-0.5.1-2/ci/concat-img.sh 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/ci/concat-img.sh 2020-05-28 21:04:13.000000000 +0200 @@ -74,7 +74,10 @@ zstd -q -d $root_img_src -o $root_img qemu-nbd --connect $nbd_guest $guest_img -partx -uv $nbd_guest +for i in 1 2 3; do + partx -uv $nbd_guest 2>&1 | grep failed || break + sleep $i +done part=p for i in 4 2; do diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/ci/install-dracut-sshd.sh new/dracut-sshd-0.6.1-2/ci/install-dracut-sshd.sh --- old/dracut-sshd-dracut-sshd-0.5.1-2/ci/install-dracut-sshd.sh 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/ci/install-dracut-sshd.sh 2020-05-28 21:04:13.000000000 +0200 @@ -35,6 +35,9 @@ scp -r -P $port "${ssh_flags[@]}" \ "$base"/46sshd root@"$host":/usr/lib/dracut/modules.d +scp -r -P $port "${ssh_flags[@]}" \ + "$base"/example/90-networkd.conf root@"$host":/etc/dracut.conf.d + if [ "$with_extra_keys" = y ]; then ssh -p $port "${ssh_flags[@]}" root@"$host" \ cp 'dracut_ssh_host_*_key*' /etc/ssh @@ -45,11 +48,12 @@ ssh -p $port "${ssh_flags[@]}" root@"$host" <<'EOF' set -x -if [ -f /usr/lib/systemd/systemd-networkd ]; then - : -else +if [ ! -f /usr/lib/systemd/systemd-networkd ]; then sed -i 's/^\(GRUB_CMDLINE_LINUX=\)"\([^"]\+\)"/\1"\2 rd.neednet=1 ip=dhcp"/' /etc/default/grub grub2-mkconfig -o /etc/grub2.cfg + + rm /etc/dracut.conf.d/90-networkd.conf + echo 'add_dracutmodules+=" network "' > /etc/dracut.conf.d/90-network.conf fi dracut -f -v shutdown -h now diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/ci/run_vm.py new/dracut-sshd-0.6.1-2/ci/run_vm.py --- old/dracut-sshd-dracut-sshd-0.5.1-2/ci/run_vm.py 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/ci/run_vm.py 2020-05-28 21:04:13.000000000 +0200 @@ -60,10 +60,13 @@ '-device', 'virtio-blk,drive=q1', ] # as of 2018-01, travis-ci doesn't suppport nested virtualization: # https://travis-ci.community/t/add-kvm-support/1406 - if os.environ.get('TRAVIS', 'false') == 'true': - kvm_flags = [] - else: + # as of 2020-05, there is hope, i.e. it seems that newer Travis builders + # have nested virtualization support enabled: + # https://travis-ci.community/t/add-kvm-support/1406/13 + if os.path.exists('/dev/kvm'): kvm_flags = [ '-enable-kvm' ] + else: + kvm_flags = [] s = pexpect.spawn(qemu, kvm_flags + [ '-nodefaults', '-nographic', '-m', '2G', # otherwise the sshd startup easily fails due to low entropy diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/ci/travis.sh new/dracut-sshd-0.6.1-2/ci/travis.sh --- old/dracut-sshd-dracut-sshd-0.5.1-2/ci/travis.sh 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/ci/travis.sh 2020-05-28 21:04:13.000000000 +0200 @@ -67,10 +67,13 @@ kvm-ok || true grep 'vmx\|svm' /proc/cpuinfo || true ls -l /dev/kvm || true + grep -r kvm /lib/udev/rules.d echo "Verifying that (nested) virtualization is available ... done" - if [ -e /dev/kvm ]; then - sudo chmod 666 /dev/kvm + if [ "$TRAVIS" = true ]; then + echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules > /dev/null + sudo udevadm control --reload-rules + sudo udevadm trigger --name-match=kvm fi } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/dracut-sshd.spec new/dracut-sshd-0.6.1-2/dracut-sshd.spec --- old/dracut-sshd-dracut-sshd-0.5.1-2/dracut-sshd.spec 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/dracut-sshd.spec 2020-05-28 21:04:13.000000000 +0200 @@ -4,7 +4,7 @@ # the 'lead' parameter, anyways # cf. https://pagure.io/rpkg-util/issue/21#comment-601077 #Version: {{{ git_dir_version }}} -Version: 0.5.1 +Version: 0.6.1 Release: 2%{?dist} Summary: Provide SSH access to initramfs early user space URL: https://github.com/gsauthof @@ -36,7 +36,16 @@ %config(noreplace) /usr/lib/dracut/modules.d/46sshd/sshd_config %doc README.md %doc example/20-wired.network +%doc example/90-networkd.conf %changelog +* Thu May 28 2020 Georg Sauthoff <m...@gms.tf> - 0.6.1-2 +- add example dracut config + +* Thu May 28 2020 Georg Sauthoff <m...@gms.tf> - 0.6.1-1 +- eliminate dracut module dependencies +- don't auto-include networkd configurations, anymore +- auto-include sshd executable dependencies + * Sat Jan 26 2019 Georg Sauthoff <m...@gms.tf> - 0.4-1 - initial packaging diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/example/20-wired.network new/dracut-sshd-0.6.1-2/example/20-wired.network --- old/dracut-sshd-dracut-sshd-0.5.1-2/example/20-wired.network 2019-09-28 21:06:43.000000000 +0200 +++ new/dracut-sshd-0.6.1-2/example/20-wired.network 2020-05-28 21:04:13.000000000 +0200 @@ -2,7 +2,7 @@ # copy to /etc/systemd/network/20-wired.network [Match] -Name=en* +Name=e* [Network] DHCP=ipv4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dracut-sshd-dracut-sshd-0.5.1-2/example/90-networkd.conf new/dracut-sshd-0.6.1-2/example/90-networkd.conf --- old/dracut-sshd-dracut-sshd-0.5.1-2/example/90-networkd.conf 1970-01-01 01:00:00.000000000 +0100 +++ new/dracut-sshd-0.6.1-2/example/90-networkd.conf 2020-05-28 21:04:13.000000000 +0200 @@ -0,0 +1,11 @@ +# copy to e.g. /etc/dracut.conf.d/90-networkd.conf + +# You may add any other networkd files by appending them +# to install_items +install_items+=" /etc/systemd/network/20-wired.network " + +# the networkd dracut module is only enabled on request, thus: +add_dracutmodules+=" systemd-networkd " + +# When networkd isn't available include the network Dracut module instead: +# add_dracutmodules+=" network "