Vraag Grub toont geen optie voor Windows 8 na dual-boot


Ik heb dus met succes mijn Windows 8-machine dual-gestart met Ubuntu 12.04. Ik heb echter nog steeds geen handige methode om te kiezen welk besturingssysteem moet worden geladen tijdens het opstarten.

Na het installeren van Ubuntu laadt mijn computer Windows 8 nog steeds rechtstreeks. Ik heb toen toegevoegd grubx64.efi naar de witte lijst van mijn bootloader. Maar daarna laadt mijn machine Ubuntu rechtstreeks zonder dat zelfs maar een GRUB-scherm verschijnt!

Ik heb boot-repair gebruikt en ik heb deze URL van pasta.ubuntu gekregen: paste.ubuntu.com/1326074. Na het uitvoeren van boot-repair (en opnieuw wit aanbieden van de grubx64.efi bestand), GRUB verschijnt nu maar zonder enige Windows 8 optie!

Ten slotte ben ik weggerend sudo fdisk -l en het gaf me dit:

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 750.2 GB, 750156374016 bytes
255 heads, 63 sectors/track, 91201 cylinders, total 1465149168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x6396389f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  1465149167   732574583+  ee  GPT
Partition 1 does not start on physical sector boundary.

Ik vermoed dat mijn probleem iets te maken heeft met de waarschuwing van fdisk hierboven, maar ik weet niet wat ik ermee moet doen. Hoe ga ik nu verder?

Bewerk

Mijn etc/default/grub is als volgt:

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"

Ook voor de goede orde, dit is wat ik volgde bij het installeren van mijn dual-boot. De tutorial (die gebruikt, 11.10, moet ik opmerken), vermeldt niets over dit probleem. Is er iets dat ik niet had moeten doen?


25
2017-11-02 11:12


oorsprong


Lees dit antwoord, kan je helpen: askubuntu.com/questions/84501/... - Nick Thom
Ter informatie: ubuntuforums.org/showpost.php?p=12342042&postcount=613 - LovinBuntu


antwoorden:


Ten eerste, jouw fdisk -l uitvoer is geen probleem; dat identificeert eenvoudig uw schijf zoals gebruikend het GUID-verdelingstabel (GPT) partitioneringssysteem. Als u uw partities wilt bekijken, moet u in plaats daarvan een GPT-geschikt hulpmiddel gebruiken, zoals gdisk of parted, liever dan fdisk, die GPT niet begrijpt.

Ten tweede kun je misschien GRUB krijgen om Windows te ketenladen door een geschikt item toe te voegen aan /etc/grub.d/40_custom en dan een sudo update-grub. Een item ziet er ongeveer zo uit:

menuentry "Windows 8" {
    set root='(hd0,gpt1)'
    chainloader /EFI/microsoft/BOOT/bootmgfw.efi
}

De details kunnen echter afhankelijk zijn van uw installatie.

Ten derde, als je REFInd als lelijk beschouwt, kun je altijd een ander rEFInd-thema proberen of je eigen thema maken, zoals beschreven in de gerefereerde documentatie. Als u echter de voorkeur geeft aan een opstartlader voor tekstmodus, kunt u de textonly optie in refind.conf. U kunt een vergelijkbaar doel bereiken door over te schakelen naar Gummiboot.

Ten vierde, als rEFInd periodiek fouten meldt, schrijf dat dan op of maak een foto van het scherm met een digitale camera en meld deze aan mij. (Ik ben de maintainer van rEFInd.) Bugs kunnen niet gerepareerd worden als niemand ze rapporteert; of als het geen bugs in rEFInd zijn, kunnen de berichten aanwijzingen geven over hoe het probleem op te lossen.

Ten slotte is het mogelijk om Linux te starten via rEFInd (of gummiboot) zonder GRUB te gebruiken; je hebt gewoon een andere EFI-bootloader nodig. Mijn persoonlijke voorkeur is de Linux kernel EFI stub-loader. Dit is echter alleen beschikbaar in 3.3.0 en latere kernels. Omdat Ubuntu 12.04 wordt geleverd met een 3.2.0-kernel, moet je ofwel een vooraf gebouwde 3.3.0 voor Ubuntu 12.04 vinden (ik heb van dergelijke dingen gehoord, maar ik heb geen links bij de hand) of bouw je bezit van de broncode. (Je zou ook Ubuntu 12.10 kunnen installeren, die wordt geleverd met een geschikte kernel, maar vermoedelijk wil je een LTS-release, dus dit is misschien niet optimaal.) Zie de rEFInd documentatie pagina over het booten van Linux voor meer informatie over het instellen hiervan. Je kunt ook ELILO of GRUB Legacy gebruiken. Als u eenvoudigweg bezwaar maakt tegen de vertraging, kunt u de GRUB 2-timeoutwaarde verlagen en instellen dat het menu standaard niet wordt weergegeven.


17
2017-11-02 18:24



Ten eerste, wauw, ik wist niet dat je de beheerder van rEFInd bent. Wat betreft de GRUB menuentry ... heb ik dat geprobeerd, maar het werkt niet. Onder andere foto's in het donker heb ik geprobeerd mijn ESP-partitie in te stellen, maar het mocht niet baten. Zelfs geprobeerd met behulp van een van die grafische GRUB-editors (de naam vergeten). Ten slotte, met betrekking tot rEFInd, zijn de fouten die het rapporteert niet kritisch (zal mijn bericht aanpassen om dat op te merken) --- bij het opstarten vertelt het me gewoon dat het bepaalde .efi's niet kan vinden. Ik heb geen idee waar ze vandaan komen. - skytreader
Controleer op de aanwezigheid van het opgegeven bestand op de ESP. Zorg er ook voor dat het geval van de bestandsnaam is correct. (Het zou er niet toe doen, maar ik weet één buggy-EFI waar het werkt!) Als dat niet helpt, welke foutmelding (indien aanwezig) geeft GRUB terug wanneer je Windows probeert te starten via dit item? - Rod Smith


Boot in Ubuntu met behulp van CD,
Kies "Probeer Ubuntu",
Maak verbinding met internet,
Open een terminalvenster met Ctrl-alt-t en voer dan uit: boot-repair

Als Boot-Repair niet wordt gevonden, installeer het dan:

sudo add-apt-repository ppa:yannubuntu/boot-repair &&
sudo apt-get update &&
sudo apt-get install -y boot-repair &&
boot-repair

Klik op Aanbevolen reparatie. Schrijf op een papier de nieuwe URL die zal verschijnen. Start de pc opnieuw op, je zou een GRUB-menu moeten krijgen met toegang tot zowel Ubuntu als Windows. Als er een probleem is, geeft u de nieuwe URL aan.


8
2018-03-20 03:27





Beide antwoorden met /EFI/Microsoft/Boot/bootmgfw.efi zou doen. Ik heb echter zo gehackt om de juiste instellingen te krijgen set root='(hd0,gpt1)'. Als je weet dat het heel simpel is

Wanneer GRUB start: druk op c geef het bevel ls op de prompt.
Je krijgt een lijst met partities op harddisks zoals (hd0, gpt1) etc.
Type ls (hd0, gpt1) en probeer de anderen.
Kijk naar het label en als het EFI is, weet je dat je een hit hebt.

Waarschuwing: er kunnen meer partities worden gelabeld met EFI, afhankelijk van hoe u Ubuntu hebt geïnstalleerd. Probeer ze allemaal.


7
2018-02-15 17:46





Probeer te rennen sudo update-grub. Dit zou hopelijk Windows 8 automatisch moeten herkennen en het aan de GRUB moeten toevoegen en het menu opnieuw moeten configureren.

Als dat niet lukt, deel uw /etc/default/grub bestand hier, we zullen een kijkje nemen.


6
2017-11-02 11:24



Hoi. sudo update-grub heeft het niet gedaan. Ik heb mijn vraag bewerkt om mijn op te nemen /etc/default/grub. Ondertussen bestudeer ik het antwoord dat NikTh linkt. - skytreader


Probeer een bestand te maken met de naam /etc/grub.d/30_windows dat bevat dit:

#! / Bin / bash
kat << EOF
menuentry "Windows 8" {
    insmod part_gpt
    insmod-keten
    set root = '(hd0, gpt1)'
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
EOF
Ren dan sudo update-grub en start opnieuw op.

Volledige tutorial


3
2017-12-14 20:54





  1. Download supergrub alsjeblieft en volg de aanwijzingen. Ik ga nooit weg zonder het huis. Zeer nuttig wanneer het menu Grub niet verschijnt.

  2. Je zult naar een cd moeten laden en hem opstarten. Volg gewoon de instructies die daarbij horen.

  3. Het kan ook worden gebruikt om vensters te repareren. Omdat je alleen in Windows 8 kunt opstarten, wil je de Linux-fix kiezen.

Speel hier maar op, maar lees de instructies. Je zult je na een tijdje een expert voelen. RS


1
2018-05-13 02:10





Mijn ultieme oplossing

(* Omdat Tom niet werkte en de link van NikTh te gecompliceerd is. Maar goed, bedankt voor de moeite!)

Installeren hervinden.


Ik accepteer mijn eigen antwoord totdat iemand wijst op een mogelijke fout en een oplossing of mijn problemen aanpakt (die helaas gewoon de vraag stelt "Hoe zet ik Windows 8 in GRUB? gemakkelijk? ').

(Bewerk 8/6/17: Ik heb uiteindelijk REFInd gebruikt om dit probleem op te lossen (zie geaccepteerd antwoord hierboven).)

Verre van een perfecte oplossing, lijkt het gebruik van rEFInd een hacktaak. Ten eerste ziet het er lelijk uit (sorry rEFInd) en vertelt me ​​dat toegang is geweigerd op bepaalde .efi's ({ext2_x64, hfs_x64, iso9660_x64, reiserfs_x64} .efi) bij het opstarten --- niets is echter van cruciaal belang en gaat weg met een knop druk op*. En, tenslotte, het kiezen van de Ubuntu efi laadt nog steeds GRUB wat een geheel onnodige stap is, althans omdat ik niet de moeite zal nemen om meerdere kernelversies bij te houden.

Samengevat...

Voors: mijn systeem werkt nu min of meer zoals mijn pre-UEFI dual-boots. Nadelen: het ziet er lelijk uit plus een langere opstarttijd.

* Ik moet er rekening mee houden dat deze rEFInd via is geïnstalleerd install.sh op mijn Ubuntu-partitie. Eerdere ervaringen met rEFInd (set-up via Windows) hadden dit probleem niet.


0
2017-11-02 18:01



Als een vorige rEFInd-installatie via Windows geen fouten oplevert over bestanden die niet konden worden gevonden, maar je huidige installatie van Linux wel, dan is mijn vermoeden dat er een van twee dingen aan de hand is: 1) Je hebt een moederbord met een bug met hoofdlettergevoeligheid, in welk geval het meppen met het geval van bestanden of mappen de zaak kan verbeteren; of 2) Er is iets vreemds aan uw ESP (FAT16 vs. FAT32 of enkele beschadigingen van het bestandssysteem bijvoorbeeld). Sommige EFI's lijken erg kieskeurig te zijn over de bestandssystemen op hun ESP's. Exacte bestandsnamen kunnen behulpzaam zijn bij het verkleinen van het probleem. - Rod Smith
OK. Mijn fout. Het beweerde niet dat het bepaalde efi's niet kon vinden, alleen dat de toegang werd geweigerd op bepaalde efi's (dus neem ik aan dat de genoemde efi's er zijn, gewoon ontoegankelijk?). Ik heb deze bestanden nu genoteerd hoewel ik nog steeds geen idee heb waar ze vandaan komen. - skytreader
"Toegang geweigerd" is een ongebruikelijke fout op EFI, in mijn ervaring. AFAIK, EFI ondersteunt geen eigendomsrechten of permissies zoals Linux, dus het heeft niet echt zin tenzij er een schijfleesfout is. Ik heb een rare schijf gezien schrijven fouten onder EFI die zijn verdwenen bij de volgende herstart. Als dit probleem zich blijft voordoen, kunt u overwegen om een ​​SMART-test uit te voeren op uw schijf voor het geval er een hardwarefout optreedt en maak een back-up en herschrijf de ESP in het geval er enkele rare bestandssysteemschade is die niet door dosfsck kan worden opgelost. Anders dan dat, kan het nuttig zijn om te melden welke bestanden problemen geven. - Rod Smith
Het bericht "toegang geweigerd" heeft vrijwel zeker betrekking op Secure Boot. Een dergelijk bericht doet zich voor als rEFInd een niet-ondertekend EFI-binaire bestand probeert te laden in de modus Secure Boot. Wat hierover raadselachtig is, is dat je rEFInd helemaal kunt starten, omdat het zelf niet is ondertekend. Mijn idee is dat je een soort van rare Buggy half-geactiveerde Secure Boot-instelling hebt in je firmware. De eenvoudigste oplossing op dit moment is om Secure Boot volledig uit te schakelen, maar er zijn nog andere. Zie mijn webpagina op rodsbooks.com/efi-bootloaders/secureboot.html voor meer informatie. - Rod Smith
Op mijn HP-laptop moet ik op f9 drukken en dan de laarzen opdoen, anders worden de vensters geladen. Er is ook een optie om Windows vanaf grub op te starten, hoewel ik het nooit gebruik. Als ik me in Windows vervuil, schakel ik het gewoon in en wacht ik op Windows. Als ik van plan ben om ubuntu op te starten, druk ik gewoon op f9 zodra ik opstart. - geoffmcc