Files
alr-RG/linux-xanmod-bin/postremove.sh

66 lines
2.3 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
if [ "${1:-0}" -ge 1 ]; then
echo "Обнаружено обновление пакета, пропуск очистки"
exit 0
fi
kernel_versions=$(ls /boot/vmlinuz-*-xanmod* 2>/dev/null | sed 's|/boot/vmlinuz-||' || true)
if [ -z "$kernel_versions" ]; then
echo "Ядра xanmod не найдены в /boot, очистка может быть неполной"
exit 0
fi
for kernel_version in $kernel_versions; do
echo "Очистка ядра $kernel_version..."
kernel_path="/boot/vmlinuz-$kernel_version"
if command -v grubby >/dev/null 2>&1; then
if grubby --info="$kernel_path" >/dev/null 2>&1; then
echo "Удаление записи ядра из загрузчика..."
grubby --remove-kernel="$kernel_path" || true
echo "Ядро удалено из загрузчика"
fi
fi
initramfs_img="/boot/initramfs-$kernel_version.img"
if [ -f "$initramfs_img" ]; then
echo "Удаление initramfs: $initramfs_img"
rm -f "$initramfs_img"
fi
if [ -f "$kernel_path" ]; then
echo "Удаление образа ядра: $kernel_path"
rm -f "$kernel_path"
fi
if [ -f "/boot/System.map-$kernel_version" ]; then
echo "Удаление System.map: /boot/System.map-$kernel_version"
rm -f "/boot/System.map-$kernel_version"
fi
if [ -d "/usr/lib/modules/$kernel_version" ]; then
echo "Удаление модулей: /usr/lib/modules/$kernel_version"
rm -rf "/usr/lib/modules/$kernel_version"
fi
echo "Ядро $kernel_version удалено."
done
if command -v update-grub >/dev/null 2>&1; then
echo "Обновление конфигурации GRUB..."
update-grub
elif command -v grub2-mkconfig >/dev/null 2>&1 && ! command -v grubby >/dev/null 2>&1; then
echo "Обновление конфигурации GRUB2..."
grub2-mkconfig -o /boot/grub2/grub.cfg
elif command -v grub-mkconfig >/dev/null 2>&1 && ! command -v grubby >/dev/null 2>&1; then
echo "Обновление конфигурации GRUB..."
grub-mkconfig -o /boot/grub/grub.cfg
fi
echo ""
echo "Все ядра xanmod удалены."
echo "Убедитесь, что у вас установлено другое ядро перед перезагрузкой."