49 lines
1.2 KiB
Bash
49 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
# Manual GRUB fix - completely rewrite the GRUB_CMDLINE_LINUX_DEFAULT line
|
|
|
|
set -e
|
|
|
|
if [ "$EUID" -ne 0 ]; then
|
|
echo "Please run as root: sudo $0"
|
|
exit 1
|
|
fi
|
|
|
|
echo "=== Fixing GRUB Configuration (Manual Method) ==="
|
|
echo ""
|
|
|
|
GRUB_FILE="/etc/default/grub"
|
|
|
|
# Backup
|
|
cp "$GRUB_FILE" "$GRUB_FILE.backup.manual.$(date +%Y%m%d-%H%M%S)"
|
|
echo "✓ Backup created"
|
|
|
|
# Replace the entire line with a clean version
|
|
sed -i 's|^GRUB_CMDLINE_LINUX_DEFAULT=.*|GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_iommu=on iommu=pt vfio-pci.ids=1002:1586,1002:1640 amdgpu.gttsize=131072 ttm.pages_limit=33554432 amdgpu.si_support=1 amdgpu.cik_support=1 radeon.si_support=0 radeon.cik_support=0"|' "$GRUB_FILE"
|
|
|
|
echo "✓ GRUB configuration updated"
|
|
echo ""
|
|
echo "New configuration:"
|
|
grep "GRUB_CMDLINE_LINUX_DEFAULT" "$GRUB_FILE"
|
|
echo ""
|
|
|
|
# Update GRUB
|
|
echo "Updating GRUB..."
|
|
update-grub
|
|
|
|
echo ""
|
|
echo "=== Fix Complete ==="
|
|
echo ""
|
|
echo "Changes made:"
|
|
echo " - Removed: amd_iommu=off"
|
|
echo " - Added: amd_iommu=on iommu=pt"
|
|
echo " - Added: vfio-pci.ids=1002:1586,1002:1640"
|
|
echo ""
|
|
echo "⚠️ REBOOT REQUIRED: sudo reboot"
|
|
echo ""
|
|
echo "After reboot, check:"
|
|
echo " cat /proc/cmdline | grep amd_iommu"
|
|
echo " Should show ONLY: amd_iommu=on"
|
|
|
|
|