Една от причините Linux да не се стартира е повреда в GRUB.
Когато GRUB е повреден, системата може да спре на grub rescue, да показва само черен екран или изобщо да не влиза в операционната система.
В тази статия ще разгледаме типичните симптоми, честите причини и основния начин за възстановяване на GRUB чрез Live USB.
1. Симптоми при повреден GRUB
- При стартиране се показва само
grub rescue - Появяват се грешки като “no such partition”
- Linux не се стартира и екранът остава черен
- След обновяване системата внезапно спира да зарежда
Ако виждате такива признаци, вероятно самият GRUB или дял, свързан със стартирането, е повреден.
2. Чести причини
- Прекъснато обновяване на системата
- Промяна на структурата на дяловете
- Dual boot с Windows е презаписал информацията за зареждане
- Повреда на EFI дяла или /boot дяла
- Проблеми с диска и липсващи файлове за зареждане
Този тип проблем се среща по-често след промени по дяловете, преинсталация на системата или обновяване на ядрото.
3. Първо стартирайте с Live USB
Ако Linux вече не може да се стартира нормално, най-безопасно е да стартирате компютъра чрез Linux Live USB. След това отворете терминал и проверете наличните дялове.
lsblk -f
Установете кой дял е Linux root дялът и кой е EFI дялът.
4. Монтирайте системата и възстановете GRUB
По-долу е даден типичен пример за възстановяване. Заменете имената на устройствата според вашата система.
sudo mount /dev/sda2 /mnt
sudo mount /dev/sda1 /mnt/boot/efi # само за UEFI системи
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
След като влезете в chroot, преинсталирайте GRUB.
grub-install /dev/sda
За UEFI системи може да използвате и следната команда:
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB
След това създайте отново конфигурацията за зареждане.
update-grub
Накрая излезте и рестартирайте.
exit
sudo reboot
5. Ако update-grub не е налична
В дистрибуции като Fedora често се използва grub2-mkconfig.
Например:
grub2-mkconfig -o /boot/grub2/grub.cfg
При UEFI системи пътят до файла може да е различен според дистрибуцията.
Обобщение
Повреденият GRUB е една от честите причини Linux да не се зарежда. В много случаи не е нужно да преинсталирате цялата система. Обикновено помага следният ред:
- Стартиране с Live USB
- Проверка на Linux и EFI дяловете
- Монтиране на системата и влизане в chroot
- Преинсталиране на GRUB
- Повторно създаване на конфигурацията за зареждане
Ако дискът не е сериозно повреден, системата често може да бъде възстановена по този начин.