#!/bin/sh create_initramfs () { if ! test -f /lib/modules/${1}/modules.dep; then return 0 elif ! test -f /boot/vmlinuz-${1}; then return 0 fi echo -n "Generating initramfs image for kernel ${1} ... " /sbin/dracut --force /boot/initramfs-${1}.img ${1} 1>/dev/null 2>&1 if [ $? -ne 0 ]; then echo "Failed" return 1 fi echo "OK" return 0 } local status status=0 if [ "x${1}" = "x" ]; then echo "Usage: update-initramfs " echo "Examples:" echo " update-initramfs all" echo " update-initramfs 5.10.138-5.10-1" exit 0 elif [ "x${1}" = "xall" ]; then for kernel in $(/bin/ls -1 /lib/modules/ 2>/dev/null); do create_initramfs ${kernel} if [ $? -ne 0 ]; then status=1 fi done else create_initramfs ${1} if [ $? -ne 0 ]; then status=1 fi fi exit ${status}