diff options
-rwxr-xr-x | kcleanup-fedora | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/kcleanup-fedora b/kcleanup-fedora new file mode 100755 index 0000000..83523df --- /dev/null +++ b/kcleanup-fedora @@ -0,0 +1,29 @@ +#!/bin/sh + +# args +version="$1" + +if test "$version" = ""; then + echo "usage: $0 <version>" + echo "kernels:" + ls /boot/vmlinu*-* | sed -e 's|/boot/vm[^-]\+-| |' + exit 1 +fi + +kernels="$(ls /boot/vmlinu*-${version}* 2>/dev/null | grep -v 'old$')" +for kernel in $kernels; do + version="${kernel#/boot/vm*-}" + test -f "$kernel" || continue + if rpm -qf "$kernel" 2>/dev/null | grep -q kernel; then + echo "# skip $version [rpm]" + continue + fi + echo "# kill $version" + grubby --remove-kernel="${kernel}" + rm -f "${kernel}" + rm -f "${kernel}.old" + rm -f "${kernel//vmlinuz/System.map}" + rm -f "${kernel//vmlinuz/System.map}.old" + rm -f "${kernel//vmlinuz/initramfs}.img" + rm -rf "/lib/modules/${version}" +done
\ No newline at end of file |