Imaginează-ți scenariul: ești gata să începi o nouă zi, deschizi calculatorul și, în loc de ecranul de login familiar, te lovești de un mesaj rece și criptic: grub>
sau, mai rău, grub rescue>
. O undă de panică te străbate. Toate fișierele tale, munca ta, amintirile tale digitale – totul pare brusc inaccesibil. Nu ești singur! Această situație este surprinzător de comună în lumea utilizatorilor de Linux, iar vestea bună este că, în cele mai multe cazuri, nu este sfârșitul lumii digitale. 🌍 Sistemul tău este acolo, iar cu puțină răbdare și cunoștințe, îl vei aduce înapoi la viață. Acest articol este ghidul tău complet pentru a depăși această provocare și a-ți recupera controlul.
Ce este GRUB și de ce ne dă bătăi de cap? 🤔
Înainte de a ne scufunda în soluții, să înțelegem inamicul (sau, mai degrabă, salvatorul nostru eșuat). GRUB, sau Grand Unified Bootloader, este o componentă esențială a sistemelor de operare bazate pe Linux. Rolul său este critic: el este primul program care rulează după ce BIOS-ul sau UEFI-ul computerului tău initializează hardware-ul. Misiunea sa principală este să „găsească” sistemul tău de operare pe disc și să-l pornească. Fără GRUB, computerul tău pur și simplu nu știe unde să caute nucleul Linux (kernel-ul) și fișierele de pornire. Când vezi promptul grub>
, înseamnă că GRUB a pornit, dar nu a reușit să găsească fișierul de configurare sau să încarce anumite module necesare pentru a-ți afișa meniul obișnuit și a-ți lansa sistemul de operare. 😫
Motivele pentru o defecțiune GRUB sunt diverse, dar se încadrează adesea în câteva categorii:
- Actualizări eșuate: O actualizare de sistem care a mers prost poate corupe fișierele de configurare GRUB.
- Modificări ale partițiilor: Redimensionarea, ștergerea sau crearea de noi partiții poate deruta GRUB, deoarece locațiile fișierelor sale s-au schimbat.
- Instalarea unui alt sistem de operare: Adăugarea Windows-ului într-un sistem dual-boot poate suprascrie GRUB-ul.
- Coruperea sistemului de fișiere: Uneori, sectoarele defecte sau erorile de disc pot afecta fișierele vitale ale GRUB.
- Instalare incorectă inițială: O eroare la instalarea Linux-ului poate lăsa GRUB într-o stare vulnerabilă.
Primul Ajutor: Diagnosticarea Prompt-ului GRUB 🩺
Există o diferență cheie între grub>
și grub rescue>
. Înțelegerea acesteia te va ajuta să alegi calea corectă pentru remediere:
- Dacă ai
grub>
: Aceasta este versiunea „mai prietenoasă”. Înseamnă că GRUB s-a încărcat parțial și are acces la modulele de bază și la comenzi esențiale. Cel mai probabil, nu a găsit fișierulgrub.cfg
sau nu a putut accesa partiția de pe care ar trebui să pornească. - Dacă ai
grub rescue>
: Aceasta este situația mai dificilă. Înseamnă că GRUB nu a putut găsi nici măcar fișierele sau modulele sale de bază, indicând adesea că partiția care conținea directorul/boot/grub
este coruptă, ștearsă sau inaccesibilă.
Indiferent de prompt, primul pas este să te calmezi și să nu intri în panică. Soluțiile sunt la îndemână! 🧘♀️
Soluția 1: Repararea Temporară din Prompt-ul grub>
(Fără USB Live)
Această metodă funcționează atunci când GRUB este prezent, dar nu știe de unde să încarce sistemul de operare. Este o soluție temporară pentru a porni sistemul, după care vom face o reparație permanentă. 🛠️
- Identifică partițiile:
Folosește comanda
ls
pentru a vedea discurile și partițiile disponibile. Vei vedea ceva de genul(hd0) (hd0,msdos1) (hd0,msdos2) (hd1) ...
sau(hd0,gpt1) (hd0,gpt2) ...
. Discurile sunthdX
, iar partițiilehdX,Y
.
Caută partiția care conține fișierele de sistem. Poți încercals (hdX,Y)/
pentru a vedea conținutul. Caută un director/boot
sau/usr
. De exemplu,ls (hd0,msdos1)/boot/grub
ar trebui să arate fișierele GRUB.💡 Sfat: Majoritatea sistemelor Linux au fișierele de pornire în
/boot
. Când găsești directorul/boot
(care ar trebui să conținăvmlinuz
șiinitrd.img
), ai identificat partiția rădăcină (sau partiția/boot
dacă este separată). - Setează partiția rădăcină:
Presupunând că ai găsit partiția corectă la
(hd0,msdos1)
, tastează:set root=(hd0,msdos1)
Apoi, setează prefixul GRUB. Acesta indică unde se găsesc fișierele GRUB:
set prefix=(hd0,msdos1)/boot/grub
- Încarcă modulele necesare:
Pentru a activa funcționalități de bază, ai nevoie de câteva module:
insmod normal
Dacă nu funcționează (sau dacă ai
grub rescue>
), s-ar putea să ai nevoie să încarci mai multe module, cum ar filinux
și tipul de sistem de fișiere (de exemplu,ext2
,fat
,ntfs
):insmod linux
insmod ext2
(sauext4
, depinde de formatul partiției tale root) - Încarcă kernel-ul Linux și initrd:
Acum trebuie să spui GRUB unde se află kernel-ul și fișierul initrd. Folosește comanda
ls (hd0,msdos1)/boot/
pentru a găsi numele exact al fișierelorvmlinuz
șiinitrd.img
. Ele vor include versiunea kernel-ului, de exempluvmlinuz-5.15.0-78-generic
șiinitrd.img-5.15.0-78-generic
.linux /boot/vmlinuz-XXX-generic root=/dev/sdXN ro quiet splash
Înlocuiește
XXX-generic
cu versiunea kernel-ului găsită și/dev/sdXN
cu locația reală a partiției tale rădăcină (ex:/dev/sda1
). Poți afla acest lucru folosindls (hd0,msdos1)
. Dacăhd0,msdos1
este/dev/sda1
, atunciroot=/dev/sda1
.initrd /boot/initrd.img-XXX-generic
- Pornește sistemul:
În cele din urmă, dă comanda:
boot
Dacă totul a mers bine, sistemul tău ar trebui să pornească normal. 🎉 Dar nu uita, această remediere este temporară. Odată ce ai intrat în sistem, trebuie să faci o reparație permanentă!
Soluția 2: Repararea Permanentă și Robustă cu un USB Live 🚀
Aceasta este metoda cea mai recomandată și eficientă, mai ales dacă te confrunți cu grub rescue>
sau dacă soluția temporară de mai sus nu a funcționat. Necesită un USB bootabil cu o distribuție Linux (aceeași cu cea instalată pe disc, dacă este posibil, dar aproape orice Live USB modern va funcționa).
Pasul 1: Pregătirea USB-ului Live (dacă nu ai deja unul)
Dacă sistemul tău este singurul computer funcțional și nu poți porni, va trebui să folosești un alt computer pentru a crea stick-ul USB.
- Descarcă imaginea ISO a distribuției tale Linux preferate (Ubuntu, Mint, Fedora etc.).
- Folosește un utilitar precum Rufus (pentru Windows) sau Etcher (pentru Windows, macOS, Linux) pentru a scrie imaginea ISO pe un stick USB (minim 4GB).
Pasul 2: Boot de pe USB Live
Introdu stick-ul USB în computerul afectat și pornește-l. Va trebui să intri în meniul de boot (de obicei F2, F10, F12, Del, Esc la pornire) pentru a selecta USB-ul ca dispozitiv de pornire. Alege opțiunea „Try Ubuntu/Linux Mint” sau similar. ✅
Pasul 3: Montarea Partițiilor
Odată ce ai intrat în mediul Live, deschide un terminal (Ctrl+Alt+T).
- Identifică partiția rădăcină (root) a sistemului tău:
Folosește comanda
sudo fdisk -l
saulsblk
pentru a vedea lista tuturor partițiilor. Caută partiția unde este instalat sistemul tău Linux (de obicei de tipext4
). Să presupunem că este/dev/sda1
. - Montează partiția rădăcină:
sudo mount /dev/sda1 /mnt
(Înlocuiește/dev/sda1
cu partiția ta reală) - Montează partiția /boot (dacă este separată):
Dacă ai o partiție
/boot
separată (să zicem/dev/sda2
), monteaz-o în/mnt/boot
:sudo mount /dev/sda2 /mnt/boot
(Înlocuiește/dev/sda2
cu partiția ta/boot
reală)Dacă nu ești sigur, de obicei
/boot
se află pe partiția rădăcină.
Pasul 4: Chrooting în Sistemul Afectat
Aceasta este o etapă crucială care te va permite să rulezi comenzi ca și cum ai fi deja în sistemul tău instalat, nu în mediul Live.
- Montează directoarele vitale:
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
- Chroot în sistem:
sudo chroot /mnt
Acum, prompt-ul terminalului se va schimba, indicând că ești „în” sistemul tău defect. 🥳
Pasul 5: Reinstalarea și Actualizarea GRUB
Acum, că ești în sistemul afectat, poți repara GRUB.
- Reinstalează GRUB:
Va trebui să instalezi GRUB pe dispozitivul principal (Master Boot Record – MBR sau EFI partition), nu pe o partiție specifică. De obicei, acesta este
/dev/sda
(fără număr de partiție).grub-install /dev/sda
(Înlocuiește/dev/sda
cu discul tău principal, verifică cusudo fdisk -l
)Dacă ai un sistem UEFI, comanda poate varia ușor și ar trebui să te asiguri că ai montat și partiția EFI (de obicei
/dev/sdaX
de tip FAT32) în/mnt/boot/efi
înainte de chroot, dacă nu este deja montată automat. GRUB ar trebui să detecteze automat dacă este un sistem UEFI și să se instaleze corespunzător. Uneori poate fi necesară specificarea explicită:grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu --recheck /dev/sda
(ajustează--bootloader-id
și--efi-directory
după caz). - Actualizează configurația GRUB:
Această comandă va scana sistemul tău pentru toate sistemele de operare instalate și va genera un fișier
grub.cfg
nou și corect.update-grub
Ar trebui să vezi un mesaj care indică că detectează kernel-ul Linux și, eventual, alte sisteme de operare (cum ar fi Windows).
Pasul 6: Ieșire, Demontare și Repornire
Ai terminat partea de reparații. Acum trebuie să ieși din mediul chroot și să repornești:
- Ieși din chroot:
exit
- Demontă partițiile:
Este important să demontezi curat pentru a evita coruperea datelor.
sudo umount /mnt/dev
sudo umount /mnt/proc
sudo umount /mnt/sys
sudo umount /mnt/boot
(dacă ai montat o partiție/boot
separată)
sudo umount /mnt
- Repornește:
sudo reboot
Asigură-te că scoți stick-ul USB Live când sistemul începe să se repornească. Dacă totul a fost făcut corect, ar trebui să vezi meniul GRUB familiar și să poți porni în sistemul tău. 🎉
O soluție și mai simplă: Boot-Repair 🪄
Pentru utilizatorii de distribuții bazate pe Ubuntu/Debian, există un utilitar fantastic numit Boot-Repair. Acesta automatizează mulți dintre pașii manuali de mai sus și este adesea cea mai rapidă și simplă soluție.
- Boot de pe un USB Live (ca la Pasul 2 de mai sus).
- Deschide terminalul și adaugă depozitul Boot-Repair:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt update
sudo apt install -y boot-repair
- Lansează Boot-Repair:
boot-repair
- În fereastra Boot-Repair, alege opțiunea „Recommended repair”. Utilitarul va scana sistemul tău și va încerca să repare automat GRUB. Urmează instrucțiunile de pe ecran.
- După finalizare, repornește sistemul.
Din experiența colectivă și datele rapoartelor de erori, reparațiile GRUB sunt printre cele mai frecvente intervenții necesare în Linux, însă au o rată de succes remarcabil de mare. Peste 90% din cazuri pot fi rezolvate prin reinstalarea sau actualizarea GRUB utilizând un mediu live. Eșecurile persistente indică adesea probleme mai profunde, cum ar fi coruperea hardware-ului sau a sistemului de fișiere, necesitând o investigație suplimentară.
Prevenție este cel mai bun remediu! 🛡️
Acum că știi cum să ieși dintr-o astfel de situație, iată câteva sfaturi pentru a o evita pe viitor:
- Backup-uri regulate: Folosește un utilitar precum Timeshift sau Clonezilla pentru a face copii de siguranță ale sistemului tău.
- Dispozitiv USB Live la îndemână: Păstrează mereu un stick USB bootabil cu distribuția ta Linux preferată. Poate fi un salvator!
- Atenție la actualizări: Nu întrerupe niciodată o actualizare de sistem. Asigură-te că ai o conexiune stabilă la internet.
- Fii precaut cu partițiile: Orice modificare a partițiilor poate fi riscantă. Fă backup înainte de a redimensiona sau șterge.
- Înțelege-ți sistemul: Cu cât înțelegi mai bine cum funcționează partițiile și GRUB, cu atât ești mai pregătit să rezolvi problemele.
Concluzie: Ești Stăpânul Sistemului Tău! 💪
Problemele GRUB pot fi intimidante, dar, așa cum ai văzut, ele sunt aproape întotdeauna reparabile. Fie că apelezi la comenzi manuale din prompt-ul GRUB, fie că folosești puterea unui USB Live pentru o reparație permanentă, ai instrumentele necesare pentru a-ți recupera sistemul. Nu lăsa o eroare de boot să te descurajeze. Fiecare problemă rezolvată este o experiență de învățare care te face un utilizator Linux mai competent și mai încrezător. Prin urmare, data viitoare când vei vedea grub>
, în loc de panică, vei simți o ușoară iritare și vei ști exact ce ai de făcut. Felicitări, ai salvat situația! 🥳