Instaliranje grub uefi ubuntu 16.04 pokretačkog programa. Kako popraviti GRUB2 ako se Ubuntu ne pokrene

Original: GRUB 2: Izliječite svoj bootloader
Autor: Mayank Sharma
Datum objave: 10. septembar 2015
Prijevod: A. Panin
Datum prenosa: 16. decembar 2015

Ne postoji mnogo stvari koje mogu biti toliko dosadne kao neoperabilnost pokretačkog programa. Zbog toga ćemo naučiti da maksimalno iskoristimo GRUB 2 boot loader i nastavimo da radi.

čemu služi?

    GRUB 2 je najpopularniji boot loader koji se koristi u gotovo svakoj Linux distribuciji.

    Boot loader je važna softverska komponenta koja, međutim, u nekim slučajevima možda neće ispravno funkcionirati.

    GRUB 2 je proširiv i fleksibilan pokretač koji podržava mnoge opcije konfiguracije.


Linux boot loader GRUB 2 je kvalitetna i fleksibilna softverska komponenta. Iako ovaj boot loader nije jedini pokretač koji podržava Linux, on je najpopularniji i koriste ga gotovo sve poznate distribucije. Rad GRUB 2 boot loadera može se podijeliti u dvije faze. Prvo, otvara meni sa nazivima svih operativnih sistema instaliranih na računaru i omogućava vam da izaberete jedan od njih. Drugo, učitava jezgro Linuxa kada bira operativni sistem na osnovu odgovarajućeg kernela koristeći meni za pokretanje.

Očigledno, kada koristite operativni sistem zasnovan na Linux kernelu, jednostavno ne možete bez pokretača. Istovremeno, boot loader je gotovo najmisterioznija komponenta Linux distribucije. Kao dio ovog vodiča, upoznaćemo vas sa nekim od karakteristika ovog pokretačkog programa i naučiti vas kako da rešite probleme povezane sa njegovim nepravilnim funkcionisanjem.

Najvažnija komponenta GRUB 2 pokretača je zbirka tekstualnih datoteka kao i nekoliko shell skripti. Prva komponenta ovog kompleta koju treba provjeriti nalazi se u / etc / default / grub direktoriju. Ovo je tekstualna datoteka koju možete koristiti za postavljanje vrijednosti konfiguracijskih varijabli i drugih opcija izbornika GRUB 2 (pogledajte odjeljak o opcijama izbornika prilagođenog pokretanja).

Još jedan važan direktorij vezan za GRUB 2 je /etc/grub.d. Ovaj direktorij sadrži sve skripte koje čine opis svake stavke menija. Ovi nazivi skripti moraju imati prefiks sa dvije cifre. Ovi prefiksi imaju za cilj da postave redosled kojim će se skripte izvršavati, kao i redosled odgovarajućih stavki u meniju GRUB 2. Prvo se čita datoteka 00_header, nakon čega se konfiguraciona datoteka / etc / default / grub je raščlanjeno. Nakon toga, stavke menija za Linux kernele trenutnog sistema se generišu pomoću 10_linux skripte. Ova skripta kreira jednu normalnu stavku menija za pokretanje za Linux kernel i jednu stavku menija za oporavak sistema za isti Linux kernel sa /boot particije.

Zatim se izvršavaju skripte za traženje drugih operativnih sistema, kao što su 30_os-prober i 40_custom. Os-prober skripta kreira stavke menija za druge kernele i druge operativne sisteme koji se nalaze na drugim particijama hard diska. Može prepoznati instalirane Linux, Windows, BSD i Mac OS X sisteme. Ako koristite konfiguraciju particija tvrdog diska koja je previše egzotična za os-prober scenario, sprečavajući prepoznavanje instalirane distribucije, možete dodati opis ove distribucije na 40_custom skriptu (pogledajte " Prilagođene stavke menija za pokretanje ").

GRUB 2 ne zahtijeva ručno uređivanje konfiguracijskih datoteka za promjenu parametara pokretanja sistema: umjesto toga, omogućava vam da generišete /boot/grub/grub.cfg konfiguracionu datoteku koristeći grub2-mkconfig uslužni program. Ovaj uslužni program vam omogućava da raščlanite skripte iz /etc/grub.d direktorija, kao i / etc / default / grub konfiguracijsku datoteku da automatski generišete opis parametara pokretanja sistema.

Vraćanje pokretača u grafički način rada

Velika većina problema sa bootloaderom GRUB 2 može se jednostavno riješiti pritiskom na jedno dugme za popravku pokretanja. Ova elegantna, jednostavna aplikacija ima intuitivno korisničko sučelje i omogućava vam skeniranje i prepoznavanje različitih tipova diskova i šema particija diska, a može i otkriti lokaciju i ispravno identificirati operativne sisteme instalirane unutar ovih particija. Uslužni program može da radi na običnim računarima sa glavnim zapisom za pokretanje (MBR) i na novim računarima sa UEFI i GUID particionom tabelom (GPT).

Najlakši način da koristite uslužni program Boot Repair je da ga instalirate u okviru Live sesije Ubuntu distribucije. Pokrenite živu Ubuntu distribuciju na mašini sa neoperativnim pokretačem i instalirajte aplikaciju Boot Repair tako što ćete prvo dodati odgovarajući PPA sa naredbom:

Sudo add-apt-repository ppa: yannubuntu / Boot Repair

Nakon toga, ažurirajte listu spremišta koristeći naredbu:

Sudo apt-dobi ažuriranje

Konačno, možete instalirati aplikaciju pomoću naredbe:

Sudo apt-get install -y Popravak pokretanja

Kada se proces instalacije završi, moći ćete pokrenuti aplikaciju. Skeniraće vaš čvrsti disk pre nego što prikaže korisnički interfejs koji se sastoji od nekoliko dugmadi. Da biste dovršili korake koje je predložila aplikacija, možete jednostavno kliknuti na dugme "Preporučena popravka", koje će riješiti većinu problema povezanih s bootloaderom. Nakon vraćanja pokretačkog programa, uslužni program će prikazati vezu koju biste trebali zapamtiti. Klikom na ovu vezu, možete vidjeti detaljne informacije o vašim diskovima, uključujući njihove particije, kao i sadržaj važnih konfiguracijskih datoteka GRUB 2, kao što su datoteke u / etc / default / grub direktoriju i / boot / grub / grub fajl. cfg. Ako aplikacija ne uspije da vrati vaš bootloader, možete postaviti ovu vezu na forum vaše distribucije kako bi se posjetitelji mogli upoznati sa dijagramom particija vašeg tvrdog diska i dati korisne savjete.

Popravka pokretača

Problemi sa GRUB 2 boot loader-om mogu dovesti sistem u različita stanja. Tekst koji se prikazuje na ekranu umesto menija pokretača označava trenutno stanje sistema. Ako sistem prestane da se diže na grub> prompt, može se zaključiti da su GRUB 2 moduli učitani, ali konfiguraciona datoteka grub.cfg nije mogla biti učitana. Ovaj prompt se prikazuje u komandnoj ljusci s punim mogućnostima pokretača, pomoću koje možete izvršiti nekoliko koraka za pokretanje sistema. Ako vidite grub rescue> prompt, lako je zaključiti da pokretač ne može pronaći svoje module, kao ni datoteke koje opisuju parametre pokretanja sistema. Međutim, u slučaju da je na ekranu vašeg računara prikazana samo reč "GRUB", možete izvući razočaravajući zaključak da boot loader nije mogao pronaći čak ni osnovne informacije koje se obično čuvaju u MBR-u.

Ove probleme sa GRUB-om 2 možete riješiti korištenjem ili Live CD-a bilo koje distribucije ili ljuske GRUB 2. Ako imate sreće i vaš pokretač prikaže pozdrav grub>, možete koristiti punu snagu ugrađenog GRUB-a 2 shell da popravi sve greške.

Sljedeće naredbe će raditi i za grub> prompt i za grub rescue> prompt. Naredba set pager = 1 omogućava mehanizmu pomicanja teksta da spriječi njegovo automatsko pomicanje. Alternativno, možete koristiti naredbu ls, koja će na isti način ispisati sve vidljive GRUB 2 particije na vašem tvrdom disku:

Grub> ls (hd0) (hd0, msdos5) (hd0, msdos6) (hd1, msdos1)

Kao što vidite, ova naredba vam omogućava da prikažete informacije o šemi tablice particija tvrdog diska zajedno sa informacijama o samim particijama.

Alternativno, možete koristiti naredbu ls na svakoj particiji tvrdog diska da pronađete particiju sa vašim korijenskim datotečnim sistemom:

Grub> ls (hd0,5) / izgubljen + pronađen / var / etc / media / bin / initrd.gz boot / dev / home / selinux / srv / tmp / vmlinuz

Možete ispustiti identifikator tipa odjeljka msdos kada pišete naziv odjeljka. Također, ako preskočite kosu crtu na kraju naziva particije i izvršite, na primjer, naredbu kao što je ls (hd0,5), dobićete informacije o particiji, uključujući informacije o tipu sistema datoteka, njegovoj ukupnoj veličini i vrijeme posljednje izmjene. Ako vaš čvrsti disk ima više root particija, možete pročitati sadržaj datoteke / etc / issue pomoću naredbe cat da identifikujete distribuciju na isti način: cat (hd0,5) / etc / issue.

Pod pretpostavkom da ste pronašli ispravan korijenski sistem datoteka pod (hd0,5), morate osigurati da sistem datoteka sadrži /boot / grub direktorij i sliku jezgre Linuxa s imenom sličnim vmlinuz-3.13.0-24- generičkom fajlu koji želite da preuzmete. Sada, da biste pokrenuli sistem, samo treba da unesete sledeće komande:

Grub> set root = (hd0,5) grub> linux /boot/vmlinuz-3.13.0-24-generic root = / dev / sda5 grub> initrd /boot/initrd.img-3.13.0-24-generic

Prva komanda govori pokretaču GRUB 2 informacije o particiji hard diska na kojoj se nalaze distributivni fajlovi za pokretanje. Druga komanda joj takođe šalje informacije o lokaciji datoteke slike kernela unutar navedene particije čvrstog diska, kao i informacije o lokaciji korijenskog sistema datoteka. Poslednji red vam omogućava da odredite lokaciju početne datoteke slike diska, čiji se sadržaj pohranjuje u memoriju i koristi tokom procesa pokretanja kernela. Možete koristiti funkciju automatskog dovršavanja, koja će vam uštedjeti dovoljno vremena i truda prilikom unosa imena datoteka kernela i početne slike diska.

Unos ovih redova treba da se završi unošenjem komande za podizanje sistema nakon sledećeg pozdrava grub>, koji pokreće pokretanje navedenog operativnog sistema od strane GRUB 2.

Vaše radnje bi trebale biti malo drugačije ako naiđete na pozdrav grub rescue>. Budući da pokretač nije mogao otkriti i učitati nijedan od potrebnih modula, morat ćete ih ručno učitati:

Grub rescue> set root = (hd0,5) grub rescue> insmod (hd0,5) /boot/grub/normal.mod grub rescue> normal grub> insmod linux

Očigledno, kao i prije, nakon efektivne upotrebe naredbe ls za lociranje Linux root particije, morat ćete tu particiju označiti naredbom set. Zatim morate učitati normalni modul, nakon čega će se vratiti u standardni način rada s pozdravom grub>. Sljedeća naredba učitava linux modul ako nije učitan automatski. Nakon učitavanja ovog modula, možete nastaviti s prijenosom informacija o lokaciji datoteka slike kernela i početne slike diska u program za učitavanje sistema i inicirati pokretanje distribucije pomoću naredbe boot.

Nakon uspješnog pokretanja distribucije, ne zaboravite na potrebu ponovnog generiranja GRUB 2 konfiguracijske datoteke pomoću naredbe:

Grub-mkconfig -o /boot/grub/grub.cfg

Također ćete morati instalirati kopiju pokretačkog programa u glavni zapis za pokretanje koristeći naredbu:

GRUB 2 i UEFI

Mašine sa UEFI firmverom (odnosno, skoro sve mašine prodate u proteklih nekoliko godina) dodale su novi nivo složenosti procesu dijagnostikovanja problema sa pokretačkim programom GRUB 2. sa UEFI firmverom se ne razlikuje značajno od procedure za vraćanje u prethodno stanje Operativnost istog pokretačkog programa na mašini bez UEFI firmvera, razne promene su napravljene u novim verzijama firmvera, što dovodi do različitih rezultata procesa restauracije pokretača.

Na sistemima zasnovanim na UEFI, ne morate ništa da instalirate u glavni zapis za pokretanje. Umjesto toga, morat ćete instalirati Linux pokretački program s omogućenim EFI na EFI sistemsku particiju (ESP) i odabrati taj pokretač kao zadani pomoću alata kao što je efibootmgr na Linuxu ili bcdedit na Windowsu.

U ovom trenutku, GRUB 2 boot loader bi trebao biti ispravno instaliran tokom instalacije bilo koje od popularnih Linux distribucija, što omogućava potonjoj da uspješno koegzistira sa Windowsom 8. Međutim, ako kao rezultat dobijete neispravan pokretački program, možete vratite sistem na rad koristeći živu sliku distribucije Linuxa. Prilikom pokretanja slike distribucije uživo, trebali biste biti sigurni da se dižete u UEFI modu. Meni za pokretanje računara treba da sadrži dve stavke za svaki prenosivi medij – za pokretanje u normalnom režimu i u UEFI režimu. Koristite potonji način da pristupite EFI varijablama koristeći datoteke iz / sys / firmware / efi / direktorija.

Iz živog okruženja montirajte korijenski sistem datoteka neuspješno instalirane distribucije na način opisan u ovom vodiču. Također ćete morati montirati svoju EFI sistemsku particiju (ESP). Pod pretpostavkom da ova particija odgovara datoteci uređaja / dev / sda1, tada ovu particiju možete montirati pomoću sljedeće naredbe:

Sudo mount / dev / sda1 / mnt / boot / efi

Nakon toga, morate učitati modul kernela efivars pomoću naredbe modprobe efivars prije kreiranja chroot okruženja s korijenskim sistemom datoteka neuspjele distribucije kao što je opisano u ovom vodiču.

Sada, ako koristite Fedora distribuciju, možete ponovo instalirati pokretač pomoću sljedeće naredbe:

Yum ponovo instalirajte grub2-efi podlošku

Nakon toga, trebali biste pokrenuti naredbu za generiranje novog konfiguracijskog fajla pokretača:

Grub2-mkconfig -o /boot/grub2/grub.cfg

Korisnici Ubuntu distribucije mogu izvršiti istu operaciju sa naredbom:

Apt-get install --reinstall grub-efi-amd64

Nakon vraćanja pokretača, izađite iz chroot okruženja, isključite sve montirane particije tvrdog diska i ponovo pokrenite računar tako što ćete otići na GRUB 2 meni.

Da biste deaktivirali skriptu iz /etc/grub.d direktorija, samo trebate ukloniti izvršni bit koristeći naredbu sličnu naredbi chmod -x /etc/grub.d/20_memtest86+, koja uklanja red "Memory Test" iz meni za pokretanje

Druže gdje je moj GRUB?

Dobra stvar kod pokretača GRUB 2 je to što se može ponovo instalirati kad god je potrebno. Stoga, u slučaju da izgubite GRUB 2 pokretački program, na primjer, nakon što ga Windows zamijeni vlastitim pokretačkim programom, možete vratiti GRUB 2 izvođenjem nekoliko operacija u živom okruženju. Pod pretpostavkom da ste instalirali distribuciju na particiju tvrdog diska koju predstavlja datoteka uređaja / dev / sda5, možete ponovo instalirati GRUB 2 boot loader tako što ćete prvo kreirati direktorij za montiranje korijenskog sistema datoteka distribucije pomoću naredbe:

Sudo mkdir -p / mnt / distro

Nakon toga, trebali biste montirati sistem datoteka iz ovog odjeljka koristeći naredbu:

Mount / dev / sda5 / mnt / distro

Nakon toga, možete ponovo instalirati GRUB 2 boot loader koristeći naredbu:

Grub2-install --root-directory = / mnt / distro / dev / sda

Ova naredba će prepisati informacije u glavnom zapisu za pokretanje uređaja /dev/sda koji sadrži sistem datoteka instalirane Linux distribucije, kao i GRUB 2 fajlove pokretača kao što su grubenv i device.map.

Postoji još jedan problem koji se često javlja kada se koriste računari sa nekoliko instaliranih distribucija. Kada instalirate novu distribuciju Linuxa, njen pokretač bi trebao dohvatiti informacije o već instaliranim distribucijama. U slučaju da ne dohvati takve informacije, možete jednostavno preuzeti posljednju instaliranu distribuciju i pokrenuti naredbu:

Grub2-mkconfig

Prije pokretanja ove naredbe, uvjerite se da su particije s korijenskim sistemima datoteka instaliranih distribucija, koje nisu prikazane u izborniku za pokretanje, montirane. Ako distribucija koju želite da dodate u meni za pokretanje koristi sistem datoteka / root i / home na odvojenim particijama hard diska, samo / root fajl sistem treba da se montira pre izvršavanja naredbe grub2-mkconfig.

Iako GRUB 2 pokretački program može otkriti većinu distribucija, pokušaj dodavanja Fedora unosa u meni pokretačkog programa kada radite sa Ubuntu distribucijom zahtijeva jedan dodatni korak. Ako ste koristili podrazumevane postavke tokom Fedora instalacije, instalater će kreirati LVM particije. U ovom slučaju, pre nego što pozovete os-prober skriptu isporučenu sa GRUB 2 pokretačem da biste dodali Fedora distribuciju u meni za pokretanje, prvo ćete morati da instalirate lvm2 drajver koristeći sistem za upravljanje softverskim paketom distribucije koristeći sledeću naredbu:

Sudo apt-get install lvm2

Quick fix

Ako pokretanje grub2-install ne donese nikakve pozitivne promjene i ne možete pokrenuti Linux distribuciju, morat ćete potpuno reinstalirati i rekonfigurirati pokretač. Da biste izvršili ovaj zadatak, možete koristiti korisni chroot uslužni program, koji vam omogućava da privremeno zamijenite korijenski direktorij živog okruženja korijenskim direktorijumom instaliranog Linux sustava, koji treba vratiti. Za ovu svrhu možete koristiti Live CD bilo koje Linux distribucije koja ima chroot uslužni program. Međutim, trebali biste biti sigurni da koristite Live CD za istu arhitekturu procesora kao distribuciju na vašem tvrdom disku. Stoga, ako želite da koristite chroot uslužni program za vraćanje funkcionalnosti 64-bitnog instaliranog sistema, trebat će vam Live CD za 64-bitne sisteme.

Nakon učitavanja Live okruženja, prije svega, trebali biste provjeriti particije tvrdog diska mašine. Koristite naredbu fdisk -l da biste izlistali sve particije na tvrdom disku i saznali broj particije na kojoj je instaliran GRUB 2 pokretački program koji želite vratiti.

Pretpostavimo da trebate vratiti pokretač pokretanja distribucije instalirane na particiju tvrdog diska, koju predstavlja datoteka uređaja / dev / sda5. Otvorite emulator terminala i montirajte ovaj odjeljak:

Sudo mount / dev / sda5 / mnt

Sada ćete morati da montirate direktorijume koji moraju biti dostupni pokretaču GRUB 2 kako biste ispravno identifikovali druge operativne sisteme instalirane na računaru:

$ sudo mount --bind / dev / mnt / dev $ sudo mount --bind / dev / pts / mnt / dev / pts $ sudo mount --bind / proc / mnt / proc $ sudo mount --bind / sys / mnt / sys

Sada možete napustiti živo okruženje i otići u okruženje distributivnog kompleta instaliranog na particiji koju predstavlja datoteka device / dev / sda5 pomoću chroot uslužnog programa:

$ sudo chroot / mnt / bin / bash

Sada ste spremni za instalaciju, testiranje i ažuriranje pokretačkog programa GRUB 2. Kao i prije, da ponovo instalirate pokretač, koristite naredbu:

Sudo grub2-install / dev / sda

Budući da naredba grub2-install ne utječe na konfiguracijsku datoteku grub.cfg, morat ćete je kreirati ručno koristeći sljedeću naredbu:

Sudo grub-mkconfig -o /boot/grub/grub.cfg

Ovaj niz naredbi bi trebao pomoći u rješavanju problema pokretača. Nova kopija pokretačkog programa GRUB 2 će sada biti instalirana na vašu mašinu sa listom svih operativnih sistema i distribucija instaliranih na njemu. Prije ponovnog pokretanja računara, trebali biste napustiti chroot okruženje i isključiti sve korištene sisteme datoteka sljedećim redoslijedom:

$ exit $ sudo umount / mnt / sys $ sudo umount / mnt / proc $ sudo umount / mnt / dev / pts $ sudo umount / mnt / dev $ sudo umount / mnt

Nakon toga možete bezbedno restartovati mašinu, koja bi trebalo da bude ponovo pod kontrolom GRUB 2 boot loadera, koji je pod vašom punom kontrolom!

Prilagođene opcije menija za pokretanje

GRUB 2 boot loader koristi veliki broj konfiguracionih varijabli. Ovaj odjeljak opisuje neke od ovih varijabli koje biste možda željeli izmijeniti dok pregledavate sadržaj / etc / default / grub konfiguracijske datoteke. Varijabla GRUB_DEFAULT vam omogućava da odredite zadanu stavku menija za pokretanje. njegove vrijednosti mogu biti brojevi, kao što je broj 0 koji odgovara prvoj stavci menija, kao i "sačuvana" linija koja automatski bira stavku menija koja se koristi tokom posljednjeg pokretanja računara. Varijabla GRUB_TIMEOUT vam omogućava da postavite dužinu vremena čekanja prije pokretanja koristeći zadanu stavku menija, a varijabla GRUB_CMDLINE_LINUX vam omogućava da postavite listu opcija koje će biti proslijeđene svakom Linux kernelu kada se koristi odgovarajuća stavka menija za pokretanje.

Ako je varijabla GRUB_DISABLE_RECOVERY postavljena na true, stavke menija za pokretanje sistema za oporavak sistema neće biti generirane. Ove stavke vam omogućavaju da pokrenete distribucije u režimu jednog korisnika, u kojem možete koristiti sve dostupne alate komandne linije da biste vratili svoj sistem. Još jedna korisna varijabla je varijabla GRUB_GFXMODE, koja vam omogućava da postavite rezoluciju ekrana koja će biti postavljena kada se prikaže meni za pokretanje. Bilo koji opis rezolucije koju podržava vaša grafička kartica može se koristiti kao vrijednost za ovu varijablu.

Prilagođene stavke menija za pokretanje

Ako želite da dodate stavku svom bootloader meniju, morate dodati odgovarajuću strofu skripti pod nazivom 40_custom. Možete koristiti ovu stavku menija za pokretanje, na primjer, za pokretanje Linux distribucije instalirane na prenosivom USB disku. Pod pretpostavkom da je distributivna particija na vašem USB prenosivom disku predstavljena datotekom uređaja / dev / sdb1, a datoteka slike vmlinuz kernela i initrd datoteka su u poddirektorijumu korijenskog direktorija (/), morat ćete dodati sljedeću strofu u datoteku 40_custom script:

Unos u izborniku "Linux na USB-u" (set root = (hd1,1) linux / vmlinuz root = / dev / sdb1 ro tihi splash initrd /initrd.img)

Za bolju kompatibilnost, možete koristiti UUID particije tvrdog diska umjesto ID-ova uređaja i particija na sljedeći način:

Postavite root = UUID = 54f22dd7-eabe

Koristite naredbu sudo blkid da dobijete sve UUID-ove priključenih tvrdih diskova i njihovih particija. Na sličan način možete dodati unose u boot meni koji odgovaraju bilo kojoj identificiranoj os-prober skripti ali distribucijama instaliranim na tvrdom disku, naravno, ako znate na kojem disku je svaka od distribucija instalirana i gdje je nalaze se datoteke slike kernela i slika početnog sistema datoteka.

Bootloader se koristi za inicijalizaciju kernela i pokretanje Linux operativnog sistema. Ovo je program koji se pokreće nakon što BIOS završi provjeru hardvera, priprema hardver za rad, postavlja željene parametre kernela i omogućava vam da odaberete operativni sistem. Glavni zadatak pokretača je da korisniku da izbor operativnog sistema za pokretanje.

Ranije se za pokretanje Linuxa koristilo nekoliko pokretača, a to su isolinux, lilo, grub. Ali sada se najčešće koristi Grub ili njegov puni naziv GRand Unified Bootloader. Ovaj članak će vas provesti kroz instalaciju Grub bootloadera putem terminala. Takođe ćemo govoriti o tome kako instalirati grub na UEFI računar, takođe ručno.

Kao što sam rekao, glavni zadatak bootloadera je da obezbedi izbor operativnog sistema pre pokretanja. Nemojte pretpostavljati da Windows ne koristi bootloader, on takođe postoji i radi, baš kao i Grub.

Bootloader se može instalirati u različite tabele particija diska. Trenutno se najčešće koriste GPT i MBR. Instalacija Grub bootloadera je malo drugačija za svaku od ovih tabela, s obzirom na njihove specifičnosti. Više o razlikama možete pročitati u posebnom članku. Odmah ću reći da je GPT novija i funkcionalnija tabela particija, MBR je već zastario, ali se i dalje često koristi.

Postoji nekoliko opcija u MBR-u, Grub upisuje u MBR područje na disku. Veličina MBR sektora zauzima prvih 512 bajtova i to je sasvim dovoljno da se tamo instalira bootloader.

GPT pruža naprednije funkcije. Prvo, radi kompatibilnosti, GPT emulira MBR sektor i tamo možemo instalirati GRUB, ali ova opcija je vrlo nepouzdana i ne preporučuje se. Drugo, sada je moguće instalirati Grub na particiju diska. Jednostavno kreiramo particiju od 1MB na disku i tamo zapišemo ono što je prethodno napisano u MBR, to čini instalaciju pokretačkog programa pouzdanijom i sigurnijom od kvarova.

UEFI pruža sasvim drugačiji način instaliranja pokretačkog programa. Ovdje ne treba nigdje pisati, bootloader je obična EFI aplikacija koja se postavlja na EFI particiju i već tamo potpuno uspješno radi zajedno sa ostalim aplikacijama.

Grub-install komanda će se koristiti za instalaciju Gruba, u svim slučajevima. Pogledajmo na brzinu njegovu sintaksu i parametre. sintaksa:

$ disk sa opcijama grub-instalacije

Ovdje ima puno parametara, ali će nam trebati samo nekoliko:

  • --compress- komprimirati datoteke bootloadera;
  • --install-modules = moduli- instalirati samo ove module;
  • --moduli- zapisati ove module u MBR;
  • --boot-directory- koristiti drugi direktorij za Grub datoteke;
  • --bootloader-id- naziv pokretača u EFI meniju;
  • --core-compress- komprimirati sliku učitanu u MBR;
  • --efi-direktorij- koristiti EFI sistemsku particiju;
  • --sila- instalirati uprkos greškama;
  • --ponovo provjeri- ukloniti postojeću mapu uređaja, pomaže ako dođe do grešaka;
  • --removable- instaliranje grub na USB fleš disk (samo EFI);

Baza je rastavljena. Sada idemo na instalaciju. Dalje ću pretpostaviti da se sve radnje izvode sa sistema za koji treba da instalirate bootloader ili iz chroot okruženja ovog sistema.

Instaliranje Grub Bootloader-a u MBR za BIOS

Počnimo s najjednostavnijim i poznatijim. Ova instrukcija o tome kako instalirati Grub bootloader je pogodna za bilo koju distribuciju, jer su komande gotovo svuda iste. Ovdje nema potrebe za instaliranjem dodatnih paketa ili kreiranjem particija. Instaliranje Grub-a na vaš hard disk se vrši naredbom:

sudo grub-install / dev / sda

sudo grub2-install / dev / sda

Uslužni programi grub u različitim distribucijama mogu ili ne moraju uključivati ​​dva. Ovdje / dev / sda je vaš tvrdi disk. Sada generišemo konfiguracioni fajl tako da se instalirani operativni sistemi automatski detektuju:

sudo grub-mkconfig -o /boot/grub/grub.cfg

Spreman. Ista primedba je i za njih dvoje. Ako želite da instalirate Grub na USB fleš disk u MBR, onda nema ni problema, samo montirajte USB fleš disk i pokrenite sledeću naredbu:

sudo grub-install --root-directory = / mnt / USB / / dev / sdb

Ovdje je / mnt / USB mapa u koju je instaliran vaš fleš disk, a / seb / sdb je sam fleš disk. Ovdje postoji samo jedan problem, konfiguracijski fajl će se morati napraviti ručno.

Instaliranje Grub Bootloader-a u GPT za BIOS

Prvo, ne možemo ništa ostaviti i instalirati Grub kao što je opisano u prethodnoj metodi. Ali tada će biti instaliran u području kompatibilnosti s MBR-om, što nije pouzdano. Stoga se preporučuje instaliranje grub kao što je dolje opisano na zasebnoj particiji.

Particija koja nam je potrebna može se kreirati u instalateru bilo koje distribucije, ako instalirate u grafičkom sučelju ili koristite gparted. Potrebna nam je particija od 1 megabajta bez sistema datoteka i sa oznakom grub_bios:

Spreman. Ako nemate pristup grafičkom sučelju pri ruci, možete kreirati takav odjeljak preko terminala. Uslužni program fdisk ne podržava gpt, pa ćemo koristiti gfdisk. Prvo pokrenite uslužni program:

sudo gdisk / dev / sda

Za kreiranje nove particije pritisnite n i odaberite broj particije:

Slažemo se sa početnim sektorom, koristit će se prvi besplatni:

Odabiremo završni sektor sekcije. Maksimalno će se koristiti prema zadanim postavkama. Potrebna nam je particija od 1 MB. Veličina jednog GPT sektora je 512 bajtova, tako da nam je potrebna particija od 2048 sektora. Dakle, konačni sektor će biti 24.000 i nešto.

HEX kod je kod koji govori sistemu da koristi ovaj odjeljak za Grub, potrebno ga je instalirati ef02:

Gotovo, ostaje da pritisnete w da upišete promjene na disk:

sudo grub-install / dev / sda

Ostaje da kreirate grub konfiguracioni fajl:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Sada pređimo na najteži dio, kako instalirati grub efi.

Instalacija GRUB UEFI GPT

Instaliranje Grub UEFI-ja je donekle slično instalaciji u GPT, ovdje ćemo također imati zasebnu particiju, samo ovaj put ne za bootloader, već za EFI particiju. Ako već imate instaliran Windows, onda najvjerovatnije već postoji. Ova particija je obično veličine 100 MB, ima fat32 sistem datoteka i ESP zastavicu. Ovako će to izgledati:

Ako ne postoji takva particija, možemo je kreirati koristeći gparted. Da biste to učinili, kreirajte odjeljak sa sljedećim parametrima:

Veličina 100 megabajta, naziv particije ESP, sistem podataka fat32... Zatim primijenite promjene i postavite zastavicu za sekciju ESP:

Isto možete učiniti u Gdisk-u, samo ovaj put trebate instalirati HEX kod sekcije. ef00... Nakon što je particija kreirana, povezujemo je sa našim sistemom datoteka:

sudo mkdir / boot / efi
$ sudo mount / dev / sda2 / boot / efi

sudo apt install grub-efi efibootmgr

grub-install / dev / sda

Instaliranje Grub efi-a na MBR izgleda potpuno isto, samo postoji nekoliko ograničenja. ESP bi trebao biti kreiran samo na početku diska. U EFI modu također možete instalirati GRUB na USB stick, i to nije mnogo teško. Za ovo se koristi naredba.

Uprkos činjenici da Linux operativni sistem zauzima neznatan udeo na tržištu, njegovi različiti sklopovi postaju sve popularniji zbog svog zvaničnog besplatnog, prilično stabilnog rada, kao i značajne fleksibilnosti u podešavanjima. Da, neke stvari ne rade isto kao na Windows ili Mac OS, a većina softvera je napravljena prvenstveno za ova dva proizvoda. Ali to ne zaustavlja sve.

Da bi Linux funkcionirao, morate vratiti Grub pokretački program ako dođe do kvara.

Iako gotovo svaka verzija Linuxa radi besprijekorno, ponekad može doći do greške pokretača, što onemogućuje pokretanje operativnog sistema. Koji su razlozi za to? Kako da popravim Grub bootloader u Linuxu? Koje metode rada postoje? O svemu tome, pa čak i malo više, razgovarat ćemo u današnjem članku.

Nakon što instalirate Linux na vaš tvrdi disk, svi fajlovi se kopiraju u zasebne fascikle. Neki direktoriji pohranjuju uobičajene softverske datoteke koje možete bezbedno ukloniti. Drugi pišu datoteke bez kojih operativni sistem neće raditi. Ovo uključuje Linux kernel, grafičku ljusku i Grub boot loader. Potonji se koristi za pokretanje instaliranog operativnog sistema. Kako se to dešava?

U posebnoj particiji za pokretanje, sistem kreira glavni zapis za pokretanje. Njegova engleska skraćenica izgleda kao MBR, a znači Master Boot Record. Kada se računar pokrene, BIOS pristupa ovom unosu, a onda u igru ​​ulazi Grub i, kada je sve u redu, Linux se pokreće. A ako je bootloader oštećen, doći će do greške pri pokretanju i sistem se neće pokrenuti.

Iz kojih razloga se to može dogoditi? Velika većina slučajeva je zbog činjenice da nakon instalacije Linuxa kao prvog sistema, instalirate Windows u sekundarnoj ulozi. Microsoft tradicionalno ne voli Linux, pa Windows instalater uklanja Grub Linux. Isti problem može nastati kada sam Linux nije ispravno instaliran, kada se prebacite na drugu distribuciju ili zbog reparticioniranja diska.

Najvažnija stvar koju treba uzeti u obzir je da ne morate odmah razmišljati o ponovnoj instalaciji cijelog sistema. Samo trebate vratiti Grub i sve će raditi kao i prije. Pređimo na razmatranje najefikasnijih metoda dostupnih čak i neiskusnim korisnicima.

Preko terminala sa medija za pokretanje

Da biste to učinili, potreban vam je USB fleš disk za pokretanje ili disk sa snimljenom distribucijom Linuxa. U idealnom slučaju, trebao bi biti sličan sistemu instaliranom na tvrdom disku. Ali ako distributivni komplet nije najvažnija točka, tada bi dubina bita u svakom slučaju trebala biti ista. U suprotnom, to je preplavljeno još većim posljedicama, zbog čega ćete sigurno morati sve ponovo instalirati.

  1. Umetnite USB fleš disk ili disk u konektor računara, a zatim kao prioritet za učitavanje. Potrebna postavka se nalazi u odjeljku Prioritet uređaja za pokretanje ili Prvi uređaj za pokretanje. Da biste pokrenuli BIOS, pri pokretanju pritisnite željeno dugme ili njihovu kombinaciju na tastaturi. Najpopularnije opcije su F2, Del, Shift + F2, F10. Kako se ne biste bavili BIOS-om, možete jednostavno pritisnuti F11 ili F12 i odabrati medij sa ponuđene liste.
  2. Zatim morate saznati na kojoj je particiji tvrdog diska sistem instaliran i koja je navedena kao pokretač. Da biste to učinili, morate pokrenuti terminal (analog Windows komandnoj liniji) tako što ćete ga pronaći u meniju aplikacije ili pritiskom na kombinaciju tipki Ctrl + Alt + T ili Alt + F2. U prozoru koji se otvori, moraćete da ukucate naredbu sudo fdisk -l. Uslužni program će odmah skenirati sve particije na disku i prikazati informacije o svakoj od njih. Prikazaće se čak i informacije o drugim operativnim sistemima instaliranim na računaru. Možete saznati naziv particije, njenu lokaciju, veličinu i tip njenog sistema datoteka. Pod uslovom da ste ručno izvršili particionisanje prilikom instaliranja Ubuntua, lako možete otkriti koja particija se može pokrenuti, a koja root. Za automatsko particioniranje, vodite se imenom Linux. On je taj koji će biti korijen vašeg sistema. Ime particije se obično sastoji od skraćenice sdc ili sda i broja sa rednim brojem.
  3. Zatim morate montirati korijenski sistem datoteka u / mnt folder. U tome će vam pomoći naredba sudo mount / dev / sda1 / mnt, gdje umjesto sda trebate napisati ime vaše particije.

Od ovog trenutka, postoje dva načina za vraćanje Grub-a na Linux.

Metoda 1

  1. Unesite naredbu za popravak pokretača: sudo Grub-install -root-directory = / mnt / dev / sda.
  2. Ponovo pokrenite računar pomoću komande sudo reboot. Kao rezultat, trebao bi se pojaviti izbornik za odabir OS-a.
  3. Ako ovaj meni prikazuje zastarjele informacije, ažurirajte MBR zapis za pokretanje. Da biste to učinili, pokrenite Linux normalno, otvorite terminal i koristite naredbu sudo update-Grub. Ako to ne uspije, primijenite sudo update-Grub –output = / mnt / boot / Grub / Grub.cfg, a zatim ponovite prethodni.
  4. Ponovo pokrenite računar.

Metoda 2.

  1. Nakon montiranja root sistema datoteka na /mnt particiju, potrebno je dodatno montirati mapu sa datotekama za pokretanje, kao i ostalim komponentama interakcije sa kernelom. Da biste to učinili, pokrenite naredbe jednu po jednu:

sudo mount / dev / sdc2 / mnt / boot

sudo mount –bind / dev / mnt / dev

sudo mount –bind / sys / mnt / sys

sudo mount –bind / proc / mnt / proc

  1. Zatim morate pokrenuti chroot shell. Da biste to učinili, dodajte chroot / mnt / bin / bash u terminal. Prvi parametar skreće pažnju na korijenski direktorij, a drugi na posebnu ljusku za pretvaranje korisničkih naredbi.
  2. Zatim morate primijeniti naredbe da uđete u Ubuntu i koristite gotovo sve njegove aplikacije, osim servisa i grafičkog sučelja:

izvor / etc / profil.

  1. Sada možete početi direktno vraćati Grub. Da biste to učinili, trebate koristiti nekoliko naredbi:
    • Da biste ponovo instalirali bootloader na čvrsti disk: sudo Grub2-install / dev / sdc (posljednji parametar je naziv vaše particije).
    • Za kreiranje nove konfiguracijske datoteke: sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg.
    • Da ažurirate meni za pokretanje: sudo Grub-update.
  2. Da biste dovršili proceduru, izađite iz chroot ljuske koristeći naredbu exit, a također demontirajte prethodno montirane particije sistema datoteka:

sudo umount / mnt / dev

sudo umount / mnt / proc

sudo umount / mnt / sys

sudo umount / mnt

sudo umount / mnt / boot.

  1. Ponovno pokretanje putem ponovnog pokretanja.

Preko uslužnog programa za popravku pokretača

Budući da prethodna metoda možda nije za svakoga, mi ćemo iskoristiti prednosti Ubuntu-a da može u potpunosti raditi, budući da se pokreće sa USB fleš diska. Da bismo to učinili, koristit ćemo poseban uslužni program za popravku pokretanja. Šta treba učiniti?

  1. Pokrenite Ubuntu sa USB sticka i provjerite imate li aktivnu internetsku vezu.
  2. Pronađite terminal i pokrenite sljedeće naredbe jednu po jednu u njemu:

sudo add-apt-repository ppa: yannubuntu / boot-repair

sudo apt-get update

sudo apt-get install boot-repair.

  1. U meniju aplikacije pronađite "Boot Loader Repair" i omogućite uslužni program.
  2. Kliknite na dugme "Preporučeni način oporavka" i pričekajte do kraja procedure.
  3. U većini situacija, ovi koraci su dovoljni da Grub Linux boot loader ispravno funkcionira.

Preko komandne linije sa delimičnim pristupom sistemu datoteka

Ponekad Grub bootloader nije toliko oštećen da se cijeli sistem ne može pokrenuti. Na primjer, particija za pokretanje ostaje netaknuta, ali sam uslužni program nema pristup njoj. U ovom slučaju otvara se programska ljuska, nešto slično komandnoj liniji, i prikazuje se poruka sljedećeg sadržaja: Podržano je minimalno BASH uređivanje redaka. Ovdje, koristeći ovu komandnu liniju, možete pokušati pokrenuti Ubuntu.

Od vas se očekuje da budete sigurni i tačno znate koji od tvrdih diskova hostuje sistem i kernel. Dostupne su samo četiri naredbe, koje se moraju primjenjivati ​​uzastopno:

  1. Izdajte naredbu ls da sistem skenira diskove i particije. Kao odgovor, dobit ćete listu tvrdih diskova (na primjer, hd1, hd2), kao i tip sistema datoteka na njima (na primjer, msdos1, msdos2). Na primjer, pretpostavimo da se particija za pokretanje nalazi na / dev / sda1.
  2. Zatim morate odabrati odjeljak s kojim želite raditi. U našem slučaju, naredba će biti napisana na sljedeći način: set root = (hd1,1).
  3. Pokrenite običnu Grub školjku: insmod ext2, insmod normal, normal.
  4. Pokrenite Linux kernel: linux / boot / vmlinuz.
  5. Pokrenite sistem: boot.
  6. Nakon pokretanja Ubuntua u normalnom načinu rada, otvorite terminal i završite proceduru popravke pokretačkog programa pomoću sljedećih naredbi:

sudo Grub2-install / dev / sda

sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg.

  1. Ponovo pokrenite sistem i uživajte u normalnom radu.

Zaključak

Iako na prvi pogled vraćanje Grub bootloadera u Ubuntu može izgledati kao nešto jako teško, a mnogi korisnici Linuxa će odmah početi da reinstaliraju operativni sistem sa takvim problemom, uz uobičajene upute sve se radi vrlo lako i bez ikakvih komplikacija. Nadamo se da smo uspjeli da vam pomognemo da izbjegnete gubitak važnih informacija. Označite ovu stranicu i podijelite ove informacije sa svojim prijateljima i poznanicima. Ostavite svoja pitanja u komentarima.

Zadatak: Postoji računar sa dva sistema: Windows 7 i Ubuntu 14.04
Potrebno je ažurirati verziju Windowsa, na 10 i ubuntu - na 16.04
Za početak, morao sam instalirati licencirani Windows umjesto onoga što je bilo i ažurirati ga na najnoviju verziju - desetine.
Slika sedmorice je preuzeta sa Microsoft web stranice, otpremljena na USB fleš disk pomoću besplatnog i besplatnog programa rufus, Windows je uspješno instaliran sa ovog fleš diska, a zatim ažuriran na 10.
Sada se pojavio zadatak vraćanja GRUB-a, jer je Windows, naravno, izbrisao pokretač pokretanja, instalirajući svoj, koji ne želi znati ni za kakve Linuxove :) Zadatak je kompliciran činjenicom da moderne matične ploče ne sadrže BIOS, ali UEFI - napredniji lokalni operativni sistem. I kao i prije, ne možete instalirati GRUB glupo.

Nakon malog guglanja ovog pitanja, našao sam rješenje u vidu programa Boot-Repair.
Skenira diskove u potrazi za operativnim sistemima i instalira GRUB, uz formiranje željenog menija i svih potrebnih postavki.
Postoje dva načina rada sa ovim programom:
Prvi način je da se pokrenete sa ubuntu USB fleš diska ili LiveCD-a, instalirate i pokrenete ovaj program:
Otvorite terminal (Ctrl + Alt + T), kopirajte i izvršite sljedeće naredbe:
sudo add-apt-repository ppa: yannubuntu / boot-repair
Zatim ažurirajte izvore:
sudo apt-get update
Sljedeća naredba će instalirati Boot-Repair:
sudo apt-get install -y boot-repair
Nakon toga, program se može pokrenuti na uobičajen način za Ubuntu, preko sistemskog menija.
Drugi način je preuzimanje sliku diska sa ovim programom, otpremite ga na USB fleš disk ili CD, pokrenite sa njega i vratite pokretač. Odabrao sam drugu opciju jer je praktičnija. Nikad ne znaš gde bi još mogao biti potreban. Skinuo sam i uploadovao na USB fleš sa istim rufus th.
Ne znam kako je sa LiveCD-om, ali ako se pokrenete sa USB fleš diska na matičnim pločama sa UEFI, potrebno je da se pokrenete u UEFI režimu, inače će program odbiti da vrati GRUB. I upravo ovdje vas čeka moguća zamka. Umjesto uobičajenog izbora jezika i parametara pokretanja, na ekranu vidimo GRUB meni na crnoj pozadini sa linijom jedine opcije za pokretanje.
Ako pokrenete sa USB fleš diska sa Ubuntuom, imamo meni sa dve opcije:
- Preuzmite Ubuntu bez instalacije
- Instalacija Ubuntu-a.
U svim ovim slučajevima, kada sam birao bilo koju stavku, imao sam crni ekran sa zamrzavanjem. Odnosno, sistem nije mogao podići video mod i pao je u stupor.
Ovaj problem se rješava na sljedeći način: Potrebno je odabrati željenu stavku menija u GRUB-u, pritisnuti tipku "e", tako da ulazimo u uređivač run line, zatim na kraj reda, koji je najduži, prije "- " morate dodati parametar nomodeset. Zatim pritisnite F10. Sistem će se pokrenuti u pojednostavljenom grafičkom režimu sa podrazumevanim engleskim jezikom.
Program nudi preporučene radne parametre. U većini slučajeva to je dovoljno. Napredni korisnici mogu izabrati prioritet pokretanja operativnog sistema i vremensko ograničenje izbora u naprednim parametrima.
u tom procesu morate učiniti sve što program traži. Proces je jednostavan i intuitivan. Kada se oporavak završi, vidjet ćete poruku da je bootloader vraćen i da možete ponovo pokrenuti računar.

Original: Kako popraviti Grub Boot Loader na Ubuntu Linuxu 16.04 /15.10 / 15.04
Autor: Aun
Datum objave: 21.06.2016
Prijevod: A. Krivoshey
Datum prevoda: oktobar 2016

Grub (GRand Unified Bootloader) je podrazumevani pokretač za većinu Linux / Unix sistema. Omogućava vam da učitate različite operativne sisteme (možete instalirati više sistema na vaš računar) ili učitati različite verzije kernela ako koristite Linux. Ako je ovaj program oštećen na bilo koji način, dobićete poruke o grešci tokom procesa pokretanja, a kao rezultat toga, najverovatnije nećete moći da pokrenete svoj operativni sistem. Tipično, jedini način za vraćanje normalnog rada u takvom slučaju je popravka ili ponovna instalacija Grub pokretačkog programa. Ako se uradi ispravno, ovaj postupak izbjegava gubitak podataka. Danas ćemo naučiti kako popraviti/reinstalirati Grub bootloader na Ubuntu sistemu. Koraci u nastavku su izvedeni na Ubuntu 16.04, ali bi također trebali raditi na bilo kojoj relativno novijoj verziji Ubuntua. Da bismo izvršili naš zadatak, koristit ćemo dobro poznati uslužni program "Boot Repair".

Instaliranje Boot Repair u Ubuntu

Boot Repair se najčešće koristi za ispravljanje grešaka povezanih s Grub bootloaderom. Prvo, morate pokrenuti računar sa Live CD / DVD / USB-a za Ubuntu (ako tražite način da vratite Grub, onda najvjerovatnije više ne možete pokrenuti instalirani operativni sistem).

$ sudo add-apt-repository ppa: yannubuntu / boot-repair

Nakon dodavanja PPA, ažurirajte listu paketa:

$ sudo apt-dobi ažuriranje

Sada možete instalirati Boot Repair:

$ sudo apt-get install -y boot-repair

Nakon uspješnog završetka instalacije, pokrenite Boot Repair iz Applications> Boot Repair:

Korištenje popravke pokretanja za popravljanje grešaka u kvaru

Nakon pokretanja popravka pokretanja, vidjet ćete početni prozor programa:

Prva opcija (Preporučena popravka) može popraviti Grub greške, kliknite na nju i pokrenut će proces popravke/ponovne instalacije prikazan na slici ispod.

Prema uputama na snimku ekrana, otvorite terminal i pokrenite sljedeće tri naredbe:

Nakon dovršetka ovih naredbi, kliknite na “Proslijedi” da pređete na sljedeći korak u procesu oporavka. Ovo ćete vidjeti u sljedećem koraku:

Slijedite upute da izvršite tri naredbe u nastavku ispravnim redoslijedom. Tokom ovog koraka, pojavit će se prozor u kojem se traži da potvrdite uklanjanje Grub 2, odaberite "Da".

$ sudo dpkg --configure -a $ sudo apt-get install -fy $ sudo apt-get install -y --force-yes grub-pc linux-generic

Kliknite na "Proslijedi" nakon završetka procesa, ispod je snimak ekrana sljedećeg koraka.

Prema uputama, pokrenite naredbu ispod u terminalu i, kada se to od vas zatraži, navedite tvrdi disk na kojem će se instalirati grub.

$ sudo apt-get install -y --force-yes grub-pc linux-generic

Sada morate pričekati nekoliko minuta da se obave potrebne operacije, a trebali biste vidjeti poruku ispod:

Ponovo pokrenite sistem i trebalo bi da vidite meni pokretača.

Zaključak

Grub se može pokvariti iz raznih razloga, posebno ako imate instalirano više operativnih sistema, mogu se pojaviti razne greške prilikom njihovog ažuriranja ili instaliranja. Stoga je korisno imati pri ruci tako odličan i besplatan program za rješavanje problema s bootloaderom.

Podijelite ovo