]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
feat(mkinitrd): remove mkinitrd
authorHarald Hoyer <harald@redhat.com>
Tue, 30 Mar 2021 08:23:26 +0000 (10:23 +0200)
committerHarald Hoyer <harald@hoyer.xyz>
Tue, 30 Mar 2021 10:38:11 +0000 (12:38 +0200)
It was not working anyway, so nobody used it for years.
If it is not used, just remove it.
mkinitrd-suse.sh will be maintained by SUSE as it is SUSE specific
anyway.

Makefile
dracut.asc
dracut.sh
dracut.spec
mkinitrd-dracut.sh [deleted file]
mkinitrd-suse.8.asc [deleted file]
mkinitrd-suse.sh [deleted file]
mkinitrd.8.asc [deleted file]

index 0d082fec6965d02e4d9452e7333df14d51eba9c9..8fa69bd69ef19c599462e3305a4151decc5b70af 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -37,8 +37,6 @@ man7pages = dracut.cmdline.7 \
 
 man8pages = dracut.8 \
             dracut-catimages.8 \
-            mkinitrd.8 \
-            mkinitrd-suse.8 \
             modules.d/98dracut-systemd/dracut-cmdline.service.8 \
             modules.d/98dracut-systemd/dracut-initqueue.service.8 \
             modules.d/98dracut-systemd/dracut-mount.service.8 \
@@ -148,7 +146,6 @@ install: all
        mkdir -p $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man7 $(DESTDIR)$(mandir)/man8
        install -m 0755 dracut.sh $(DESTDIR)$(bindir)/dracut
        install -m 0755 dracut-catimages.sh $(DESTDIR)$(bindir)/dracut-catimages
-       install -m 0755 mkinitrd-dracut.sh $(DESTDIR)$(bindir)/mkinitrd
        install -m 0755 lsinitrd.sh $(DESTDIR)$(bindir)/lsinitrd
        install -m 0644 dracut.conf $(DESTDIR)$(sysconfdir)/dracut.conf
        mkdir -p $(DESTDIR)$(sysconfdir)/dracut.conf.d
@@ -267,8 +264,7 @@ syncheck:
                [ $$V ] && echo "checking for [[: $$i"; if grep -Fq '[[ ' "$$i" ; then ret=$$(($$ret+1)); echo "$$i contains [["; fi; \
                [ $$V ] && echo "checking for echo -n: $$i"; if grep -Fq 'echo -n ' "$$i" ; then ret=$$(($$ret+1)); echo "$$i contains echo -n"; fi \
        done;exit $$ret
-       @ret=0;for i in *.sh mkinitrd-dracut.sh modules.d/*/*.sh \
-                       modules.d/*/module-setup.sh; do \
+       @ret=0;for i in *.sh modules.d/*/*.sh modules.d/*/module-setup.sh; do \
                [ $$V ] && echo "bash syntax check: $$i"; bash -n "$$i" ; ret=$$(($$ret+$$?)); \
        done;exit $$ret
 ifeq ($(HAVE_SHELLCHECK),yes)
index f35535c270d370c89aa67a31b152a1f9c5216892..cc11d01e29fd7d34d247a4299af21a2014790490 100644 (file)
@@ -162,9 +162,6 @@ include::dracut.cmdline.7.asc[]
 [[lsinitrd1]]
 include::lsinitrd.1.asc[]
 
-[[mkinitrd8]]
-include::mkinitrd.8.asc[]
-
 = Developer Manual
 
 :leveloffset: 1
index b8db2dd6de8835067c477e1ade15fa2a40d444c6..b71db7dda29467c745e198c655f0c232b292d6ad 100755 (executable)
--- a/dracut.sh
+++ b/dracut.sh
@@ -1,9 +1,6 @@
 #!/bin/bash -p
 #
 # Generator script for a dracut initramfs
-# Tries to retain some degree of compatibility with the command line
-# of the various mkinitrd implementations out there
-#
 
 # Copyright 2005-2013 Red Hat, Inc.  All rights reserved.
 #
index 1ca7bde0e0a2d88224c35cd3201186354233bff9..05bea6b85de177735a3ed9f8721acc651f0fe5e2 100644 (file)
@@ -56,11 +56,6 @@ BuildRequires: docbook-xsl-stylesheets libxslt
 BuildRequires: asciidoc
 %endif
 
-%if 0%{?suse_version} > 9999
-Obsoletes: mkinitrd < 2.6.1
-Provides: mkinitrd = 2.6.1
-%endif
-
 Obsoletes: dracut-fips <= 047
 Provides:  dracut-fips = %{version}-%{release}
 Obsoletes: dracut-fips-aesni <= 047
@@ -265,9 +260,7 @@ rm -f $RPM_BUILD_ROOT%{_mandir}/man?/*suse*
 %endif
 
 %if 0%{?fedora} == 0 && 0%{?rhel} == 0 && 0%{?suse_version} <= 9999
-rm -f -- $RPM_BUILD_ROOT%{_bindir}/mkinitrd
 rm -f -- $RPM_BUILD_ROOT%{_bindir}/lsinitrd
-rm -f -- $RPM_BUILD_ROOT%{_mandir}/man8/mkinitrd.8*
 rm -f -- $RPM_BUILD_ROOT%{_mandir}/man1/lsinitrd.1*
 %endif
 
@@ -284,7 +277,6 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
 %{_datadir}/bash-completion/completions/dracut
 %{_datadir}/bash-completion/completions/lsinitrd
 %if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version} > 9999
-%{_bindir}/mkinitrd
 %{_bindir}/lsinitrd
 %endif
 %dir %{dracutlibdir}
@@ -311,12 +303,8 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
 %{_mandir}/man8/dracut.8*
 %{_mandir}/man8/*service.8*
 %if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version} > 9999
-%{_mandir}/man8/mkinitrd.8*
 %{_mandir}/man1/lsinitrd.1*
 %endif
-%if 0%{?suse_version}
-%{_mandir}/man8/mkinitrd-suse.8*
-%endif
 %{_mandir}/man7/dracut.kernel.7*
 %{_mandir}/man7/dracut.cmdline.7*
 %{_mandir}/man7/dracut.modules.7*
diff --git a/mkinitrd-dracut.sh b/mkinitrd-dracut.sh
deleted file mode 100755 (executable)
index 2abf34f..0000000
+++ /dev/null
@@ -1,239 +0,0 @@
-#!/bin/bash --norc
-kver=$(uname -r)
-
-boot_dir="/boot"
-quiet=0
-host_only=0
-force=0
-
-error() { echo "$@" >&2; }
-
-usage() {
-    [[ $1 == '-n' ]] && cmd=echo || cmd=error
-
-    $cmd "usage: ${0##*/} [--version] [--help] [-v] [-f] [--preload <module>]"
-    $cmd "       [--image-version] [--with=<module>]"
-    $cmd "       [--nocompress]"
-    $cmd "       <initrd-image> <kernel-version>"
-    $cmd ""
-    $cmd "       (ex: ${0##*/} /boot/initramfs-$kver.img $kver)"
-
-    [[ $1 == '-n' ]] && exit 0
-    exit 1
-}
-
-# Little helper function for reading args from the commandline.
-# it automatically handles -a b and -a=b variants, and returns 1 if
-# we need to shift $3.
-read_arg() {
-    # $1 = arg name
-    # $2 = arg value
-    # $3 = arg parameter
-    param="$1"
-    local rematch='^[^=]*=(.*)$' result
-    if [[ $2 =~ $rematch ]]; then
-        read "$param" <<< "${BASH_REMATCH[1]}"
-    else
-        for ((i = 3; i <= $#; i++)); do
-            # Only read next arg if it not an arg itself.
-            if [[ ${*:i:1} == -* ]]; then
-                break
-            fi
-            result="$result ${@:i:1}"
-            # There is no way to shift our callers args, so
-            # return "no of args" to indicate they should do it instead.
-        done
-        read "$1" <<< "$result"
-        return $((i - 3))
-    fi
-}
-
-# Taken over from SUSE mkinitrd
-default_kernel_images() {
-    local regex kernel_image kernel_version version_version initrd_image
-    local qf='%{NAME}-%{VERSION}-%{RELEASE}\n'
-
-    case "${DRACUT_ARCH:-$(uname -m)}" in
-        s390 | s390x)
-            regex='image'
-            ;;
-        ppc*)
-            regex='vmlinux'
-            ;;
-        i?86 | x86_64)
-            regex='vmlinuz'
-            ;;
-        arm*)
-            regex='[uz]Image'
-            ;;
-        aarch64 | riscv64)
-            regex='Image'
-            ;;
-        *)
-            regex='vmlinu.'
-            ;;
-    esac
-
-    # user mode linux
-    if grep -q UML /proc/cpuinfo; then
-        regex='linux'
-    fi
-
-    kernel_images=""
-    initrd_images=""
-    for kernel_image in $(ls $boot_dir \
-        | sed -ne "\|^$regex\(-[0-9.]\+-[0-9]\+-[a-z0-9]\+$\)\?|p" \
-        | grep -v kdump$); do
-
-        # Note that we cannot check the RPM database here -- this
-        # script is itself called from within the binary kernel
-        # packages, and rpm does not allow recursive calls.
-
-        [ -L "$boot_dir/$kernel_image" ] && continue
-        [ "${kernel_image%%.gz}" != "$kernel_image" ] && continue
-        kernel_version=$(/usr/bin/get_kernel_version \
-            $boot_dir/$kernel_image 2> /dev/null)
-        initrd_image=$(echo $kernel_image | sed -e "s|${regex}|initrd|")
-        if [ "$kernel_image" != "$initrd_image" -a \
-            -n "$kernel_version" -a \
-            -d "/lib/modules/$kernel_version" ]; then
-            kernel_images="$kernel_images $boot_dir/$kernel_image"
-            initrd_images="$initrd_images $boot_dir/$initrd_image"
-        fi
-    done
-    for kernel_image in $kernel_images; do
-        kernels="$kernels ${kernel_image#*-}"
-    done
-    for initrd_image in $initrd_images; do
-        targets="$targets $initrd_image"
-    done
-    host_only=1
-    force=1
-}
-
-while (($# > 0)); do
-    case ${1%%=*} in
-        --with-usb)
-            read_arg usbmodule "$@" || shift $?
-            basicmodules="$basicmodules ${usbmodule:-usb-storage}"
-            unset usbmodule
-            ;;
-        --with-avail)
-            read_arg modname "$@" || shift $?
-            basicmodules="$basicmodules $modname"
-            ;;
-        --with)
-            read_arg modname "$@" || shift $?
-            basicmodules="$basicmodules $modname"
-            ;;
-        --version)
-            echo "mkinitrd: dracut compatibility wrapper"
-            exit 0
-            ;;
-        -v | --verbose) dracut_args="${dracut_args} -v" ;;
-        -f | --force) force=1 ;;
-        --preload)
-            read_arg modname "$@" || shift $?
-            basicmodules="$basicmodules $modname"
-            ;;
-        --image-version) img_vers=yes ;;
-        --rootfs | -d)
-            read_arg rootfs "$@" || shift $?
-            dracut_args="${dracut_args} --filesystems $rootfs"
-            ;;
-        --nocompress) dracut_args="$dracut_args --no-compress" ;;
-        --help) usage -n ;;
-        --builtin) ;;
-        --without*) ;;
-        --without-usb) ;;
-        --fstab*) ;;
-        --ifneeded) ;;
-        --omit-scsi-modules) ;;
-        --omit-ide-modules) ;;
-        --omit-raid-modules) ;;
-        --omit-lvm-modules) ;;
-        --omit-dmraid) ;;
-        --allow-missing) ;;
-        --net-dev*) ;;
-        --noresume) ;;
-        --rootdev*) ;;
-        --thawdev*) ;;
-        --rootopts*) ;;
-        --root*) ;;
-        --loopdev*) ;;
-        --loopfs*) ;;
-        --loopopts*) ;;
-        --looppath*) ;;
-        --dsdt*) ;;
-        -s) ;;
-        --quiet | -q) quiet=1 ;;
-        -b)
-            read_arg boot_dir "$@" || shift $?
-            if [ ! -d $boot_dir ]; then
-                error "Boot directory $boot_dir does not exist"
-                exit 1
-            fi
-            ;;
-        -k) # Would be nice to get a list of images here
-            read_arg kernel_images "$@" || shift $?
-            for kernel_image in $kernel_images; do
-                kernels="$kernels ${kernel_image#*-}"
-            done
-            host_only=1
-            force=1
-            ;;
-        -i)
-            read_arg initrd_images "$@" || shift $?
-            for initrd_image in $initrd_images; do
-                targets="$targets $boot_dir/$initrd_image"
-            done
-            ;;
-        *) if [[ ! $targets ]]; then
-            targets=$1
-        elif [[ ! $kernels ]]; then
-            kernels=$1
-        else
-            usage
-        fi ;;
-    esac
-    shift
-done
-
-[[ $targets && $kernels ]] || default_kernel_images
-[[ $targets && $kernels ]] || (error "No kernel found in $boot_dir" && usage)
-
-# We can have several targets/kernels, transform the list to an array
-targets=($targets)
-[[ $kernels ]] && kernels=($kernels)
-
-[[ $host_only == 1 ]] && dracut_args="${dracut_args} -H"
-[[ $force == 1 ]] && dracut_args="${dracut_args} -f"
-
-echo "Creating: target|kernel|dracut args|basicmodules "
-for ((i = 0; i < ${#targets[@]}; i++)); do
-
-    if [[ $img_vers ]]; then
-        target="${targets[$i]}-${kernels[$i]}"
-    else
-        target="${targets[$i]}"
-    fi
-    kernel="${kernels[$i]}"
-
-    # Duplicate code: No way found how to redirect output based on $quiet
-    if [[ $quiet == 1 ]]; then
-        echo "$target|$kernel|$dracut_args|$basicmodules"
-        if [[ $basicmodules ]]; then
-            dracut $dracut_args --add-drivers "$basicmodules" "$target" \
-                "$kernel" &> /dev/null
-        else
-            dracut $dracut_args "$target" "$kernel" &> /dev/null
-        fi
-    else
-        if [[ $basicmodules ]]; then
-            dracut $dracut_args --add-drivers "$basicmodules" "$target" \
-                "$kernel"
-        else
-            dracut $dracut_args "$target" "$kernel"
-        fi
-    fi
-done
diff --git a/mkinitrd-suse.8.asc b/mkinitrd-suse.8.asc
deleted file mode 100644 (file)
index e39ac52..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-MKINITRD(8)
-===========
-:doctype: manpage
-:man source:   dracut
-:man manual:   dracut
-
-NAME
-----
-mkinitrd-suse - is a compat wrapper, which calls dracut to generate an initramfs
-
-SYNOPSIS
---------
-*mkinitrd* ['OPTION...']
-
-DESCRIPTION
------------
-*mkinitrd* creates an initramfs image <initrd-image> for the kernel with
-version <kernel-version> by calling *dracut*.
-
-[IMPORTANT]
-This version of mkinitrd is provided for compatibility with older
-versions of mkinitrd. If a more fine grained control over the
-resulting image is needed, *dracut* should be called directly.
-
-OPTIONS
--------
-**-R, --version**::
-    print info about the version
-
-**-k** _<kernel_list>_::
-    List of kernel images for which initrd files are created (relative
-    to _boot_dir_), Image name should begin with the following string,
-    defaults to _vmlinux_ on ppc/ppc64, _image_ on s390/s390x and _vmlinuz_
-    for everything else.
-
-**-i** _<initrd_list>_::
-    List of file names (relative to _boot_dir_) for the initrd; positions
-    have to match the _kernel_list_. Defaults to _initrd_.
-
-**-m** _<module_list>_::
-    Modules to include in initrd, defaults to _INITRD_MODULES_ variable
-    in */etc/sysconfig/kernel*.
-
-**-f** _<feature_list>_::
-    Features to be enabled for the initrd. In general mkinitrd
-    configures the initrd for the root device it is started from. With
-    this option additional feature can be enabled.
-
-**-b** _<bootdir>_::
-    Boot directory, defaults to */boot*, where the initrd is created.
-
-**-d** _<root_device>_::
-    Root device, defaults to the device from which the root_dir is
-    mounted; overwrites the rootdev environment variable if set
-
-**-s** _<size>_::
-    Add splash animation and bootscreen to initrd.
-
-**-D** _<interface>::
-    Run dhcp on the specified interface (for example "eth0").
-
-**-I** _<interface>::
-    Configure the specified interface statically.
-
-**-a** _<acpi_dsdt>::
-    Attach compiled ACPI DSDT (Differentiated System Description Table)
-    to initrd. This replaces the DSDT of the BIOS. Defaults to the
-    _ACPI_DSDT_ variable in */etc/sysconfig/kernel*.
-
-**-M** _<map>::
-    System.map file to use.
-
-**-B**::
-    Don’t run the *update-bootloader(8)* script after the initrd(s) have
-    been created. This is useful if you call mkinitrd(8) for anything
-    else than the running system.
-
-**-A**::
-    Create a so called "monster initrd" which includes all available
-    features and modules. This calls dracut with --no-hostonly and
-    --no-hostonly-cmdline parameters internally, instead of the default
-    --hostonly and --hostonly-cmdline.
-
-**-v, --verbose**::
-    increase verbosity level
-
-**-L**::
-    Disable logging to _/var/log/YaST2/mkinitrd.log_. This is useful for
-    testing if you don’t want to clutter the system log.
-
-**--help**::
-    print a help message and exit.
-
-AVAILABILITY
-------------
-The mkinitrd command is part of the dracut package and is available from
-link:$$https://dracut.wiki.kernel.org$$[https://dracut.wiki.kernel.org]
-
-AUTHORS
--------
-Harald Hoyer, Hannes Reinecke
-
-SEE ALSO
---------
-*dracut*(8)
-*update-bootloader*(8)
diff --git a/mkinitrd-suse.sh b/mkinitrd-suse.sh
deleted file mode 100755 (executable)
index 4e2a34f..0000000
+++ /dev/null
@@ -1,396 +0,0 @@
-#!/bin/bash --norc
-#
-# mkinitrd compatibility wrapper for SUSE.
-#
-# Copyright (c) 2013 SUSE Linux Products GmbH. All rights reserved.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-#
-
-boot_dir="/boot"
-quiet=0
-logfile=/var/log/YaST2/mkinitrd.log
-dracut_cmd=dracut
-
-error() { echo "$@" >&2; }
-
-usage() {
-    [[ $1 == '-n' ]] && cmd=echo || cmd=error
-
-    $cmd "usage: ${0##*/} [options]"
-    $cmd ""
-    $cmd "     Create initial ramdisk images that contain all kernel modules needed"
-    $cmd "     in the early boot process, before the root file system becomes"
-    $cmd "     available."
-    $cmd "     This usually includes SCSI and/or RAID modules, a file system module"
-    $cmd "     for the root file system, or a network interface driver module for dhcp."
-    $cmd ""
-    $cmd "     options:"
-    $cmd '     -f "feature list"       Features to be enabled when generating initrd.'
-    $cmd "                             Available features are:"
-    $cmd "                                     iscsi, md, multipath, lvm, lvm2,"
-    $cmd "                                     ifup, fcoe, dcbd"
-    $cmd '     -k "kernel list"        List of kernel images for which initrd files are'
-    $cmd "                             created. Defaults to all kernels found in /boot."
-    $cmd '     -i "initrd list"        List of file names for the initrd; position have'
-    $cmd '                             match to "kernel list". Defaults to all kernels'
-    $cmd "                             found in /boot."
-    $cmd "     -b boot_dir             Boot directory. Defaults to /boot."
-    $cmd "     -t tmp_dir              Temporary directory. Defaults to /var/tmp."
-    $cmd "     -M map                  System.map file to use."
-    $cmd '     -A                      Create a so called "monster initrd" which'
-    $cmd "                             includes all features and modules possible."
-    $cmd "     -B                      Do not update bootloader configuration."
-    $cmd "     -v                      Verbose mode."
-    $cmd "     -L                      Disable logging."
-    $cmd "     -h                      This help screen."
-    $cmd '     -m "module list"        Modules to include in initrd. Defaults to the'
-    $cmd "                             INITRD_MODULES variable in /etc/sysconfig/kernel"
-    $cmd '     -u "DomU module list"   Modules to include in initrd. Defaults to the'
-    $cmd "                             DOMU_INITRD_MODULES variable in"
-    $cmd "                             /etc/sysconfig/kernel."
-    $cmd "     -d root_device          Root device. Defaults to the device from"
-    $cmd "                             which / is mounted. Overrides the rootdev"
-    $cmd "                             environment variable if set."
-    $cmd "     -j device               Journal device"
-    $cmd "     -D interface            Run dhcp on the specified interface."
-    $cmd "     -I interface            Configure the specified interface statically."
-    $cmd "     -a acpi_dsdt            Obsolete, do not use."
-    $cmd "     -s size                 Add splash animation and bootscreen to initrd."
-
-    [[ $1 == '-n' ]] && exit 0
-    exit 1
-}
-
-# Little helper function for reading args from the commandline.
-# it automatically handles -a b and -a=b variants, and returns 1 if
-# we need to shift $3.
-read_arg() {
-    # $1 = arg name
-    # $2 = arg value
-    # $3 = arg parameter
-    param="$1"
-    local rematch='^[^=]*=(.*)$' result
-    if [[ $2 =~ $rematch ]]; then
-        read "$param" <<< "${BASH_REMATCH[1]}"
-    else
-        for ((i = 3; i <= $#; i++)); do
-            # Only read next arg if it not an arg itself.
-            if [[ ${*:i:1} == -* ]]; then
-                break
-            fi
-            result="$result ${@:i:1}"
-            # There is no way to shift our callers args, so
-            # return "no of args" to indicate they should do it instead.
-        done
-        read "$1" <<< "$result"
-        return $((i - 3))
-    fi
-}
-
-# Helper functions to calculate ipconfig command line
-calc_netmask() {
-    local prefix=$1
-
-    [ -z "$prefix" ] && return
-    mask=$((0xffffffff << (32 - prefix)))
-    byte1=$((mask >> 24))
-    byte2=$((mask >> 16))
-    byte3=$((mask >> 8))
-    byte4=$((mask & 0xff))
-    netmask=$(printf "%d.%d.%d.%d" $((byte1 & 0xff)) $((byte2 & 0xff)) $((byte3 & 0xff)) $byte4)
-
-    echo $netmask
-}
-
-ipconfig() {
-    local interface=$1
-    local iplink macaddr broadcast gateway ipaddr prefix netmask
-
-    iplink=$(ip addr show dev $interface | sed -n 's/ *inet \(.*\) brd.*/\1/p')
-    macaddr=$(ip addr show dev $interface | sed -n 's/.*ether \(.*\) brd.*/\1/p')
-    broadcast=$(ip addr show dev $interface | sed -n 's/.*brd \(.*\) scope.*/\1/p')
-    gateway=$(ip route show dev $interface | sed -n 's/default via \([0-9\.]*\).*/\1/p')
-
-    ipaddr=${iplink%%/*}
-    prefix=${iplink##*/}
-    netmask=$(calc_netmask $prefix)
-
-    echo "${ipaddr}:${serveraddr}:${gateway}:${netmask}:${hostname}:${interface}:none::${macaddr}"
-}
-
-is_xen_kernel() {
-    local kversion=$1
-    local root_dir=$2
-    local cfg
-
-    for cfg in ${root_dir}/boot/config-$kversion $root_dir/lib/modules/$kversion/build/.config; do
-        test -r $cfg || continue
-        grep -q '^CONFIG_XEN=y$' $cfg
-        return
-    done
-    test $kversion != "${kversion%-xen*}"
-    return
-}
-
-kernel_version_from_image() {
-    local dir="${1%/*}/"
-    [[ $dir != "$1" ]] || dir=""
-    local kernel_image="$1" kernel_image_gz="${dir}vmlinux-${1#*-}.gz"
-    echo kernel_image_gz="'$kernel_image_gz'" >&2
-
-    if get_kernel_version "$kernel_image" 2> /dev/null; then
-        return
-    fi
-
-    # As a last resort, try vmlinux-$version.gz, which might be around
-    get_kernel_version "$kernel_image_gz" 2> /dev/null
-}
-
-# Taken over from SUSE mkinitrd
-default_kernel_images() {
-    local regex kernel_image kernel_version version_version initrd_image
-    local qf='%{NAME}-%{VERSION}-%{RELEASE}\n'
-
-    case "${DRACUT_ARCH:-$(uname -m)}" in
-        s390 | s390x)
-            regex='image'
-            ;;
-        ppc | ppc64)
-            regex='vmlinux'
-            ;;
-        i?86 | x86_64)
-            regex='vmlinuz'
-            ;;
-        arm*)
-            regex='[uz]Image'
-            ;;
-        aarch64 | riscv64)
-            regex='Image'
-            ;;
-        *)
-            regex='vmlinu.'
-            ;;
-    esac
-
-    kernel_images=""
-    initrd_images=""
-    for kernel_image in $(ls $boot_dir \
-        | sed -ne "\|^$regex\(-[0-9.]\+-[0-9]\+-[a-z0-9]\+$\)\?|p" \
-        | grep -v kdump$); do
-
-        # Note that we cannot check the RPM database here -- this
-        # script is itself called from within the binary kernel
-        # packages, and rpm does not allow recursive calls.
-
-        [ -L "$boot_dir/$kernel_image" ] && continue
-        [ "${kernel_image%%.gz}" != "$kernel_image" ] && continue
-
-        kernel_version=$(kernel_version_from_image \
-            $boot_dir/$kernel_image 2> /dev/null)
-        initrd_image=$(echo $kernel_image | sed -e "s|${regex}|initrd|")
-        if [ "$kernel_image" != "$initrd_image" -a \
-            -n "$kernel_version" -a \
-            -d "/lib/modules/$kernel_version" ]; then
-            kernel_images="$kernel_images $boot_dir/$kernel_image"
-            initrd_images="$initrd_images $boot_dir/$initrd_image"
-        fi
-    done
-    for kernel_image in $kernel_images; do
-        kernels="$kernels ${kernel_image#*-}"
-    done
-    for initrd_image in $initrd_images; do
-        targets="$targets $initrd_image"
-    done
-}
-
-while (($# > 0)); do
-    case ${1%%=*} in
-        -f)
-            read_arg feature_list "$@" || shift $?
-            # Could be several features
-            ;;
-        -k) # Would be nice to get a list of images here
-            read_arg kernel_images "$@" || shift $?
-            for kernel_image in $kernel_images; do
-                [ -L "/boot/$kernel_image" ] && kernel_image="$(readlink "/boot/$kernel_image")"
-                kernels="$kernels ${kernel_image#*-}"
-            done
-            ;;
-        -i)
-            read_arg initrd_images "$@" || shift $?
-            for initrd_image in $initrd_images; do
-                [ -L "/boot/$initrd_image" ] && initrd_image="$(readlink "/boot/$initrd_image")"
-                # Check if the initrd_image contains a path.
-                # if not, then add the default boot_dir
-                dname=$(dirname $initrd_image)
-                if [ "$dname" == "." ]; then
-                    targets="$targets $boot_dir/$initrd_image"
-                else
-                    targets="$targets $initrd_image"
-                fi
-            done
-            ;;
-        -b)
-            read_arg boot_dir "$@" || shift $?
-            if [ ! -d $boot_dir ]; then
-                error "Boot directory $boot_dir does not exist"
-                exit 1
-            fi
-            ;;
-        -t)
-            read_arg tmp_dir "$@" || shift $?
-            dracut_args="${dracut_args} --tmpdir $tmp_dir"
-            ;;
-        -M)
-            read_arg map_file "$@" || shift $?
-            ;;
-        -A) dracut_args="${dracut_args} --no-host-only" ;;
-        -B) skip_update_bootloader=1 ;;
-        -v | --verbose) dracut_args="${dracut_args} -v" ;;
-        -L) logfile= ;;
-        -h | --help) usage -n ;;
-        -m) read_arg module_list "$@" || shift $? ;;
-        -u)
-            read_arg domu_module_list "$@" || shift $?
-            echo "mkinitrd: DomU modules not yet supported"
-            ;;
-        -d)
-            read_arg rootfs "$@" || shift $?
-            dracut_args="${dracut_args} --filesystems $rootfs"
-            ;;
-        -D)
-            read_arg dhcp_if "$@" || shift $?
-            dracut_cmdline="${dracut_cmdline} ip=${dhcp_if}:dhcp"
-            ;;
-        -I)
-            read_arg static_if "$@" || shift $?
-            dracut_cmdline="${dracut_cmdline} ip=$(ipconfig $static_if)":
-            ;;
-        -a)
-            read_arg acpi_dsdt "$@" || shift $?
-            echo "Obsolete -a param, use acpi_table_dir= and acpi_override= variables in /etc/dracut.conf.d/"
-            exit 1
-            ;;
-        -s)
-            read_arg boot_splash "$@" || shift $?
-            echo "mkinitrd: boot splash not yet supported"
-            exit 1
-            ;;
-        -V)
-            echo "mkinitrd: vendor scipts are no longer supported"
-            exit 1
-            ;;
-        --dracut)
-            read_arg dracut_cmd "$@" || shift $?
-            ;;
-        --version | -R)
-            echo "mkinitrd: dracut compatibility wrapper"
-            exit 0
-            ;;
-        --quiet | -q) quiet=1 ;;
-        *) if [[ ! $targets ]]; then
-            targets=$1
-        elif [[ ! $kernels ]]; then
-            kernels=$1
-        else
-            usage
-        fi ;;
-    esac
-    shift
-done
-
-[[ $targets && $kernels ]] || default_kernel_images
-if [[ ! $targets || ! $kernels ]]; then
-    error "No kernel found in $boot_dir or bad modules dir in /lib/modules"
-    exit 1
-fi
-
-# We can have several targets/kernels, transform the list to an array
-targets=($targets)
-[[ $kernels ]] && kernels=($kernels)
-
-[[ $logfile ]] && dracut_args="${dracut_args} --logfile $logfile"
-dracut_args="${dracut_args} --force"
-
-[[ $dracut_cmdline ]] && dracut_args="${dracut_args} --kernel-cmdline ${dracut_cmdline}"
-[ -z "$(type -p update-bootloader)" ] && skip_update_bootloader=1
-
-# Update defaults from /etc/sysconfig/kernel
-if [ -f /etc/sysconfig/kernel ]; then
-    . /etc/sysconfig/kernel
-fi
-[[ $module_list ]] || module_list="${INITRD_MODULES}"
-[[ $domu_module_list ]] || domu_module_list="${DOMU_INITRD_MODULES}"
-shopt -s extglob
-
-failed=""
-
-for ((i = 0; i < ${#targets[@]}; i++)); do
-
-    if [[ $img_vers ]]; then
-        target="${targets[$i]}-${kernels[$i]}"
-    else
-        target="${targets[$i]}"
-    fi
-    kernel="${kernels[$i]}"
-
-    if is_xen_kernel $kernel $rootfs; then
-        modules_all="${module_list} ${domu_module_list}"
-    else
-        modules_all="${module_list}"
-    fi
-
-    # Remove leading and trailing spaces needs (set above): shopt -s extglob
-    modules_all=${modules_all%%+([[:space:]])}
-    modules_all=${modules_all##+([[:space:]])}
-
-    echo "Creating initrd: $target"
-
-    # Duplicate code: No way found how to redirect output based on $quiet
-    if [[ $quiet == 1 ]]; then
-        # Duplicate code: --force-drivers must not be called with empty string
-        # -> dracut bug workarounded ugly, because of complex whitespace
-        # expansion magics
-        if [ -n "${modules_all}" ]; then
-            $dracut_cmd $dracut_args --force-drivers "${modules_all}" "$target" "$kernel" &> /dev/null
-            [ $? -ne 0 ] && failed="$failed $target"
-        else
-            $dracut_cmd $dracut_args "$target" "$kernel" &> /dev/null
-            [ $? -ne 0 ] && failed="$failed $target"
-        fi
-    else
-        if [ -n "${modules_all}" ]; then
-            $dracut_cmd $dracut_args --force-drivers "${modules_all}" "$target" "$kernel"
-            [ $? -ne 0 ] && failed="$failed $target"
-        else
-            $dracut_cmd $dracut_args "$target" "$kernel"
-            [ $? -ne 0 ] && failed="$failed $target"
-        fi
-    fi
-done
-
-if [ "$skip_update_bootloader" ]; then
-    echo 2>&1 "Did not refresh the bootloader. You might need to refresh it manually."
-else
-    update-bootloader --refresh
-    [ $? -ne 0 ] && echo "Updating bootloader failed" && exit 1
-fi
-
-if [ "$failed" != "" ]; then
-    echo "Generating $failed targets failed"
-    exit 1
-fi
-
-exit 0
diff --git a/mkinitrd.8.asc b/mkinitrd.8.asc
deleted file mode 100644 (file)
index 82afe2d..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-MKINITRD(8)
-=========
-:doctype: manpage
-:man source:   dracut
-:man manual:   dracut
-:man version:  {version}
-
-NAME
-----
-mkinitrd - is a compat wrapper, which calls dracut to generate an initramfs
-
-SYNOPSIS
---------
-*mkinitrd* ['OPTION...'] [<initrd-image>]  <kernel-version>
-
-DESCRIPTION
------------
-mkinitrd creates an initramfs image <initrd-image> for the kernel with
-version <kernel-version> by calling "dracut".
-
-[IMPORTANT]
-If a more fine grained control over the resulting image is needed,
-"dracut" should be called directly.
-
-OPTIONS
--------
-**--version**::
-    print info about the version
-
-**-v, --verbose**::
-    increase verbosity level
-
-**-f, --force**::
-    overwrite existing initramfs file.
-
-**--image-version*::
-    append the kernel version to the target image
-    <initrd-image>-<kernel-version>.
-
-**--with=<module>**::
-     add the kernel module <module> to the initramfs.
-
-**--preload=<module>**::
-     preload the kernel module <module> in the initramfs before any other kernel
-     modules are loaded. This can be used to ensure a certain device naming,
-     which should in theory be avoided and the use of symbolic links in /dev is
-     encouraged.
-
-**--nocompress**::
-     do not compress the resulting image.
-
-**--help**::
-    print a help message and exit.
-
-AVAILABILITY
-------------
-The mkinitrd command is part of the dracut package and is available from
-link:$$https://dracut.wiki.kernel.org$$[https://dracut.wiki.kernel.org]
-
-AUTHORS
--------
-Harald Hoyer
-
-SEE ALSO
---------
-*dracut*(8)