GRUB încărcător de sistem de operare: configurație, descriere. Instalarea și repararea GRUB

Nu o duzină de utilizatori noi sisteme de operare, diferit de Windows, cu o sumă echitabilă de îndoială și scepticism, au întâlnit expresia "boot loader" în aceste zile. Și există un motiv absolut logic: majoritatea nou-veniților înainte de al utiliza pentru alte sisteme de operare mai puțin obișnuite în viața de zi cu zi au folosit același Windows. În acesta, acest încărcător este implementat cât se poate de primitiv și transparent. Și, deși acest lucru aduce într-o oarecare măsură comoditate utilizatorului mediu, reduce și funcționalitatea sistemului OS deja popular și universal. Prin urmare, toți cei care au decis să acorde atenție altor produse din industria IT, trebuie să vă familiarizați cu încărcătorul universal GRU, care în viitor va ajuta tangibil în lucrul cu mai multe sisteme de operare instalate pe un singur computer.

Unelte universale pentru sisteme non-universale

În primul rând, să începem cu numele GNU GRUB. Această abreviere de la engleza GRAND Bootloader unificat este tradus ca "principalul încărcător unificat". Creatorul său este organizația nonprofit "Project GNU", care a devenit faimă în domeniul IT pentru software-ul său distribuit în mod liber. Același GRUB este, în esență, un meniu pentru selectarea boot-ului solicitat de sistemul de operare utilizator dintr-o listă completă de sisteme acceptate:

  • Linux.
  • FreeBSD.
  • Solaris.

În acest caz, GRUB poate funcționa chiar și cu Windows. Cu toate acestea, pentru a lansa astfel de sisteme care nu sunt suportate direct de acest bootloader, există câteva nuanțe speciale pe care le vom învăța în detaliu mai târziu.

Modul de dezvoltare tehnologică

Creșterea popularității GRUB a fost un motiv fundamental care a determinat dezvoltarea și îmbunătățirea încărcătorului în viitor. Prima versiune a bootloader-ului, numită GRUB Legacy, încă mai are o slujbă excelentă cu bootloader-ul unificat pentru sistemele de tip UNIX. Sprijinul larg al companiilor serioase (precum RedHat și Novell) și al distribuțiilor de servere au oferit o viață extinsă în general.

grub install

Cu toate acestea, chiar și acest fapt a avut complet nici un impact asupra îmbunătățirii în continuare a bootloader, astfel încât utilizatorii primesc mai târziu în acest moment al versiunii timp GRUB 2. rescrise cu linii curate, grub 2 are cu greu să ne dea ceva în comun cu Legacy moștenire GRUB, cu excepția numelui . Astăzi, ca și versiunea implicită a sistemului de operare Ubuntu 9.10, grub a doua revizuire datorită structurii sale mai avansate și puternic a oprit complet orice dezvoltare ulterioară a deja foarte bine dovedit în Legacy trecut.

grub 2

Cu toate acestea, începătorul ar trebui să înțeleagă că GRUB 2 este mai complex decât versiunea anterioară, bootloader-ul. Prin urmare, pentru a proteja utilizatorii de eventualele dificultăți și probleme, atunci toate detaliile cele mai mici vor fi explicate pur și simplu, înțelesul care va permite utilizarea integrală a tuturor inovațiilor de cea mai recentă versiune, și sunt foarte puține:

  • Suport Script (cicluri, condiții, variabile și funcții).
  • Interfață grafică Adaugă posibilitatea schimbărilor flexibile ale aspectului încărcătorului la gustul individual al utilizatorului (GRUB 2 poate fi ușor schimbat dintr-o masă alb-negru într-o fereastră elegantă multi-colorată).
  • Capacitatea de încărcare dinamică a modulelor. Acest lucru va extinde funcționalitatea nu la etapa de asamblare, ci direct la timpul de execuție.
  • Compatibilitate cu arhitecturi diferite.
  • Suport adăugat pentru descărcarea Mac OS.
  • Stabilitate de lucru cu astfel de sisteme de fișiere cum ar fi: FAT16, FAT32, NTFS, orice versiune ext, XFS și ISO
  • Platforma de instalare încrucișată va oferi posibilitatea de a instala GRUB2 dintr-o arhitectură diferită
  • Introducerea modului de siguranță în caz de situații problematice.
  • Bug-uri fixe de la vechiul GRUB Legacy, care inițial nu a putut fi fixat datorită cerințelor de compatibilitate înapoi.

Rețineți că, sub denumirea de GRUB pentru comoditate, se va înțelege exact versiunea GRUB 2, pe care o vom analiza în întregime pentru fiecare utilizator neexperimentat.

Ai auzit vreodată de LILO?

Desigur, nu numai GRUB este limitat la alegerea utilizatorilor printre încărcătoarele de OS. Un analog similar este LILO - bootloader-ul Linux (LInux LOader), care încă nu își pierde relevanța. Cu toate acestea, în favoarea GRUB, există câteva caracteristici distinctive pe care concurentul direct nu se poate lăuda:

  • LILO suportă doar 16 configurații de boot, când GRUB suportă un număr nelimitat de astfel de config-uri.
  • GRUB poate porni în rețeaua locală, ceea ce nu se poate spune despre LILO.
  • În cele din urmă, LILO nu are aceeași interfață interactivă de comandă, la comoditatea pe care utilizatorii ultimei versiuni a GRUB-ului l-au obișnuit de mult.

linux grub

Singura trăsătură comună atât a încărcătorului este un necesar de fiecare dată pentru a compila toate modificările făcute în meniu. Funcția de salvare automată nu a fost disponibilă mult timp în bootloader-ul Linux. De asemenea, GRUB 2 nu se poate lauda cu o astfel de caracteristică convenabilă. Dar chiar și luând în considerare acest inconvenient pentru utilizare nuanță de zi cu zi, LILO pe mai multe puncte pierde concurentul său, astfel încât el devine tot mai răspândită în rândul utilizatorilor de calculatoare acasă.

Instalarea GRUB: Toate nuanțele și detaliile procesului

De la început, asigurați-vă că ați instalat Ubuntu sau că există un disc de boot (LiveCD). După pornirea sistemului, este necesar să apelați terminalul cu combinația de taste Ctrl + Alt + F2 și apoi să înregistrați următoarele comenzi în el:

- sudo add-apt-repository ppa: cjwatson / grub,

- sudo add-get update sudo add-get instalați grub2,

- sudo update-grub2.

Și chiar dacă nu aveți instalat Ubuntu, dar există un LiveCD, atunci procedura rămâne aceeași cu doar o mică diferență. Începeți de la asta disc de boot, selectați opțiunea "Încercați Ubuntu" - pentru a porni sistemul fără modificări pe computer. După aceasta, continuați să instalați încărcătorul GRUB în același mod din faza de apel terminal.

Pentru a verifica versiunea instalată a bootloader-ului, folosiți comanda: grub-install -v, și, de asemenea, direct la începutul Ubuntu.

GRUB Startup Algorithm

După ce GRUB Install completează, bootloader-ul va schimba mai întâi codul MBR. MBR este sectorul care conține Recordul de boot master, care conține:

  • codul încărcătorului principal (446 octeți);
  • un tabel de partiții care descriu atât partițiile principale, cât și partițiile secundare ale hard diskului (64 octeți).

grub bootloader

Datorită volumului mic al sectorului MBR, lansarea GRUB se desfășoară în două etape condiționate:

  1. MBR conține o legătură către fișierul de configurare (care poate fi pe orice hard disk, la discreția utilizatorului). Pentru aceasta, va fi determinată întreaga etapă de bootstrapping, care începe în a doua etapă.
  2. Fișierul de configurare ia în considerare toate setările și datele necesare pentru operarea GRUB. Dacă fișierul de configurare nu a fost găsit în a doua etapă, procesul de descărcare va fi terminat și utilizatorul va trebui să selecteze manual configurația de boot din linia de comandă.

Această structură de încărcare permite GRUB-ului să fie mai configurabil și mai flexibil decât mulți alți analogi, în care acest proces este simplificat până la compactitatea maximă.

Cele mai utilizate comenzi ale consolei

O mulțime de oportunități de lucru în modul consola ultimei versiuni de GNU GRUB, opțiunile de configurare și configurare nu vor lăsa, de asemenea, utilizatori indiferenți. Pentru a intra în acesta, este suficient să apăsați tasta "C" în timp ce este afișat meniul de pornire, după care va fi corect să introduceți comenzile de care aveți nevoie:

comenzidescriereExemplu de intrare în consola
lsO comandă universală pentru lucrul cu liste de hard-discuri și partiții. Poate fi utilizat pentru a afișa conținutul unui dosar.ls / boot / grub
Utilizarea sa va oferi informații complete despre absolut orice secțiune. Acesta va specifica tipul de sistem de fișiere de pe el, eticheta acestuia, UUID și data efectuării celor mai recente modificări.

ls (hd *, *)

*, * - numărul discului și numărul de partiție de pe acesta, respectiv

pisicăIeșire informații despre conținutul unui fișier specificat.pisică / cale / nume de fișier
LinuxAnalogul GRUB-ului de comandă kernel de la versiunea veche a Legacy, care permite încărcarea kernel-ului specificat Linux.

linux kernel_file

opțiunea1 = valoare

opțiunea2 opțiunea3

chainloaderTransferați comanda de încărcare la un alt încărcător de-a lungul lanțului. Încărcătorul va fi căutat numai în partiția care este setată ca root (desigur, cu un fișier executabil specific).

chainloader / cale / nume de fișier

rădăcinăCând se utilizează o comandă fără parametri, utilizatorul primește informații despre partiția rădăcină, precum și despre tipul de sistem de fișiere de pe acesta.rădăcină
Mai puțin frecvent (din cauza probabilității unei lucrări incorecte) este folosită pentru a transfera rădăcina la o altă partiție.

rădăcină (hd *, *)

*, * - numărul discului și numărul de partiție de pe acesta, respectiv

setCel mai adesea datorită stabilității și eficienței sale este folosit pentru a reassign partiția rădăcină de pe disc.

setați rădăcina = (hd *, *)

*, * - numărul discului și numărul de partiție de pe acesta, respectiv

căutare

O comandă pentru a căuta o partiție UUID, o etichetă sau un anumit fișier. Următoarele taste sunt utilizate pentru a seta parametrii de căutare:

  • u (sau --fs-uuid) - căutarea unei partiții de către UUID;
  • l (sau - eticheta) - căutare după etichetă;
  • f (sau --file) - căutarea unui fișier specific;
  • n (sau --no-floppy) - săriți la verificarea unității floppy;
  • s (sau --set) - setați partiția găsită ca valoare a variabilei specificate.

Comanda este utilă în cazul în care numerotarea discurilor și partițiilor "zboară", din cauza faptului că comanda rădăcină setată duce oriunde nicăieri sau partiției greșite a discului greșit.

căutați -u uuid_nego_section

caută -l etichetă de partiție

căutare -f / cale / nume fișier

lsfontsAfișează lista fonturilor încărcate în prezent.lsfonts
ajutorFolosit pentru a afișa întreaga listă disponibilă consolă comenzi.ajutor
Sau să emită comenzi care încep cu o anumită combinație de caractere.

help s - ajutor de ieșire pentru toate comenzile care încep cu s.

help set - Afișează ajutor despre comanda setată.

terminal_output.consoleTrecerea la schema de culori alb-negru a afișajului.terminal_output.console
background_image

Modificați imaginea de fundal în timp real. Ajută doar la alegerea unei astfel de opțiuni pentru proiectarea fonturilor, astfel încât acestea să poată fi distinse pe un fundal dat.

Notă: comanda nu modifică setările designului - imaginea rămâne în fundal numai în sesiunea curentă până la următoarea oprire.

background_image / path / filename

cizmăDescărcați calculatorul.cizmă
repornireReporniți computerul.repornire


oprire

Opriți calculatorul.oprire

După instalare GRUB: configurare și utilă în activitatea software-ului

Fișierul principal de configurare din GRUB2, spre deosebire de versiunea anterioară a Legacy, nu este /boot/grub/menu.lst, și deja /boot/grub/grub.cfg. Cu toate acestea, editarea directă este lipsită de sens - va fi generată cu fiecare schimbare salvată în fișierul de setări / etc / default / grub și în directorul script /etc/grub.d.

În / etc / implicit / grub setarea se limitează la modificarea punctului de descărcare standard și / sau a timpului de afișare al meniului:

  • Pentru primul punct de schimbare, parametrul GRUB_DEFAULT, a cărui valoare este numărul de articol din meniul de descărcare. Selectând orice alt element, utilizatorul ar trebui să cunoască comanda de pe lista generală (pentru aceasta trebuie să vedeți conținutul /boot/grub/grub.cfg și găsiți înregistrarea necesară în cont). În acest caz, nu uitați regulile de numerotare: primului element i se atribuie valoarea 0, al doilea este atribuit la 1, al treilea este alocat la 2 și așa mai departe.
  • Pentru întârzierea afișării meniului de pornire, parametrul GRUB_TIMEOUT, a cărui valoare indicată indică numărul de secunde în care va apărea acest ecran de pornire. La editarea acestui parametru există o caracteristică dificilă: setarea valorii la "-1", ecranul de pornire va fi afișat exact până când utilizatorul selectează un element.

Set de scripturi în /etc/grub.d găsiți toate sistemele și kernelurile instalate pe computer, creând un meniu de boot în grub.cfg. Pentru căutarea kernelurilor și a altor sisteme de operare, există două principale: 10_linux și 30_os-prober. fișier 40_custom vă permite să modificați grub prin adăugarea punctele de încărcare proprii, ceea ce este util pentru lucrul cu anumite tipuri de sistem start-up (rețineți că pentru orice modificări trebuie să se încheie cu o linie goală, sau ultimul punct de încărcare toată propunerea banală nu va fi afișată).

grub setup

Cu toate acestea, o modalitate mai ușoară de a edita GRUB în sistemul Ubuntu este utilitarul Grub-Customizer. Datorită simplității și interfeței intuitive, aceasta este cea mai bună opțiune pentru configurarea încărcătorului de încărcare, cel mai potrivit pentru începătorii neexperimentați. Pentru a instala, porniți terminalul (Ctrl + Alt + T), apoi introduceți alternativ următoarele comenzi:

- sudo add-apt-repository ppa: danielrichter2007 / grub-customizer,

- sudo add-get update,

- sudo add-get instalați grub-customizer.

Și, deși traducerea programului Grub-Customizer lasă mult de dorit, este ușor de înțeles:

  • Configurați lista - meniurile atunci când sistemul se învârte. Aici, ordinea punctelor sale este schimbată.
  • Setări de bază - Selectați sistemul pentru a fi încărcat în mod implicit și definiți timpul de expirare.
  • Aspect - editarea designului extern al meniului de pornire.

În plus față de toate varietățile de setări, utilizatorul ar trebui să acorde o atenție deosebită software-ului bine dovedit pentru lucrul cu GRUB, configurația și diagnosticarea cărora vor deveni mult mai confortabile:

  • Discul Super Grub - instrument simplu și convenabil pentru recuperarea rapidă a încărcătorului. În același timp, acesta poate funcționa nu numai cu GRUB și LILO, ci chiar și cu Windows în sine. Rulează de pe CD, unități flash sau dischete.
  • GParted - un editor de partiții de disc care rulează direct de pe CD. Cu aceasta, puteți efectua astfel de operații cu partiții și sisteme de fișiere pe ele, cum ar fi: crearea, ștergerea, redimensionarea, verificarea, mutarea și copierea.
  • SystemRescueCd - Distribuție Linux, special concepută pentru recuperarea în caz de dezastru.
  • TestDisk - Un utilitar care permite în totalitate diagnosticarea și restaurarea atât a partițiilor separate, cât și a discurilor de boot.

Cum funcționează încărcătorul de încărcare Windows?

Direct, din păcate, GRUB nu poate în nici un fel să încarce Windows x86 (versiunea 64bit nu este, de asemenea, nicio excepție), datorită căruia este necesar să se creeze mecanismul corespunzător de pornire a lanțului. Pentru a face acest lucru, în fișierul de configurare grub.cfg este necesar să adăugați mai multe linii de anumite comenzi:

- titlu Windows,

- rootnoverify (hd *, *),

- makeactive,

- încărcătorul cu lanț +1,

- boot.

Un exemplu și o descriere detaliată a acestuia din urmă au fost date doar în tabelul comenzilor consolei. Acum a venit același caz practic, când este util în lucrare. Cu toate acestea, înainte de el există câteva linii de pornire Windows la fel de importante:

  • rootnoverify (hd *, *) - același analog setați rădăcina. Acesta informează GRUB despre locația partiției pe care se află următoarea parte a codului de boot, dar nu o montează (pentru motivul clar că este imposibil pentru GRUB). Plătește din nou această parte (hd *, *) - acesta este numărul de disc și numărul de partiție, respectiv, pe care este instalat Windows.
  • makeactive - comanda dă partiția rădăcină specificată starea partiției de boot.

Acum aceeași echipă încărcătorul cu lanț +1, care transferă toate controalele suplimentare de pornire direct la încărcătorul Windows.

În cele din urmă, comanda finală de încărcare implementează începutul boot-ului, după care puteți rula în siguranță în sistemul de operare selectat.

edita grub

De asemenea, se întâmplă ca pe hard disk să nu fie instalate una, ci două sau chiar mai multe versiuni de Windows. Apoi implementați o lansare stabilă fără comenzi suplimentare de ascundere / afișare (ascunde / descoperi) este pur și simplu nerealistă. Linia de fund este că dacă în fișierul de configurare GRUB există o ascundere a unei partiții a unității, atunci Windows nu o va putea citi trivial. Și dacă secțiunea este vizibilă, atunci poate fi încărcată în consecință.

Dacă aveți mai multe sisteme de operare, mai întâi determinați ce instanță doriți să încărcați, apoi verificați locația exactă - trebuie să știți care parte a unității de hard disk este instalată. De exemplu, există două versiuni diferite ale Windows, localizate pe prima și a doua partiție ale aceleiași unități, iar utilizatorul trebuie să descarce al doilea. Pentru aceasta, următoarele modificări trebuie făcute în fișierul menu.lst:

- titlu Windows,

- ascunde (hd0,0),

- (hd0,1),

- rootnoverify (hd0,1),

- makeactive,

- încărcătorul cu lanț +1,

- boot.

În comparație cu codul eșantion anterior, comenzi ascunde și Unhide, datorită căruia utilizatorul va putea descărca sistemul de operare dorit dintr-o partiție dată a unității hard disk.

Reinstalarea GRUB în cazul unor probleme critice

Chiar și în cazul unor probleme tehnice, este destul de ușor să restabiliți GRUB. Pentru a începe, descărcați instalarea LiveCD, deschideți terminalul cu o comandă rapidă de la tastatură CTRL+ALT+T.

După aceasta, introducem una câte una următoarele comenzi:

  • sudo grub-install / dev / sda - instalează GRUB direct în discul MBR (sda - boot);
  • sudo update-grub - căutați alte înregistrări de boot pe hard disk (de exemplu, Windows).

Acum rămâne doar să reporniți computerul și asigurați-vă că bootloader-ul reinstalat este pe deplin operațional.

Problema de protecție împotriva reluării buclă

Necesitatea unui astfel de sistem de protecție integrat în încărcătorul de încărcare GRUB apare atunci când dimensiunile jurnalelor situate în directorul / var / log din cauza înregistrării necontrolate a informațiilor din ele cresc la volume inadmisibile. Într-un sistem care funcționează normal, sunt furnizate servicii speciale, arhivarea și ștergerea acestor jurnale în modul automat. Astfel, în majoritatea cazurilor, utilizatorul absolut nu are nevoie să-și petreacă timpul monitorizând volumul.

Cu toate acestea, aceleași servicii sunt pornite numai după încărcarea sistemului de operare. Înainte de aceasta, mărimea fișierelor de jurnal nu este absolut monitorizată deloc, ceea ce înseamnă că dacă sistemul se blochează în mod neașteptat și se reîncarcă în continuare, jurnalele vor crește doar în mărime. Și această creștere necontrolată va continua exact atâta timp cât repornirea durează din cauza unui eșec în sistem. Ulterior, toate acestea pot duce la umplerea completă a partiției pe care este localizat directorul / var / log, care este plină de aglomerația sistemului și imposibilitatea de a porni chiar și modul de recuperare.

linux grub

Din această situație catastrofică, sistemul GRUB, integrat în GRUB, protejează împotriva rebootărilor ciclice, ieșirea din meniul GRUB "spânzurat", așteptând intervenția explicită a utilizatorului. Protecția însăși este ghidată de valoarea variabilei recordfail, care este specificată în scriptul /boot/grub/grub.cfg. În timpul fiecărei descărcări, este setată ca recordfail = 1, iar la faza de boot final este resetată la recordfail = 0. Dacă o astfel de resetare nu sa întâmplat, încărcarea automată este complet împiedicată și aceeași protecție GRUB este activată.

Pentru aceasta, în / etc / defaul / grub găsim variabila GRUB_RECORDFAIL_TIMEOUT și să-i atribuiți o valoare în numărul de secunde în care meniul GRUB va aștepta ca utilizatorul să intervină dacă nu există nici o resetare a înregistrării de la 1 la 0. Apoi vom salva modificările cu comanda sudo update-grub, dezactivând astfel protecția împotriva reinițializării prin loopback.

Cui poate fi util? Numai pentru stații și servere în care nu există tastatură pentru informații I / O. Fără aceasta, în cazul unor astfel de probleme, sistemul nu poate fi încărcat deloc. Cazurile de ciclism de descărcare nu sunt atât de frecvente și apar în principal din cauza problemelor de putere sau din cauza problemelor legate de software.

Dezinstalați GRUB și reveniți la Windows: rapid, simplu și fără durere

În cazul în care aveți o întrebare "Cum să eliminați GRUB și să lăsați încărcătorul de încărcare al unui alt sistem de operare?", În primul rând, utilizatorul va avea nevoie de discul de instalare / unitatea flash. Să aruncăm o privire la un exemplu simplu: un utilizator elimină Linux de pe computerul său, lăsând doar Windows numai, dar nu îl poate descărca din cauza unei erori Grub eroare. Pentru a rezolva complet problema, trebuie să restaurați încărcătorul de biți Windows x86 / 64:

  1. Încărcați de pe unitatea de instalare, setând-o la prima prioritate la pornirea în BIOS
  2. Începând din mediul de instalare, selectați partiția de recuperare a sistemului.
  3. Din lista apărută a instrumentelor alegem linia de comandă, în care vom asocia următoarele comenzi una câte una:
  • BOOTREC.EXE / FixBoot.
  • BOOTREC.EXE / FixMbr.

Deci, cum să eliminați GRUB poate fi pentru mai multe acțiuni, după ce toate operațiunile efectuate cu succes a reporni computerul și fără probleme au fost de lucru în sistemul Windows.

Distribuiți pe rețelele sociale:

înrudit
Sisteme de operare de rețea, caracteristicile acestora și criteriile de selecțieSisteme de operare de rețea, caracteristicile acestora și criteriile de selecție
Boot.ini. Fișier de boot în WindowsBoot.ini. Fișier de boot în Windows
Sisteme de operare: exemple cu descrieri. Exemple de sisteme de operare de rețeaSisteme de operare: exemple cu descrieri. Exemple de sisteme de operare de rețea
Windows Boot Manager: ce este? Concepte, erori și metode de corectare a acestoraWindows Boot Manager: ce este? Concepte, erori și metode de corectare a acestora
Bootloader - ce este? Încărcător de sistem de operareBootloader - ce este? Încărcător de sistem de operare
Exemple de sisteme de operare în timp real. Exemple de sisteme de operare de rețeaExemple de sisteme de operare în timp real. Exemple de sisteme de operare de rețea
Refacerea sectorului de boot al Windows 7Refacerea sectorului de boot al Windows 7
Care este cel mai bun sistem de operare pentru un netbook?Care este cel mai bun sistem de operare pentru un netbook?
"Windows 11" - numele următoarei versiuni a sistemului de operare de la Microsoft?"Windows 11" - numele următoarei versiuni a sistemului de operare de la Microsoft?
Clasificarea sistemelor de operareClasificarea sistemelor de operare
» » GRUB încărcător de sistem de operare: configurație, descriere. Instalarea și repararea GRUB