- Osioiden ja levyjen oikea tunnistaminen mahdollistaa GRUBin uudelleenasentamisen LiveUSB:ltä ilman järjestelmän uudelleenasennusta.
- Työkalut, kuten Boot-Repair, Syslinux tai LILO, tarjoavat vaihtoehtoisia tapoja palauttaa MBR ja käynnistyksen hallintaohjelma.
- BCDBootin ja bootrecin avulla voit korjata Windowsin käynnistyksenhallinnan ja BCD-säilön usean Windowsin ympäristöissä.
- Linux- ja Windows-apuohjelmien yhdistäminen helpottaa vaurioituneen kaksoiskäynnistyksen turvallista palauttamista.

Kun määritetään kaksoiskäynnistysjärjestelmä, jossa on Windows ja Linux-jakelu (Ubuntu, Arch, Debian jne.), käynnistyksenhallinnasta tulee ratkaiseva osa. Se määrittää, mikä käyttöjärjestelmä käynnistyy ja miten. Ongelmana on, että yksinkertainen Windows-päivitys, osion vaihto tai uudelleenasennus voi vioittaa GRUBia tai Windowsin käynnistyksenhallintaa , jolloin tietokone ei käynnisty oikein.
Näissä tilanteissa on yleistä kohdata oireita, kuten käynnistysvirhenäyttöjä, GRUBin pelastustilan ilmestymistä , Windowsin käynnistymistä Linuxia ohittaen tai päinvastoin, Windowsin katoamista valikosta. Hyvä uutinen on, että oikeilla työkaluilla käynnistyslataimen (GRUB tai Windows Boot Manager) korjaaminen on mahdollista käytännössä missä tahansa tilanteessa , sekä Windows/Linux-kaksoiskäynnistysjärjestelmissä että useiden Windows-versioiden kokoonpanoissa.
Mikä yleensä rikkoo GRUBin tai Windows Boot Managerin kaksoiskäynnistysjärjestelmässä
Ennen korjausten yrittämistä on syytä ymmärtää, miksi käynnistin toimii virheellisesti. Tämä auttaa sinua valitsemaan oikean työkalun jokaiseen tilanteeseen ja estämään saman ongelman toistuvan.
Yksi yleisimmistä syistä on, että Windows korvaa MBR- tai EFI-osion Linuxin asennuksen tai merkittävän päivityksen jälkeen. Windows olettaa, että se on tietokoneen ainoa käyttöjärjestelmä ja kirjoittaa käynnistyssektorin uudelleen, joten GRUB katoaa ja vain Windows käynnistyy.
Toinen hyvin yleinen tilanne on osioiden kokoa muuttaminen tai siirtäminen osiointityökaluilla. Jos kosket osioon, johon GRUB on asennettu, tai muokkaat osiotaulukkoa, käynnistyksen hallintaohjelma voi helposti menettää viittauksensa Linux-järjestelmän juureen tai itse ytimeen , mikä johtaa ilmoituksiin, kuten "Käynnistysjärjestelmävirhe", tai käyttöjärjestelmän valintavalikko ei näy.
Käynnistyshallinta voi myös vioittua järjestelmäpäivityksen jälkeen . Vaikka tämä ei olekaan yleisin ilmiö, ytimen päivitys, uusi GRUB-paketti tai UEFI-laiteohjelmiston muutokset voivat jättää käynnistysvalikon väärin konfiguroituksi, mikä johtaa pelastuskonsolin suoraan ilmestymiseen (pahamaineisen grub rescue> -kehotteen ).
Tietokoneissa, joissa on useita Windows-versioita samanaikaisesti (esimerkiksi Windows 10 ja Windows 11 erillisillä levyillä tai eri osioissa), ongelma ei joskus ole GRUB, vaan itse Windows BCD -tallennustila , joka voi olla väärin konfiguroitu ja aiheuttaa sen, että jokin järjestelmistä ei näy Windows Boot Managerin käynnistysvalikossa.
Käynnistä Linux Live -medialta korjataksesi GRUBin
Kun käynnistyshallinta ei toimi eikä järjestelmä lataudu normaalisti, joustavin tapa edetä on käyttää Linux-jakelun LiveCD:tä tai LiveUSB:tä (Ubuntu on yleensä kätevin vaihtoehto) "syöttääksesi" asennettuun järjestelmään ja asentaaksesi GRUBin uudelleen sieltä.
Ensimmäinen vaihe on käynnistysmedian luominen. Sinun on ladattava ISO-levykuva GRUB2-jakelusta (Ubuntu, Debian, Linux Mint jne.), joka vastaa vaurioituneen järjestelmäsi arkkitehtuuria: amd64, jos järjestelmäsi on 64-bittinen, tai i386, jos se on 32-bittinen . Tämä vastaavuus on tärkeä, koska chrootia käytetään myöhemmin , ja jos arkkitehtuurit eivät ole samat, GRUB-binäärejä suoritettaessa voi esiintyä virheitä.
Kun sinulla on ISO-tiedosto, polta se käynnistettävälle USB-asemalle . Voit käyttää työkaluja, kuten Rufusta, balenaEtcheriä tai mitä tahansa muuta, jonka kanssa olet tyytyväinen. Aseta USB-asema tietokoneeseen, jossa on vioittunut käynnistysjärjestelmä, ja valitse BIOSista tai UEFI:sta käynnistys USB-asemalta.
Ensimmäinen vaihe on käynnistysmedian luominen. Sinun on ladattava ISO-levykuva GRUB2-jakelusta (Ubuntu, Debian, Linux Mint jne.), joka vastaa vaurioituneen järjestelmäsi arkkitehtuuria: amd64, jos järjestelmäsi on 64-bittinen, tai i386, jos se on 32-bittinen . Tämä vastaavuus on tärkeä, koska chrootia käytetään myöhemmin , ja jos arkkitehtuurit eivät ole samat, GRUB-binäärejä suoritettaessa voi esiintyä virheitä.
Kun käynnistät USB-asemalta, jakeluvalikko tarjoaa esimerkiksi "Kokeile Ubuntua ". Tämä vaihtoehto lataa koko järjestelmän muistiin käyttämättä kiintolevyä, ja sieltä voit avata terminaalin ja suorittaa tarvittavat komennot GRUBin palauttamiseksi.
Avaa Live-työpöydällä sovellusvalikko ja etsi "Pääte" . Täältä koko prosessi tehdään komentoriviltä, mutta jos noudatat ohjeita huolellisesti, se on melko suoraviivaista.
Tunnista juuriosio, /boot-osio ja levy
Käynnistyshallinnan uudelleenasentamiseksi on ensin tiedettävä, mille osioille Linux on asennettu ja mikä on sen levyn nimi, jolla MBR- tai EFI-osio sijaitsee (esimerkiksi /dev/sda ).
Live-järjestelmän päätteessä voit käyttää komentoa `fdisk -l` järjestelmänvalvojan oikeuksilla: `sudo fdisk -l` . Tämä komento listaa kaikki yhdistetyt asemat ja osiot, näyttäen tiedostojärjestelmän tyypin, koon ja tiedostonimen (jos sellainen on).
Kaikesta tulosteesta sinun on etsittävä osio, joka sisältää Linux-juurijärjestelmäsi . Yleensä näet jotain vastaavaa , kohtuullisen kokoisena ja Linux-tiedostojärjestelmällä (ext4 tai vastaava). Jos loit erillisen /boot-osion , sinun on myös tunnistettava se; se on tyypillisesti pieni osio, joka sisältää tiedostoja, kuten grub, vmlinuz, initrd, System.map jne.
Jos olet epävarma, yksinkertainen strategia on liittää epäilyttävät osiot manuaalisesti ja tutkia niiden sisältöä. Voit esimerkiksi käyttää komentoa `sudo mount /dev/sda2 /mnt` ja sitten listata sisällön komennolla `ls /mnt` . Jos näet hakemistoja, kuten `bin`, `boot`, `root` jne. , kyseessä on juuriosio. Jos liität toisen osion ja löydät `grub`- kansion muiden käynnistystiedostojen ohella, kyseessä on ` /boot` -osio.
Päälevyn nimi näkyy myös fdisk-komennon tulosteen yläosassa , esimerkiksi " Levy /dev/sda ". Tämä tunniste on tärkeä, koska se on lopullinen kohde, kun GRUB asennetaan uudelleen MBR:ään, tai koska se voi osoittaa osioon, joka toimii EFI-osiona UEFI-järjestelmässä.
Osioiden liittäminen ja GRUBin uudelleenasennus chrootin avulla
Kun olet tunnistanut haluamasi osiot, sinun on liitettävä ne Live-järjestelmään, jotta voit "syöttää" asennuksesi aivan kuin olisit käynnistänyt sen siitä etkä USB:ltä.
Aloitat liittämällä juuriosion /mnt-hakemistoon komennolla, joka on samanlainen kuin `sudo mount /dev/sda2 /mnt` (korvaa /dev/sda2 omaa tapaustasi vastaavalla osiolla). Jos sinulla on erillinen /boot- osio , liität sen juurihakemistoon esimerkiksi komennolla `sudo mount /dev/sda7 /mnt/boot`.
Seuraavaksi sinun on liitettävä joitakin erikoishakemistoja käyttämällä `--bind`- optiota , jotta chroot-ympäristö voi nähdä koneen laitteet, prosessit ja tiedostojärjestelmän. Tämä tehdään yleensä komennoilla, kuten: `sudo mount -bind /dev /mnt/dev` , `sudo mount -bind /dev/pts /mnt/dev/pts` , `sudo mount -bind /proc /mnt/proc` ja `sudo mount -bind /sys /mnt/sys`.
Kun kaikki on määritetty, voit käyttää chrootia muuttaaksesi tiedostojärjestelmän juurihakemiston asennetun Linux-järjestelmäsi juurihakemistoksi. Tyypillinen komento on `sudo chroot /mnt` . Tästä eteenpäin kaikki suorittamasi komennot vaikuttavat levylle asennettuun varsinaiseen järjestelmään , eivät USB-asemalta käynnissä olevaan live-ympäristöön.
Seuraava vaihe on GRUBin uudelleenasentaminen oikealle levylle. BIOS/MBR-järjestelmissä tavallinen tapa on käyttää komentoa, kuten `grub-install --boot-directory=/boot/ --recheck /dev/sda` (korvaamalla `/dev/sda` MBR:n sisältävällä levyllä). Tämä komento lataa GRUB-käynnistyslataimen levyn käynnistyssektoriin ja varmistaa, että kokoonpano osoittaa oikeisiin tiedostoihin.
Kun käynnistyshallinta on asennettu uudelleen, on suositeltavaa luoda GRUBin kokoonpano uudelleen , jotta se tunnistaa kaikki käytettävissä olevat käyttöjärjestelmät. Tämä tehdään komennolla `grub-mkconfig -o /boot/grub/grub.cfg` . GRUB skannaa sitten osiot Linux-ytimien, Windows-asennusten ja muiden järjestelmien varalta ja luo käynnistysvalikon.
Kun olet valmis, poistu chrootista komennolla `exit` ja käynnistä tietokone uudelleen komennolla `sudo reboot` . Käynnistettävän USB-aseman irrottamisen pitäisi sitten näyttää täysin toimiva GRUB-valikko , jonka avulla voit käynnistää joko Linuxin tai Windowsin.
Käytä Boot-Repairia GRUBin automaattiseen palauttamiseen
Niille, jotka eivät halua kamppailla niin monien manuaalisten komentojen kanssa, on olemassa erittäin käytännöllinen työkalu nimeltä Boot-Repair , joka on erityisesti suunniteltu korjaamaan yleisiä käynnistysongelmia Ubuntussa ja sen johdannaisissa.
Boot-Repair on apuohjelma, joka voidaan asentaa Ubuntu-ympäristöön (joko itse käyttöjärjestelmään tai Live-ympäristöön). Sen päätehtävänä on asentaa GRUB automaattisesti uudelleen ja palauttaa pääsy kaikkiin asennettuihin järjestelmiin: olipa kyseessä sitten Windowsin MBR-korjaus, päivitys on lopettanut GRUB-valikon näyttämisen tai osioiden muokkaaminen ja kokoonpanon vioittuminen.
Normaalin korjauksen lisäksi työkalussa on edistyneitä vaihtoehtoja osiotaulukoiden varmuuskopiointiin, käynnistyssektorien varmuuskopiointiin, yksityiskohtaisten raporttien (Boot-Info) luomiseen ja korjausparametrien säätämiseen, jos tarvitset tarkempaa hallintaa.
Käyttääksesi sitä Ubuntu Live -ympäristössä, sinun on ensin lisättävä Boot-Repair PPA -arkisto komennolla, kuten: `sudo add-apt-repository ppa:yannubuntu/boot-repair` . Päivitä sitten paketit komennolla `sudo apt update` ja asenna lopuksi sovellus komennolla `sudo apt install boot-repair` . Vahvista lataus ja asennus, jos sitä pyydetään.
Kun apuohjelma on asennettu, se voidaan käynnistää Ubuntu-sovelluksen hakupalkista kirjoittamalla ”Boot-Repair” . Käynnistyksen jälkeen työkalu näyttää yleensä ”Suositeltu korjaus” -vaihtoehdon , joka on kätevin useimmille käyttäjille, koska se asentaa GRUBin uudelleen, päivittää sen kokoonpanon ja korjaa yleisimmät virheet ilman manuaalista konfigurointia.
Lisäasetuksissa on valintaruutu "Palauta MBR ". Tämän asetuksen avulla voit korvata levyn nykyisen käynnistysmerkin yleisellä tai tietyllä MBR:llä, mikä voi olla hyödyllistä tietyissä tilanteissa. Kun olet valinnut sopivan vaihtoehdon ja napsauttanut "Käytä ", Boot-Repair aloittaa korjausprosessin ja näyttää sen edistymisen valmistumiseen asti. Kun korjaus on valmis, se yleensä näyttää tehdyt muutokset, ja uudelleenkäynnistyksen jälkeen kaksoiskäynnistyksen pitäisi olla taas toiminnassa.
Muita matalan tason työkaluja: Syslinux, MBR ja LILO
Joissakin edistyneissä tapauksissa, erityisesti tiettyjen kokoonpanojen, vanhemman laitteiston tai tiettyjen tiedostojärjestelmien kanssa työskenneltäessä , voi olla hyödyllistä käyttää työkaluja, kuten Syslinux tai LILO, MBR:n ja käynnistysprosessin manipulointiin suoremmin.
Syslinux on kevyiden käynnistyslatainten sarja erilaisiin skenaarioihin: klassinen SYSLINUX MS-DOS FAT -tiedostojärjestelmille, PXELINUX verkkokäynnistykseen, ISOLINUX käynnistys-CD-levyille ja EXTLINUX ext2/3/4- tai btrfs-tiedostojärjestelmille. Se sisältää myös MEMDISK-komennon , jonka avulla voidaan käynnistää vanhempia käyttöjärjestelmiä, kuten DOS, epäperinteisiltä tallennusvälineiltä.
Ubuntun kaltaisessa jakelussa voit asentaa sen komennolla `sudo apt install syslinux` . Asennuksen jälkeen voit palauttaa MBR:n kirjoittamalla vastaavan komennon levyn käynnistyshakemistoon, esimerkiksi komennolla `sudo dd if=/usr/lib/syslinux/mbr.bin of=/dev/sda` . Vaihtoehtoisesti voit käyttää muita paketteja ja työkaluja, kuten `sudo apt-get install mbr` ja sen jälkeen `sudo install-mbr -in -p D -t 0 /dev/sda` , jotka myös palauttavat toimivan MBR:n.
Toinen klassinen vaihtoehto on LILO (Linux Loader) . Vaikka GRUB2 on nykyään useimpien jakeluiden oletuskäynnistyslataaja, LILO on edelleen yksinkertainen ja vankka ratkaisu tietyntyyppisille laitteistoille tai tietyille kokoonpanoille, joissa GRUBilla on vaikeuksia. Esimerkiksi Ubuntussa se voidaan asentaa komennolla `sudo apt-get install lilo` ; asennuksen aikana näytölle tulee kehote, joka sinun on hyväksyttävä jatkaaksesi.
LILOn asentamisen jälkeen voit käyttää sitä uuden MBR:n kirjoittamiseen komennolla, kuten `sudo lilo -M /dev/sda mbr` . Tämä korvaa MBR-koodin LILOn koodilla, mikä voi auttaa palauttamaan toimivan käynnistyksen järjestelmissä, joissa käynnistyshallinta on vioittunut tai yhteensopimaton laitteiston kanssa.
GRUBin korjaaminen, kun pelastustila tulee näkyviin Arch Linuxissa
Jakeluissa, kuten Arch Linuxissa, on suhteellisen yleistä kohdata GRUBin pelastustila sen jälkeen, kun Windows on päivittänyt järjestelmän, muuttanut käynnistysasetuksia tai muokannut osioita. Näissä tapauksissa tietokone käynnistyy, mutta GRUB-valikon sijaan näkyviin tulee minimalistinen kehote, jossa voidaan suorittaa vain muutamia komentoja.
Tässä tilassa voit yrittää käynnistää Arch Linuxin manuaalisesti kertomalla käynnistyslataimelle, missä kernel ja sen asetukset sijaitsevat. Tyypillinen esimerkki on rootin ja GRUB-etuliitteen asettaminen esimerkiksi komennoilla ` set root=(hd0,gpt8)` ja `set prefix=(hd0,gpt8)/boot/grub` , normaalimoduulin lataaminen komennolla `insmod normal` ja lopuksi `normal`-komennon suorittaminen osoittamaan tavalliseen käynnistysvalikkoon.
Tämä tarjoaa tilapäisen korjauksen, mutta ei ratkaise taustalla olevaa ongelmaa. Oikea menettelytapa Archin käynnistyksen jälkeen on ajaa ` grub-install` oikealle levylle (esimerkiksi `sudo grub-install /dev/sda` ) ja sitten ajaa `grub-mkconfig` . Tämä komento kuitenkin joskus epäonnistuu ja antaa viestejä, kuten "unable to identify a filesystem in hostdisk" tai että se ei voi suorittaa tietoturvatarkistuksia levylle.
Kun näin tapahtuu, turvallisin toimintatapa on käynnistää yhteensopivalta Live-medialta (kuten itse Arch-asennusohjelmalta tai Liveltä toisesta jakelusta), liittää osiot ja käyttää chrootia aiemmin kuvatulla tavalla. Tämä varmistaa, että laitteet ovat oikein saatavilla, osiotaulukko tunnistetaan oikein ja GRUB voidaan asentaa uudelleen ongelmitta . On tärkeää varmistaa, että asennat GRUBin koko levylle (esim. /dev/sda) etkä tietylle osiolle (esim. /dev/sda6), ellei sinulla ole erittäin erityistä syytä tehdä niin.
Windowsin käynnistyksen hallinnan ja BCD:n palauttaminen kaksoiskäynnistysjärjestelmissä
Kokoonpanoissa, joissa on rinnakkain kaksi Windows-versiota (esimerkiksi Windows 10 ja Windows 11) tai joissa vain Windowsin käynnistys on epäonnistunut Linux-kaksoiskäynnistyksessä, voi olla tarpeen korjata myös Windowsin käynnistyksen hallintaohjelma ja sen BCD-säilö.
Windowsissa on BCDBoot -niminen apuohjelma , jota voidaan käyttää Windows-pohjaisen järjestelmän käynnistysmerkintöjen luomiseen tai korjaamiseen . Se on erittäin hyödyllinen, kun olet asentanut toisen Windows-asennuksen eri osiolle tai levylle eikä se näy käynnistysvalikossa; tai kun käynnistysvalikko on tyhjennetty ja Windows käynnistyy vain yhteen järjestelmään.
Yleinen toimenpide sisältää tietokoneen käynnistämisen Windowsin asennusmedialta (tai palautusasemalta) ja korjausvaihtoehtojen käyttämisen. Asennusnäytössä tavallisen prosessin jatkamisen sijaan napsauta "Korjaa tietokone ". Siirry sieltä kohtaan "Vianmääritys" ja sitten "Lisäasetukset ", jossa voit valita joko "Komentokehote" tai "Käynnistyksen korjaus " tarpeidesi mukaan.
Jos valitset automaattisen korjauksen, "Käynnistyksen korjaus" -vaihtoehto yrittää automaattisesti korjata virheet käynnistyksen hallinnassa ja BCD-määrityksissä . Se on nopea tapa palauttaa Windowsin käynnistyksen hallinta monissa tapauksissa ilman, että komentoja tarvitsee syöttää manuaalisesti.
Jos tarvitset enemmän hallintaa, voit rakentaa BCD-säilön uudelleen komentoriviltä . Tyypillinen menettely on ensin varmuuskopioida nykyinen säilö esimerkiksi tiedostolla `ren BCD BCD.old` (siirryttyäsi oikeaan kansioon) ja sitten suorittaa komennon `bcdboot D:\Windows` (korvaamalla `D:\Windows` lisättävän Windows-asennuksen todellisella polulla). Jos et tiedä, mikä asemakirjain vastaa mitäkin osiota, voit käyttää komentoja `diskpart` ja sitten `list volume` nähdäksesi niille määritetyt kirjaimet.
On myös mahdollista määrittää kieli ja käynnistysasema käyttämällä täydellisempää syntaksia, kuten ` bcdboot c:\Windows /l en-us /s X: /f ALL` , korvaamalla X: käynnistysosion asemakirjaimella (tai sen muistitikun kirjaimella, jolle haluat luoda käynnistyslataimen). Tämä kirjoittaa BCD:n uudelleen puhtailla merkinnöillä valitulle Windows-versiolle, joten uudelleenkäynnistyksen yhteydessä molempien järjestelmien pitäisi näkyä käynnistysvalikossa , jos loput määrityksistä ovat oikein.
Korjaa Windowsin MBR Bootrecillä
Tilanteissa, joissa ongelma on suoraan Windowsin käynnistysasemana käytetyn levyn MBR:ssä (Master Boot Record) , voit käyttää myös Windowsin palautusympäristöissä olevaa bootrec- työkalua.
Prosessi alkaa yleensä käynnistämällä Windowsin asennusmedialta . Monissa Dell-tietokoneissa voit esimerkiksi painaa F12-näppäintä käynnistysnäytössä avataksesi käynnistysvalikon ja valita asennus-USB:n tai -DVD:n. Kun olet sisällä, kuten aiemminkin, napsauta "Korjaa tietokone " , sitten "Vianmääritys ", sitten "Lisäasetukset" ja lopuksi "Komentokehote ".
Konsolista voit suorittaa sarjan bootrec-komentoja tässä järjestyksessä korjataksesi MBR- ja BCD-tallennustilan: ensin bootrec /fixmbr , joka kirjoittaa puhtaan Windows-yhteensopivan MBR:n levylle; sitten bootrec /fixboot , joka luo uuden käynnistyssektorin järjestelmäosioon; ja lopuksi bootrec /rebuildbcd , joka etsii olemassa olevia Windows-asennuksia ja tarjoaa mahdollisuuden lisätä ne käynnistyssäilöön.
Kun nämä komennot toimivat virheettömästi, tietokone käynnistetään uudelleen poistamalla asennusmedia. Näin tarkistetaan, käynnistyykö Windows oikein ja jos käynnistyy, onko kaksoiskäynnistys Linuxissa edelleen käytettävissä GRUBin tai Boot Managerin kautta järjestelmän kokoonpanosta riippuen.
Kaikkien näiden työkalujen ja menettelyjen (LiveUSB Linuxille, chroot- ja GRUB-uudelleenasennus, Boot-Repairin, Syslinuxin, LILOn, BCDBootin ja bootrecin käyttö) tunteminen tekee paljon helpommaksi diagnosoida, mikä käynnistyskomponentti on rikki kaksoiskäynnistysjärjestelmässä, ja soveltaa sopivaa ratkaisua kussakin tapauksessa, välttäen täydelliset järjestelmän uudelleenasennukset ja palauttaen vakaan kaksoiskäynnistyksen Windowsin ja suosikki Linux-jakelusi välillä vain muutamalla vaiheella.