Error disk hd1 gpt1 not found

Joined: 02 Aug 2019Posts: 7
View previous topic :: View next topic  
Author Message
TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Fri Aug 02, 2019 6:26 pm    Post subject: [SOLVED] Grub2 only gives: error: disk ‘hd0,gpt1’ not found Reply with quote

Hello all,

I have been trying to install Gentoo to my new Intel NUC8i7HVK. I’m aiming it to be installed so that the whole M.2 (NVME) disk is encrypted, and I’d use an un-encrypted USB stick as /boot, so its sort of a key to boot the machine. I just seem to be having a issue in that grub2 does not find any disks, even though grub2 itself does load. Something is hiding all the disks? Maybe EFI has some part in this, since this is the first machine I’ve had to utilize it?

Picture of the result:

https://pasteboard.co/IqNWN2L.jpg

Picture of trying to «ls» after setting debug=all:

https://pasteboard.co/IqNYyoP.jpg

I do not know why it complains about this hd0,gpt1 anyway, because the grub config does not seem to be even asking for it anywhere?

Here is the grub.cfg:

https://pastebin.com/MMfLdyyc

There might be some unnecessary «insmod»s etc from trying out different stuff to have some kind of effect on this issue, none of which have seemed to make any difference. When grub boots, if I press «e» on the boot menu entry, it shows that config as it is above, so it can read it ok.

blkid output:

https://pastebin.com/DBWAKzfq

Could it be that when I’m chrooted to the system using a archbang live usb, the grub-mkconfig names the devices differently, than when I remove the archbang live usb, and just try to boot from the intended /boot usb? There is no grub device map to give clues anymore as far as I know.(?) Maybe using USB stick as /boot is not as simple as I thought.

I have not been able to find any answers to this issue even though some people seem to have had almost the same issue, but they’ve just installed syslinux etc. to circumvent this problem. At the moment this computer is not essential to me, so I may keep it like this to find what the issue is, and maybe learn something along the way, which is mainly why I started on this journey with Gentoo anyway. I did install this following the handbook closely, and have made other Gentoo installs succesfully in the past, but those have not had encryption, lvm, uefi, or usb boot disk. Maybe I bit a piece too big for me to swallow…

Somewhat similar reports people have had in the past:

https://bbs.archlinux.org/viewtopic.php?id=238390

https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1316068

I’d be very grateful for any directions and suggestions.

Last edited by TheTapsaFi on Sat Aug 03, 2019 8:49 pm; edited 1 time in total

Back to top

View user's profile Send private message

TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Sat Aug 03, 2019 8:15 am    Post subject: Reply with quote

Tried to reinstall grub. Formatted the USB stick that has /boot (/dev/sdb1) and /boot/efi (/dev/sdb2) partitions. Swapped the partitions around so that fat32 esp partition /boot/efi is on first partition (/dev/sdb1) and ext4 /boot is on second (/dev/sdb2). Reinstalled kernel and initramfs, and ran «grub-install —target=x86_64-efi —efi-directory=/boot/efi» again. Grub.cfg looks pretty similar, and now the error is «error: disk ‘hd0,gpt2’ not found.» So it did react to the partitions being in the other order, but still searches for hd0, instead of hd1 mentioned in the grub.cfg. All of the available commands either seem to do nothing, absolutely no output, or give the error disk not found message. Even «halt» gives disk not found.

efibootmgr -v seems to show the entry created correctly by grub-install.

No replies yet… Maybe my question is either too obvious, has insufficient information, or too difficult. Knowing which it is would also help. ^^

Back to top

View user's profile Send private message

alamahant
Advocate
Advocate

Joined: 23 Mar 2019
Posts: 3304

PostPosted: Sat Aug 03, 2019 11:37 am    Post subject: Reply with quote

May be you need to create your initramfs with this

Code:

genkernel —luks —lvm —install initramfs



Furthermore if your /boot is on a usb does the fstab reflect this?

Can you post your fstab and /etc/default/grub plz?

Better use UUIDs in fstab for your mounts.

Do you have the «dolvm» and the luks flags in the GRUB_CMDLINE_LINUX=»» in your /etc/default/grub?

You seem to have your /boot in one disk your efi in another and your / in another..

Is such complexity absolutely essential?

Back to top

View user's profile Send private message

TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Sat Aug 03, 2019 1:59 pm    Post subject: Reply with quote

Thanks alamahant,

Yes initramfs was created with:

Code:
genkernel —luks —lvm —keymap —firmware —install initramfs



I did now do this again, after making sure /dev/sdb1 was mounted at /boot/efi and /dev/sdb2 mounted at /boot.

Current fstab that I updated after the previous partition adjustment:

Code:

# <fs>                  <mountpoint>    <type>          <opts>          <dump/pass>

#swap

UUID=f88f766f-c7b8-4d69-aa0b-fbda45d101ac   none    swap    sw  0 0

#root

UUID=f89b4582-0063-4f60-9952-58e9bb484850   /   ext4    noatime 0 1

#boot

PARTUUID=b63250fa-d4e5-4aa6-b73e-e8f204fec259   /boot   ext4    noatime 0 2

#efi

PARTUUID=69fbeb2d-57d5-46b7-9cbf-db97b64e83c6   /boot/efi   vfat    noatime 0 2

#home

UUID=41f36876-bcab-4d5d-bbae-f008dd334ba3   /home   ext4    atime   0 0

#tmp

UUID=4f6223e6-a815-4239-9f59-ef9e69cc51b4   /tmp    ext4    noatime 0 0

Current blkid:

Code:

/dev/nvme0n1: UUID=»cba3f1f5-a4fa-4199-8377-e16d229fa1c9″ TYPE=»crypto_LUKS»

/dev/sda1: LABEL=»MULTIBOOT» UUID=»1CED-2257″ TYPE=»vfat» PARTUUID=»0005f8cc-01″

/dev/loop0: TYPE=»squashfs»

/dev/mapper/acheron: UUID=»skhVcS-n3pi-Ulmw-iygg-b64q-teO7-BTjGkE» TYPE=»LVM2_member»

/dev/mapper/acheronVG-acheronTmp: UUID=»4f6223e6-a815-4239-9f59-ef9e69cc51b4″ TYPE=»ext4″

/dev/mapper/acheronVG-acheronRoot: UUID=»f89b4582-0063-4f60-9952-58e9bb484850″ TYPE=»ext4″

/dev/mapper/acheronVG-acheronHome: UUID=»41f36876-bcab-4d5d-bbae-f008dd334ba3″ TYPE=»ext4″

/dev/mapper/acheronVG-acheronSwap: UUID=»f88f766f-c7b8-4d69-aa0b-fbda45d101ac» TYPE=»swap»

/dev/sdb1: LABEL_FATBOOT=»EFI» LABEL=»EFI» UUID=»D84B-4D6C» TYPE=»vfat» PARTLABEL=»efi» PARTUUID=»69fbeb2d-57d5-46b7-9cbf-db97b64e83c6″

/dev/sdb2: LABEL=»boot» UUID=»8af5dba4-764f-47fa-a68f-daec6a20fbdc» TYPE=»ext4″ PARTLABEL=»boot» PARTUUID=»b63250fa-d4e5-4aa6-b73e-e8f204fec259″

/dev/sdb3: LABEL=»storage1″ UUID=»49035136232C35A4″ TYPE=»ntfs» PTTYPE=»dos» PARTLABEL=»storage1″ PARTUUID=»7daf21c3-5024-4386-bd2d-30dcb6734ddd»

/etc/default/grub has lots of comments, but here are the uncommented lines:

Code:

GRUB_ENABLE_CRYPTODISK=y

GRUB_PRELOAD_MODULES=»part_gpt lvm usb usb_keyboard ehci ohci uhci cryptodisk luks»

GRUB_TERMINAL_INPUT=»usb_keyboard»

GRUB_DISTRIBUTOR=»Gentoo»

GRUB_CMDLINE_LINUX=»dolvm crypt_root=UUID=»cba3f1f5-a4fa-4199-8377-e16d229fa1c9″ root=UUID=»f89b4582-0063-4f60-9952-58e9bb484850″»

GRUB_DEFAULT=0



I added luks after reading your reply, as i did not notice it was available together with cryptodisk. I did regenerate grub-mkconfig after this.

Currrent grub.cfg:

Code:

#

# DO NOT EDIT THIS FILE

#

# It is automatically generated by grub-mkconfig using templates

# from /etc/grub.d and settings from /etc/default/grub

#

 

### BEGIN /etc/grub.d/00_header ###

insmod part_gpt

insmod lvm

insmod usb

insmod usb_keyboard

insmod ehci

insmod ohci

insmod uhci

insmod cryptodisk

insmod luks

if [ -s $prefix/grubenv ]; then

  load_env

fi

if [ «${next_entry}» ] ; then

   set default=»${next_entry}»

   set next_entry=

   save_env next_entry

   set boot_once=true

else

   set default=»0″

fi

 

if [ x»${feature_menuentry_id}» = xy ]; then

  menuentry_id_option=»—id»

else

  menuentry_id_option=»»

fi

 

export menuentry_id_option

 

if [ «${prev_saved_entry}» ]; then

  set saved_entry=»${prev_saved_entry}»

  save_env saved_entry

  set prev_saved_entry=

  save_env prev_saved_entry

  set boot_once=true

fi

 

function savedefault {

  if [ -z «${boot_once}» ]; then

    saved_entry=»${chosen}»

    save_env saved_entry

  fi

}

 

function load_video {

  if [ x$feature_all_video_module = xy ]; then

    insmod all_video

  else

    insmod efi_gop

    insmod efi_uga

    insmod ieee1275_fb

    insmod vbe

    insmod vga

    insmod video_bochs

    insmod video_cirrus

  fi

}

 

if loadfont unicode ; then

  set gfxmode=auto

  load_video

  insmod gfxterm

  set locale_dir=$prefix/locale

  set lang=fi_FI@euro

  insmod gettext

fi

terminal_input usb_keyboard

terminal_output gfxterm

if [ x$feature_timeout_style = xy ] ; then

  set timeout_style=menu

  set timeout=5

# Fallback normal timeout code in case the timeout_style feature is

# unavailable.

else

  set timeout=5

fi

### END /etc/grub.d/00_header ###

 

### BEGIN /etc/grub.d/10_linux ###

menuentry ‘Gentoo GNU/Linux’ —class gentoo —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-simple-/dev/mapper/acheronVG-acheronRoot’ {

    load_video

    if [ «x$grub_platform» = xefi ]; then

        set gfxpayload=keep

    fi

    insmod gzio

    insmod part_gpt

    insmod ext2

    set root=’hd1,gpt2′

    if [ x$feature_platform_search_hint = xy ]; then

      search —no-floppy —fs-uuid —set=root —hint-ieee1275=’ieee1275/(null)/sas/disk@0,gpt2′ —hint-bios=hd1,gpt2 —hint-efi=hd1,gpt2 —hint-baremetal=ahci1,gpt2  8af5dba4-764f-47fa-a68f-daec6a20fbdc

    else

      search —no-floppy —fs-uuid —set=root 8af5dba4-764f-47fa-a68f-daec6a20fbdc

    fi

    echo    ‘Ladataan Linux 4.19.52-gentoo kayttojarjestelmaydin …’

    linux   /vmlinuz-4.19.52-gentoo root=/dev/mapper/acheronVG-acheronRoot ro dolvm crypt_root=UUID=cba3f1f5-a4fa-4199-8377-e16d229fa1c9 root=UUID=f89b4582-0063-4f60-9952-58e9bb484850

    echo    ‘Ladataan alustavaa ramlevya …’

    initrd  /initramfs-genkernel-x86_64-4.19.52-gentoo

}

submenu ‘Lisavalitsimet kohteelle «Gentoo GNU/Linux»‘ $menuentry_id_option ‘gnulinux-advanced-/dev/mapper/acheronVG-acheronRoot’ {

    menuentry ‘Gentoo GNU/Linux, jakeluversiolla Linux 4.19.52-gentoo’ —class gentoo —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-4.19.52-gentoo-advanced-/dev/mapper/acheronVG-acheronRoot’ {

        load_video

        if [ «x$grub_platform» = xefi ]; then

            set gfxpayload=keep

        fi

        insmod gzio

        insmod part_gpt

        insmod ext2

        set root=’hd1,gpt2′

        if [ x$feature_platform_search_hint = xy ]; then

          search —no-floppy —fs-uuid —set=root —hint-ieee1275=’ieee1275/(null)/sas/disk@0,gpt2′ —hint-bios=hd1,gpt2 —hint-efi=hd1,gpt2 —hint-baremetal=ahci1,gpt2  8af5dba4-764f-47fa-a68f-daec6a20fbdc

        else

          search —no-floppy —fs-uuid —set=root 8af5dba4-764f-47fa-a68f-daec6a20fbdc

        fi

        echo    ‘Ladataan Linux 4.19.52-gentoo kayttojarjestelmaydin …’

        linux   /vmlinuz-4.19.52-gentoo root=/dev/mapper/acheronVG-acheronRoot ro dolvm crypt_root=UUID=cba3f1f5-a4fa-4199-8377-e16d229fa1c9 root=UUID=f89b4582-0063-4f60-9952-58e9bb484850

        echo    ‘Ladataan alustavaa ramlevya …’

        initrd  /initramfs-genkernel-x86_64-4.19.52-gentoo

    }

    menuentry ‘Gentoo GNU/Linux, jakeluversiolla Linux 4.19.52-gentoo (toipumistila)’ —class gentoo —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-4.19.52-gentoo-recovery-/dev/mapper/acheronVG-acheronRoot’ {

        load_video

        if [ «x$grub_platform» = xefi ]; then

            set gfxpayload=keep

        fi

        insmod gzio

        insmod part_gpt

        insmod ext2

        set root=’hd1,gpt2′

        if [ x$feature_platform_search_hint = xy ]; then

          search —no-floppy —fs-uuid —set=root —hint-ieee1275=’ieee1275/(null)/sas/disk@0,gpt2′ —hint-bios=hd1,gpt2 —hint-efi=hd1,gpt2 —hint-baremetal=ahci1,gpt2  8af5dba4-764f-47fa-a68f-daec6a20fbdc

        else

          search —no-floppy —fs-uuid —set=root 8af5dba4-764f-47fa-a68f-daec6a20fbdc

        fi

        echo    ‘Ladataan Linux 4.19.52-gentoo kayttojarjestelmaydin …’

        linux   /vmlinuz-4.19.52-gentoo root=/dev/mapper/acheronVG-acheronRoot ro single dolvm crypt_root=UUID=cba3f1f5-a4fa-4199-8377-e16d229fa1c9 root=UUID=f89b4582-0063-4f60-9952-58e9bb484850

        echo    ‘Ladataan alustavaa ramlevya …’

        initrd  /initramfs-genkernel-x86_64-4.19.52-gentoo

    }

}

 

### END /etc/grub.d/10_linux ###

 

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

 

### BEGIN /etc/grub.d/30_os-prober ###

### END /etc/grub.d/30_os-prober ###

 

### BEGIN /etc/grub.d/40_custom ###

# This file provides an easy way to add custom menu entries.  Simply type the

# menu entries you want to add after this comment.  Be careful not to change

# the ‘exec tail’ line above.

### END /etc/grub.d/40_custom ###

 

### BEGIN /etc/grub.d/41_custom ###

if [ -f  ${config_directory}/custom.cfg ]; then

  source ${config_directory}/custom.cfg

elif [ -z «${config_directory}» -a -f  $prefix/custom.cfg ]; then

  source $prefix/custom.cfg;

fi

### END /etc/grub.d/41_custom ###



Is that «—hint-efi=hd1,gpt2» line wrong? /boot/efi is on partition /dev/sdb1, not /dev/sdb2. Should I correct this somehow? I did try to press ‘e’ again at grub menu and change this to «hd1,gpt1» and pressed F10, and got the same result, disk «hd0,gpt2″ not found.

Here is the efibootmgr I did not add to my previous post:

Code:

# efibootmgr -v

BootCurrent: 0002

Timeout: 1 seconds

BootOrder: 0001,0002,0000

Boot0000* Windows Boot Manager  VenHw(99e275e7-75a0-4b37-a2e6-c5385e6c00cb)WINDOWS………x…B.C.D.O.B.J.E.C.T.=.{.9.d.e.a.8.6.2.c.-.5.c.d.d.-.4.e.7.0.-.a.c.c.1.-.f.3.2.b.3.4.4.d.4.7.9.5.}…}…………….

Boot0001* gentoo    HD(1,GPT,69fbeb2d-57d5-46b7-9cbf-db97b64e83c6,0x800,0x64000)/File(EFIgentoogrubx64.efi)

Boot0002* UEFI : USB : KingstonDT 101 G2 PMAP : PART 0 : OS Bootloader  PciRoot(0x0)/Pci(0x1,0x1)/Pci(0x0,0x0)/USB(3,0)/HD(1,MBR,0x5f8cc,0x800,0xec6800)..BO

Tried booting again, these above actions had no noticeable effect.

EDIT: forgot to answer this:

Quote:
You seem to have your /boot in one disk your efi in another and your / in another..

Is such complexity absolutely essential?



Aim is to have the whole M.2 SSD encrypted, and use the USB stick containing /boot and /boot/efi as sort of a key to boot the machine. I thought this was the easier approach, but maybe I was wrong. I do not however think this isn’t a possible setup. I guess /boot and /boot/efi could be on the same fat formatted partition too, but some guides suggested to make it this way, so I did (, although those discussed migrating from bios to efi).

Back to top

View user's profile Send private message

alamahant
Advocate
Advocate

Joined: 23 Mar 2019
Posts: 3304

PostPosted: Sat Aug 03, 2019 2:56 pm    Post subject: Reply with quote

Have you installed lvm2 and dosfstools ?

Try to do efibootmgr -n 0001 && reboot
Back to top

View user's profile Send private message

TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Sat Aug 03, 2019 3:56 pm    Post subject: Reply with quote

Both are installed:

Code:

# emerge —search sys-fs/dosfstools

 

[ Results for search key : sys-fs/dosfstools ]

Searching…

 

*  sys-fs/dosfstools

      Latest version available: 4.1

      Latest version installed: 4.1

      Size of files: 169 KiB

      Homepage:      https://github.com/dosfstools/dosfstools

      Description:   DOS filesystem tools — provides mkdosfs, mkfs.msdos, mkfs.vfat

      License:       GPL-3

 

[ Applications found : 1 ]

 

# emerge —search sys-fs/lvm2

 

[ Results for search key : sys-fs/lvm2 ]

Searching…

 

*  sys-fs/lvm2

      Latest version available: 2.02.184-r4

      Latest version installed: 2.02.184-r4

      Size of files: 2 328 KiB

      Homepage:      https://sourceware.org/lvm2/

      Description:   User-land utilities for LVM2 (device-mapper) software

      License:       GPL-2

 

[ Applications found : 1 ]

Parted says the following about the usb stick that is supposed to boot:

Code:

Model: Kingston DataTraveler 2.0 (scsi)

Disk /dev/sdb: 7807MB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

Disk Flags:

 

Number  Start   End     Size    File system  Name      Flags

 1      1049kB  211MB   210MB   fat32        efi       boot, esp

 2      211MB   840MB   629MB   ext4         boot

 3      4138MB  7807MB  3669MB  ntfs         storage1  msftdata

Tried rebooting after efibootmgr command, no effect, the exact same result. «Gentoo» option is visible in UEFI menu, and grub does load the menuentries, and corresponding configs, but then gives error about hd0. Feels like grub is thinking it resides on hd0,gpt2, even though it is on hd1, gpt 1 or 2? I’m not sure if it installs on the /boot/efi partition or the other, mounted on /boot.(?)

Back to top

View user's profile Send private message

GDH-gentoo
Veteran
Veteran

Joined: 20 Jul 2019
Posts: 1043
Location: South America

PostPosted: Sat Aug 03, 2019 6:29 pm    Post subject: Reply with quote

TheTapsaFi wrote:
Maybe my question is either too obvious, has insufficient information, or too difficult. Knowing which it is would also help. ^^



The last alternative probably :) GRUB has documentation, but I find it rather lacking in some aspects. If GRUB is loading and presenting the menu, then the UEFI firmware at least knows how to handle booting from the USB stick and handing control to GRUB. So I wouldn’t mess any more with efibootmgr. Instead, assuming you are able to make changes to grub.cfg and try booting afterwards, I’d comment out some of the insmod commands and commands that depend on that. I’ll post a suggestion later. In the meantime, can we see your whole /etc/default/grub?

Last edited by GDH-gentoo on Sat Aug 03, 2019 10:36 pm; edited 3 times in total

Back to top

View user's profile Send private message

TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Sat Aug 03, 2019 6:30 pm    Post subject: Reply with quote

I do not have any other ESPs.

My hard drive, M.2 SSD, /dev/nvme0n1, is completely encrypted.

Parted:

Code:

Error: /dev/nvme0n1: unrecognised disk label

Model: Unknown (unknown)                                                 

Disk /dev/nvme0n1: 256GB

Sector size (logical/physical): 512B/512B

Partition Table: unknown

Disk Flags:

It has only one physical volume in it, containing one volumegroup, with three logical volumes, one of which is the root, as you’ve seen above in blkid.

Removing the encryption, recreating the physical volume to allow for another partitions for /boot and /boot/efi, and reinstalling grub on the /dev/nvme0n1 sounds like a massive amount of work, and would probably mean I would have to do all of the work so far again, only to then start the work yet again to work towards the setup I wanted, which I have described, if it worked. I’m not very willing to do this yet.

Also I do think grub should at least see some disks, like the one it itself is installed on, when «ls -l» is input from the command line, or at least halt when given the command, instead of giving error about some unknown disk to almost every command.

I might try to install grub on some other usb stick though.

But I’ll try the grub install with recheck first.

Back to top

View user's profile Send private message

TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Sat Aug 03, 2019 7:12 pm    Post subject: Reply with quote

Oh, did not notice your post GDH-gentoo. Thanks for replying though!

I’ll hold on with the grub reinstall for a bit then.

Here you go,

Code:

# cat /etc/default/grub

# Copyright 1999-2015 Gentoo Foundation

# Distributed under the terms of the GNU General Public License v2

#

# To populate all changes in this file you need to regenerate your

# grub configuration file afterwards:

#     ‘grub2-mkconfig -o /boot/grub/grub.cfg’

#

# See the grub info page for documentation on possible variables and

# their associated values.

GRUB_ENABLE_CRYPTODISK=y

GRUB_PRELOAD_MODULES=»part_gpt lvm usb usb_keyboard ehci ohci uhci cryptodisk luks»

GRUB_TERMINAL_INPUT=»usb_keyboard»

GRUB_DISTRIBUTOR=»Gentoo»

GRUB_CMDLINE_LINUX=»dolvm crypt_root=UUID=»cba3f1f5-a4fa-4199-8377-e16d229fa1c9″ root=UUID=»f89b4582-0063-4f60-9952-58e9bb484850″»

# Default menu entry

GRUB_DEFAULT=0

# Boot the default entry this many seconds after the menu is displayed

#GRUB_TIMEOUT=5

#GRUB_TIMEOUT_STYLE=menu

# Append parameters to the linux kernel command line

#GRUB_CMDLINE_LINUX=»»

#

# Examples:

#

# Boot with network interface renaming disabled

# GRUB_CMDLINE_LINUX=»net.ifnames=0″

#

# Boot with systemd instead of sysvinit (openrc)

# GRUB_CMDLINE_LINUX=»init=/usr/lib/systemd/systemd»

# Append parameters to the linux kernel command line for non-recovery entries

# 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=640×480

# Set to ‘text’ to force the Linux kernel to boot in normal text

# mode, ‘keep’ to preserve the graphics mode set using

# ‘GRUB_GFXMODE’, ‘WIDTHxHEIGHT'[‘xDEPTH’] to set a particular

# graphics mode, or a sequence of these separated by commas or

# semicolons to try several modes in sequence.

#GRUB_GFXPAYLOAD_LINUX=

# Path to theme spec txt file.

# The starfield is by default provided with use truetype.

# NOTE: when enabling custom theme, ensure you have required font/etc.

#GRUB_THEME=»/boot/grub/themes/starfield/theme.txt»

# Background image used on graphical terminal.

# Can be in various bitmap formats.

#GRUB_BACKGROUND=»/boot/grub/mybackground.png»

# Uncomment if you don’t want GRUB to pass «root=UUID=xxx» parameter to kernel

#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries

#GRUB_DISABLE_RECOVERY=true

# Uncomment to disable generation of the submenu and put all choices on

# the top-level menu.

# Besides the visual affect of no sub menu, this makes navigation of the

# menu easier for a user who can’t see the screen.

#GRUB_DISABLE_SUBMENU=y

# Uncomment to play a tone when the main menu is displayed.

# This is useful, for example, to allow users who can’t see the screen

# to know when they can make a choice on the menu.

#GRUB_INIT_TUNE=»60 800 1″

Back to top

View user's profile Send private message

GDH-gentoo
Veteran
Veteran

Joined: 20 Jul 2019
Posts: 1043
Location: South America

PostPosted: Sat Aug 03, 2019 7:53 pm    Post subject: Reply with quote

TheTapsaFi wrote:
Code:

GRUB_ENABLE_CRYPTODISK=y

GRUB_PRELOAD_MODULES=»part_gpt lvm usb usb_keyboard ehci ohci uhci cryptodisk luks»

GRUB_TERMINAL_INPUT=»usb_keyboard»



All right. Let’s try this. Comment GRUB_ENABLE_CRYPTODISK and GRUB_TERMINAL_INPUT, and change GRUB_PRELOAD_MODULES to just:

Code:
GRUB_PRELOAD_MODULES=»part_gpt»



I’m not sure if part_gpt is even needed, but I don’t think it hurts leaving it there either. I suppose you handle LVM and LUKS in the initramfs (initramfs-genkernel-x86_64-4.19.52-gentoo, right?), i.e. after GRUB has handed control to the kernel, so I don’t think lvm, cryptodisk and luks are needed. And leaving the USB stuff out is what I’d want to know the effect of.

Regenerate grub.cfg and try to boot again. If you are still able to get to the menu, press ‘c’ to get to GRUB’s console, and tell us what does the ls command do now.

Back to top

View user's profile Send private message

TheTapsaFi
n00b
n00b

Joined: 02 Aug 2019
Posts: 7

PostPosted: Sat Aug 03, 2019 8:45 pm    Post subject: Reply with quote

You are correct, initramfs-genkernel-x86_64-4.19.52-gentoo was created with:

Code:
genkernel —luks —lvm —keymap —firmware —install initramfs

Here is the /etc/default/grub lines that are uncommented now:

Code:

GRUB_PRELOAD_MODULES=»part_gpt»

GRUB_DISTRIBUTOR=»Gentoo»

GRUB_CMDLINE_LINUX=»dolvm crypt_root=UUID=»cba3f1f5-a4fa-4199-8377-e16d229fa1c9″ root=UUID=»f89b4582-0063-4f60-9952-58e9bb484850″»

GRUB_DEFAULT=0

rerunning grub-mkconfig:

Code:

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

Tuottaa grub-asetustiedoston …

Linux-levykuva loytyi: /boot/vmlinuz-4.19.52-gentoo

Loytyi initrd-levykuva: /boot/initramfs-genkernel-x86_64-4.19.52-gentoo

valmis



(Sorry for some finnish. Ready, no errors, found that linux image, and that initrd.)

Resulting grub.cfg in its entirety:

Code:

# cat /boot/grub/grub.cfg

#

# DO NOT EDIT THIS FILE

#

# It is automatically generated by grub-mkconfig using templates

# from /etc/grub.d and settings from /etc/default/grub

#

 

### BEGIN /etc/grub.d/00_header ###

insmod part_gpt

if [ -s $prefix/grubenv ]; then

  load_env

fi

if [ «${next_entry}» ] ; then

   set default=»${next_entry}»

   set next_entry=

   save_env next_entry

   set boot_once=true

else

   set default=»0″

fi

 

if [ x»${feature_menuentry_id}» = xy ]; then

  menuentry_id_option=»—id»

else

  menuentry_id_option=»»

fi

 

export menuentry_id_option

 

if [ «${prev_saved_entry}» ]; then

  set saved_entry=»${prev_saved_entry}»

  save_env saved_entry

  set prev_saved_entry=

  save_env prev_saved_entry

  set boot_once=true

fi

 

function savedefault {

  if [ -z «${boot_once}» ]; then

    saved_entry=»${chosen}»

    save_env saved_entry

  fi

}

 

function load_video {

  if [ x$feature_all_video_module = xy ]; then

    insmod all_video

  else

    insmod efi_gop

    insmod efi_uga

    insmod ieee1275_fb

    insmod vbe

    insmod vga

    insmod video_bochs

    insmod video_cirrus

  fi

}

 

if loadfont unicode ; then

  set gfxmode=auto

  load_video

  insmod gfxterm

  set locale_dir=$prefix/locale

  set lang=fi_FI@euro

  insmod gettext

fi

terminal_output gfxterm

if [ x$feature_timeout_style = xy ] ; then

  set timeout_style=menu

  set timeout=5

# Fallback normal timeout code in case the timeout_style feature is

# unavailable.

else

  set timeout=5

fi

### END /etc/grub.d/00_header ###

 

### BEGIN /etc/grub.d/10_linux ###

menuentry ‘Gentoo GNU/Linux’ —class gentoo —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-simple-/dev/mapper/acheronVG-acheronRoot’ {

    load_video

    if [ «x$grub_platform» = xefi ]; then

        set gfxpayload=keep

    fi

    insmod gzio

    insmod part_gpt

    insmod ext2

    set root=’hd0,gpt2′

    if [ x$feature_platform_search_hint = xy ]; then

      search —no-floppy —fs-uuid —set=root —hint-ieee1275=’ieee1275/(null)/sas/disk@0,gpt2′ —hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2  8af5dba4-764f-47fa-a68f-daec6a20fbdc

    else

      search —no-floppy —fs-uuid —set=root 8af5dba4-764f-47fa-a68f-daec6a20fbdc

    fi

    echo    ‘Ladataan Linux 4.19.52-gentoo kayttojarjestelmaydin …’

    linux   /vmlinuz-4.19.52-gentoo root=/dev/mapper/acheronVG-acheronRoot ro dolvm crypt_root=UUID=cba3f1f5-a4fa-4199-8377-e16d229fa1c9 root=UUID=f89b4582-0063-4f60-9952-58e9bb484850

    echo    ‘Ladataan alustavaa ramlevya …’

    initrd  /initramfs-genkernel-x86_64-4.19.52-gentoo

}

submenu ‘Lisavalitsimet kohteelle «Gentoo GNU/Linux»‘ $menuentry_id_option ‘gnulinux-advanced-/dev/mapper/acheronVG-acheronRoot’ {

    menuentry ‘Gentoo GNU/Linux, jakeluversiolla Linux 4.19.52-gentoo’ —class gentoo —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-4.19.52-gentoo-advanced-/dev/mapper/acheronVG-acheronRoot’ {

        load_video

        if [ «x$grub_platform» = xefi ]; then

            set gfxpayload=keep

        fi

        insmod gzio

        insmod part_gpt

        insmod ext2

        set root=’hd0,gpt2′

        if [ x$feature_platform_search_hint = xy ]; then

          search —no-floppy —fs-uuid —set=root —hint-ieee1275=’ieee1275/(null)/sas/disk@0,gpt2′ —hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2  8af5dba4-764f-47fa-a68f-daec6a20fbdc

        else

          search —no-floppy —fs-uuid —set=root 8af5dba4-764f-47fa-a68f-daec6a20fbdc

        fi

        echo    ‘Ladataan Linux 4.19.52-gentoo kayttojarjestelmaydin …’

        linux   /vmlinuz-4.19.52-gentoo root=/dev/mapper/acheronVG-acheronRoot ro dolvm crypt_root=UUID=cba3f1f5-a4fa-4199-8377-e16d229fa1c9 root=UUID=f89b4582-0063-4f60-9952-58e9bb484850

        echo    ‘Ladataan alustavaa ramlevya …’

        initrd  /initramfs-genkernel-x86_64-4.19.52-gentoo

    }

    menuentry ‘Gentoo GNU/Linux, jakeluversiolla Linux 4.19.52-gentoo (toipumistila)’ —class gentoo —class gnu-linux —class gnu —class os $menuentry_id_option ‘gnulinux-4.19.52-gentoo-recovery-/dev/mapper/acheronVG-acheronRoot’ {

        load_video

        if [ «x$grub_platform» = xefi ]; then

            set gfxpayload=keep

        fi

        insmod gzio

        insmod part_gpt

        insmod ext2

        set root=’hd0,gpt2′

        if [ x$feature_platform_search_hint = xy ]; then

          search —no-floppy —fs-uuid —set=root —hint-ieee1275=’ieee1275/(null)/sas/disk@0,gpt2′ —hint-bios=hd0,gpt2 —hint-efi=hd0,gpt2 —hint-baremetal=ahci0,gpt2  8af5dba4-764f-47fa-a68f-daec6a20fbdc

        else

          search —no-floppy —fs-uuid —set=root 8af5dba4-764f-47fa-a68f-daec6a20fbdc

        fi

        echo    ‘Ladataan Linux 4.19.52-gentoo kayttojarjestelmaydin …’

        linux   /vmlinuz-4.19.52-gentoo root=/dev/mapper/acheronVG-acheronRoot ro single dolvm crypt_root=UUID=cba3f1f5-a4fa-4199-8377-e16d229fa1c9 root=UUID=f89b4582-0063-4f60-9952-58e9bb484850

        echo    ‘Ladataan alustavaa ramlevya …’

        initrd  /initramfs-genkernel-x86_64-4.19.52-gentoo

    }

}

 

### END /etc/grub.d/10_linux ###

 

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

 

### BEGIN /etc/grub.d/30_os-prober ###

### END /etc/grub.d/30_os-prober ###

 

### BEGIN /etc/grub.d/40_custom ###

# This file provides an easy way to add custom menu entries.  Simply type the

# menu entries you want to add after this comment.  Be careful not to change

# the ‘exec tail’ line above.

### END /etc/grub.d/40_custom ###

 

### BEGIN /etc/grub.d/41_custom ###

if [ -f  ${config_directory}/custom.cfg ]; then

  source ${config_directory}/custom.cfg

elif [ -z «${config_directory}» -a -f  $prefix/custom.cfg ]; then

  source $prefix/custom.cfg;

fi

### END /etc/grub.d/41_custom ###

Tried booting it… success(!), but maybe it was a fluke, so I retry… and SUCCESS again!!! Who knew insmod’ing absolutely every module under the sun would cause issues instead of repairing them. ;)

Some other issues still, but that’s expected with Gentoo. Endless source of joy & problems, like having a second spouse.

Thanks a ton GDH-gentoo and alamahant ! Made a small donation to Gentoo foundation in celebration of this first solved issue of mine thanks to you. I’ll see if I find out how to mark this solved.

Back to top

View user's profile Send private message

archenroot
Apprentice
Apprentice

Joined: 13 Dec 2011
Posts: 218
Location: Lake Macha, Czech republic

PostPosted: Wed Oct 06, 2021 1:47 pm    Post subject: Reply with quote

I know its and old thread but the only I found somehow relevant to my use case.

I am upgrading bit my 2 workstations both having same config:

supermicro x10sra-f

18 core intel xeon v4

and I wanted to have fast NVME drive.

First I had to throw away few years old Dell Quadro NMVE PCIE card which I was using just for data, neither older ASUS boards and these more recent Supermicro boards were not able to recognize more than 1 device even in bifubrication 4x4x4x4, I bought new adapter for 4x nvme by Asus and it workd, the Dell card is in trash as of today :-)

Next I found some articles about requiring me to enable UEFI in bios at least in dual mode (both legacy and uefi in place), I moved /root and /boot partitions from old SSD drive, enabled UEFI install, but no luck: Replace boot media error

One thing was strange, that even the Bios shows NVME as drive, its not prefixed with UEFI: string,

I tried to boot it, and Grub was found by bios, but it was failing as i386 subfolder in /boot/grub was missing.

IMPORTANT

still in this state I was able to run ls and ls(hd0,gpt1) like commands just fine.

so even against recommendations found on internet I reinstalled grub with target=i386-pc and also created again 5mb partition with flag=bios_grub before that. Now Gentoo grub2 has following preloaded modules:

usb usb_keyboard ehci ohci uhci

but it loaded grub in state where it was just reporting on any command executed (i think this is grub bug):

hd0,gpt1 not found error

as per this thread I removed all those modules and put there only pure part_gpt which did the trick and I have my first workstation on nvme root. Now just dd to next drive and enable second machine. so thx a lot for this thread.
_________________
Emperor wants to control outer space Yoda wants to explore inner space that’s the fundamental difference between good and bad sides of the Force

Back to top

View user's profile Send private message

Display posts from previous:   

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Do not worry about the «bulletproof arch». The author shows a complicated and difficult system configuration and a way to set it up every time somebody tries to do it. This is what he means by «Bulletproof».

Back to your problem.
Your ‘lsblk -f’ shows that your EFI partition is mounted at /boot/efi.
Your ‘efibootmgr —verbose ‘ shows that your boot loader is GRUB and it is run from path ‘EFIGRUBgrubx64.efi’. (/boot/efi/EFI/GRUB/grubx64.efi)
Interestingly, there are no arguments/parameters for grub64.efi to run with. I do not use grub, so I do not know if that is correct.

If you want a EFISTUB setup, locate the linux boot-loader «vmlinuz-linux». It is almost certainly at /boot, which currently is not on your EFI partition. To remedy it, copy files located in /boot (minimum: vmlinuz-linux, initramfs-linux.img) to /boot/efi. (Just to remind you:  /boot/efi is your current mount point for the EFI partition, so by copying the files you put them in the root of the EFI partition.)
Then change /etc/fstab entry that points where the efi partition is mounted.
(I just realised that I did not ask you for a listing of /etc/fstab.)
Your current entry probably looks like

# /dev/sda2
UUID=ECFE-75F3      	/boot/efi     	vfat      	defaults,relatime	0 2

Change it to

# /dev/sda2
UUID=ECFE-75F3      	/boot     	vfat      	defaults,relatime	0 2

After a reboot your EFI partition will be mounted at /boot.
DO NOT reboot yet.
It’s time to add an Arch Linux entry to your UEFI/BIOS. The command I wrote in my first post will be OK.
Now change the boot order using efibootmgr so that the Arch Linux entry is the first/default one.
After reboot you should start with Arch Linux.

The whole idea/phylosophy of using efibootmgr is tell the UEFI/BIOS to use a boot-loader (for example vmlinuz-linux, or EFIGRUBgrubx64.efi, or EFIrefindrefind_x64.efi, or EFIMicrosoftBootbootmgfw.efi, or whatever) and give the boot-loader parameters that tell it  which partition the system root is on etc.

Last remarks.
— Because at this point your EFI partition will be mounted at /boot, you do not have to worry about system updates.
— You will still have old files /boot files on «/dev/sdb2)/boot». If everything works well, they are save to remove, but it is not trivial, because your /boot will be located on /dev/sda2 not /dev/sdb2.
— (very unlikely in case of Asus, but quite likely on Lenovoes) Instead of the «vmlinuz-linux» boot-loader you may need to have «vmlinuz-linux.efi». It is enough to copy «vmlinuz-linux» into «vmlinuz-linux.efi». You can add another UEFI/BIOS entry for «vmlinuz-linux.efi» as the loader. If this is a case such copying should be done whenever vmlinuz-linux changes after a system update. It is easy to set up such automatic copying.
— If you have an Intel processor consider adding intel-ucode.img to your UEFI Arch Linux entry. You will have to add another UEFI entry for that (and perhaps remove the previous one). See https://wiki.archlinux.org/index.php/Microcode

Last edited by dif (2019-10-03 21:11:20)

Поскольку ПК приобретается раз в несколько лет, а его комплектующие периодически заменяются, программные и аппаратные компоненты порой плохо соответствуют друг другу. Сам ПК может быть достаточно старым, но вы укомплектовали его современным SSD. Уже не первый год доступна Windows 10, а вы до сих пор отдаете предпочтение привычной «семерке».

Помимо таких заметных каждому вещей, как производительность процессора и интерфейс ПО, есть значимые характеристики, которые начинают представлять интерес только в тех случаях, когда становятся причиной сбоев.

К ним относится и формат таблиц разделов HDD или SSD. Вы могли и не слышать о существовании характеристики накопителя, которая неожиданно огорчила, препятствуя установке Windows 7, 10 или 8.

ПК «говорит», что установка Windows невозможна. Причина: таблица разделов диска — GPT или MBR. Увы, технологии прошлого не всегда «дружат» с современными. К счастью, это легко исправимо.

Не получается поставить ОС на GPT-диск. Решения, которые помогут

Существуют две возможности:

  1. Установка ОС на диск GPT.
  2. Преобразование в MBR.

Настоящее (UEFI и GPT) и прошлое (BIOS и MBR)

Раньше материнская плата ПК оснащалась ПО BIOS. Оно осуществляло диагностику и анализ железа, а затем загружало ОС, опираясь на загрузочную запись раздела MBR.

В более современных моделях роль BIOS выполняет UEFI. Загружается быстрее и поддерживает:

  • Безопасную загрузку.
  • HDD, зашифрованные на аппаратном уровне.
  • Драйвера UEFI.
  • GPT-диски.

GPT превосходит MBR по важным параметрам:

  • Работает с HDD большего объема.
  • Большее число разделов на HDD.

Выбор метода

Пытаться все же установить систему на «несовместимый HDD» или преобразовать его в MBR и тем самым сделать так, что ошибка больше появляться не будет. В каждом случае решение зависит от ряда факторов:

  • Для старого ПК со старомодным BIOS и 32-битным процессором оптимальным решением будет преобразование GPT в MBR.
  • Обладателям ПК с 64-битным процессором и UEFI предпочтительно установить систему на GPT-диск.

Помните:

  • Предельный объем MBR-диска — 2 терабайта.
  • Возможность создания на MBR-диске более четырех разделов затруднено.

BIOS или UEFI

Когда вы заходите в BIOS и видите старомодный синий экран — перед вами традиционный BIOS. Если интерфейс с современной графикой и поддержкой мыши — это UEFI.

Чаще всего не получается установить Windows 7

Сложности с установкой системы на GPT-диск с большей вероятностью возникают у пользователей, которые предпочитают Windows 7.

Для установки Windows на диск со стилем разделов GPT необходимо соблюсти два условия:

  1. 64-битная ОС.
  2. Загрузка в режиме EFI.

Исхожу из того, что вы устанавливаете 64-битную версию Windows. Это означает, что сообщение об ошибке появляется по причине несоответствия второму требованию.

Не исключено, что будет достаточно поменять настройки BIOS. Зайдите в него, нажав предусмотренную для этого клавишу. Вы увидите, какую клавишу нажимать в процессе загрузки компьютера. В ноутбуках чаще всего применяется F2, в настольных моделях — Delete.

Поменяйте загрузку CSM (Compatibility Support Mode) на UEFI.

Ищите в разделах «BIOS Setup», «BIOS Features» или подобных по смыслу. В SATA определите режим AHCI, а не IDE.

Для седьмой (и еще более древних) версий Windows нужно также выключить Secure Boot.

BIOS вашей модели компьютера может выглядеть иначе. Названия пунктов меню также могут быть другими. Но смысл всегда сохраняется.

После изменения и сохранения вами новых параметров BIOS у вас появится возможность установки системы на GPT-диск. Если вы устанавливаете ОС с DVD, то сообщение об ошибке при повторной попытке установки, скорее всего, не появится.

В случае установки с USB-накопителя сообщение может отобразиться опять. В этой ситуации необходимо пересоздать установочную флешку таким образом, чтобы она поддерживала загрузку UEFI.

Если накопителем поддерживаются два метода загрузки, удалите файл «bootmgr» в корневой директории флешки. Тем самым вы предотвратите возможность загрузки в режиме BIOS. Если нужна загрузка в режиме BIOS, удалите каталог «efi». Не делайте этого в тех случаях, когда есть хоть малейшие сомнения. Можно повредить дистрибутив.

Не забудьте подписаться на наш Дзен

Преобразование GPT в MBR

Если вы располагаете ПК с классическим BIOS и собираетесь поставить Windows 7, этот вариант будет лучшим (и, возможно, единственным). В процессе преобразования вся информация с накопителя будет удалена.

Во время работы мастера установки ОС нажмите F10 и Shift. В некоторых моделях ноутбуков — F10, Fn и Shift. В открывшейся командной строке последовательно введите такие команды:

— diskpart
— list disk (запишите номер подлежащего преобразованию диска)
— select disk N (вместо N — записанный номер)
— clean (команда очистит диск)
— convert mbr
— create partition primary
— active
— format fs=ntfs quick (быстрое форматирование в файловой системе NTFS)
— assign
— exit

Невозможно поставить ОС на диск с MBR-разделами

Вероятна обратная ситуация. Появляется ошибка:

«Установка Windows на данный диск невозможна. На выбранном диске находится таблица MBR-разделов. В системах EFI Windows можно установить только на GPT-диск»

Она означает, что вы пытаетесь установить систему с DVD или USB-накопителя в режиме EFI. Таблица разделов HDD или SSD старая — MBR. В этом случае вы можете:

  • Преобразовать SSD или HDD в GPT.
  • В UEFI или BIOS поменять установленный способ загрузки с Legacy на EFI.

Первый вариант предпочтительнее, поскольку проще и быстрее. Помните, что информация со всех разделов накопителя будет полностью потеряна.

Преобразование MBR в GPT. Вся информация будет удалена

В установщике системы запустите командную строку:

  • F10 и Shift (на настольных ПК).
  • F10, Fn и Shift (на некоторых ноутбуках).

В открывшемся окне:

  • Последовательно вводите показанные команды.
  • Нажимайте Enter после ввода каждой из них.

Последовательность команд:

— diskpart
— list disk (запишите номер подлежащего преобразованию диска)
— select disk N (вместо N — записанный номер)
— clean (команда очистит диск)
— convert gpt
— exit

Когда команды применены:

  • Закройте окно командной строки.
  • Нажмите «Обновить» в окне выбора разделов.
  • Нажмите «Создать» для формирования нескольких разделов на HDD или SSD.
  • Выберите свободное пространство и запустите установку ОС.

Более простой способ преобразования с потерей информации на накопителе:

  • Удалите все разделы на HDD или SSD.
  • Выберите свободное пространство.
  • Нажмите «Далее».

Результатом ваших действий станет автоматическое преобразование в GPT. Следующим шагом стартует установка ОС.

Как не потерять данные при преобразовании

Используйте стороннюю утилиту Minitool Partition Wizard Bootable. Скачайте ISO-образ и запишите его на флешку, отформатированную в FAT32. Необходимые условия:

  • Используется загрузка EFI.
  • В BIOS выключена функция «Secure Boot».

Загрузите ПК с созданного вами накопителя. В окне программного инструмента:

  • Выберите HDD или SSD таблицу разделов которого нужно преобразовать.
  • В левой части окна программы выберите пункт «Convert MBR Disk to GPT Disk».
  • Примените изменения нажатием кнопки «Apply».
  • Дайте положительный ответ на предупреждение утилиты.
  • Ждите завершения преобразования. Время, которое потребуется, зависит от объема накопителя и занятого пространства на нем.

Если диск системный, может появиться сообщение о том, что его преобразование невозможно. Чтобы все же преобразовать его:

  • Выберите раздел загрузчика ОС, который располагается в самом начале.
  • Удалите его, нажав «Delete» и подтвердив действие кнопкой «Apply». Вместо него вы можете тут же создать новый раздел загрузчика, но уже в файловой системе FAT32.
  • Повторите действия для преобразования таблицы разделов.

Как обойтись без преобразования

Зайдите в BIOS и установите режим загрузки CSM (Compatibility Support Mode) или Legacy, отключив EFI. Отключите «Secure Boot».

Ранее я подробно рассмотрел процессы чистой установки Windows 10 и Windows 7.

Какие другие затруднения возникали у вас при установке Windows?

0
0
голоса

Рейтинг статьи

Решение ошибок программы-загрузчика GRUB

Нередко возникает необходимость в установке двух принципиально разных операционных систем на один компьютер: Windows и Linux. Разумеется, подобное «соседство» будет связано с некоторыми неудобствами. Для установки, как правило, используют специальную программу GRUB. Но к сожалению, при её использовании можно столкнуться с рядом ошибок. В этой статье разберёмся с тем, как исправить ошибки загрузчика GRUB. Давайте же начнём. Поехали!

Исправление ошибок GRUB

Для начала давайте определимся с тем, что из себя представляет эта программа. GRUB — представляет собой системный загрузчик, устанавливающийся непосредственно с Линукса и записывающий все данные на первый раздел диска (MBR).

Сам rescue mode является отличительной чертой GRUB 2 от его предыдущей версии. Этот режим запускается, если программе-загрузчику не удалось найти файл «grub.cfg» либо не удалось передать управление в kernel (ядро). В итоге не удаётся найти загрузочные файлы и запустить операционную систему. Именно тогда и возникает ошибка.

Ошибка: Unknown Filesystem

Следуйте инструкциям ниже, чтобы узнать, как решить проблему с GRUB

Способ 1

Что делать в случае ошибки unknown filesystem grub-rescue? Перед вами окно, в котором можно использовать только 4 команды, их вполне достаточно, чтобы исправить все проблемы и успешно загрузиться:

  • ls — позволяет вывести всё содержимое;
  • set — применяется для установки переменных;
  • unset — очищает переменную;
  • insmod — необходима для загрузки модулей.

Также можно сделать доступным ряд других команд. Сделать их доступными можно, загрузив модуль «normal». Для этого пропишите:

После этого станут доступны:

  • dump — для очистки памяти;
  • exit — команда выхода из загрузчика;
  • chainloader — необходима, чтобы указать последующей команде boot передать управление цепочечному загрузчику;
  • kfreebsd — несколько команд, позволяющих загрузить ядро FreeBSD, его модули;
  • rmmod — позволяет выгрузить указанный модуль ядра;
  • multiboot.

Первым делом нужно отыскать модули, чтобы загрузить их. Для этого введите:

Результатом выполнения команды будет следующее:

(hd0) (hd0,msdos3) (hd0,msdos2) (hd0,msdos1) (hd1) (hd1,msdos2) (hd1,msdos1)

Из этого можно сделать вывод, что загрузчик не может определить файловые системы дисков, поэтому определяет их как msdos. Теперь необходимо угадать видимые диски. В конкретном примере перед вами два диска: hd0 (с тремя разделами) и hd1 (с двумя разделами). Допустим, вы знаете, что Linux инсталлирован на диск, который имеет три раздела. В таком случае вам нужен диск с индексом «0».

GRUB даёт названия разделам в обратном порядке. В связи с этим, неясно как трактовать запись: «(hd0,msdos3)». Ведь можно посчитать это как первым разделом, так и третьим. К счастью, из этой ситуации можно выйти при помощи такого синтаксиса команды: «(hd0,1)». Обратите внимание, что в программе-загрузчике GRUB отсчёт дисков идёт с 0, а разделов с 1.

Допустим, что Линукс хранится в первом разделе, тогда он будет обозначаться (hd0,1). В этом случае команда, которую необходимо прописать, будет иметь вид:

Теперь модули могут быть загружены. Использовать их можно только после загрузки.

После того как вы выбрали нужный диск, проверьте содержится ли там то, что нужно. Для этого пропишите:

В результате выполнения на экране появится список md файлов.

После этого загрузчик будет переведён в режим полной функциональности. Затем автоматически будут найдены разделы с операционной системой, и откроется меню программы.

Теперь остаётся загрузить Linux. Делается это при помощи команды:

Ноутбук с ОС Linux

Способ 2

Всё сильно упрощается, если использовать Live CD – загрузочный диск с системой Linux. Он может быть записан на флешке, на внешнем винчестере или на обычном диске – это неважно, главное, чтобы с него можно было загрузить компьютер.

После загрузки Linux стандартным способом устанавливается бесплатная утилита Boot Repair. Она предназначена именно для устранения ошибок загрузки с помощью загрузчика Grub и очень проста в использовании – достаточно кликнуть по кнопке.

Заметим, что иметь Live CD для линуксоида всегда полезно и даже необходимо. Это зачастую избавляет от множества проблем, так как позволяет загрузить полноценную систему с внешнего носителя и использовать весь её инструментарий. Скачать такой диск с любой версией Linux не представляет сложностей, в комплекте обычно идёт инструкция по записи его на флешку.

После выполнения всех этих действий ошибка будет устранена. Пишите в комментариях была ли полезна для вас эта статья и задавайте любые интересующие вопросы по рассмотренной теме.

Как исправить «ошибку: неизвестная файловая система. Grub rescue>

Я не совсем уверен, что я сделал. Мне кажется, я установил Ubuntu поверх Windows на своем нетбуке Acer. Затем я попытался установить Linux Mint, но он не запустился.

Я выключил и снова включил нетбук. Теперь я получаю ошибку.

Я прочитал много других вопросов, подобных этому, но в моем случае я не могу загрузить компакт-диск. Если я вставлю компакт-диск с Ubuntu или компакт-диск с Linux Mint в свой внешний привод CD /DVD и сначала изменю свой BIOS на загрузку CD-ROM, у меня просто появится тот же экран с ошибкой.

Обновление скопировано из комментария от 2012-05-26 02:54:29Z

Вот некоторые результаты моих команд:

6 ответов

Следующее решило проблему для меня, у меня есть Windows 7 & Ubuntu 10.04. После запуска следующих команд мне не нужно запускать их каждый раз, и я могу нормально загружать обе ОС:

Теперь, когда вы загрузитесь в Ubuntu, выполните следующие две команды:

Замечания: /dev/sda это диск, где вы хотите установить GRUB, это может быть /dev/sdb или что-то еще, но обычно /dev/sda

Примите во внимание, что hd0 может быть Х (0,1,2..) в зависимости от порядка дисков и 6 может быть и другим, это может быть (hd0,gpt7) , например.

Сначала загрузитесь в Ubuntu из образа ISO.

Найдите раздел Ubuntu и папку, содержащую модули GRUB.

Папка GRUB, содержащая модули, должна быть расположена так, чтобы можно было загружать правильные модули. Эта папка была бы создана во время первоначальной установки Ubuntu и должна находиться в разделе Ubuntu. Эта папка обычно находится в (hdX,Y)/boot/grub или (hdX, Y) / usr / lib / grub / i386-pc. Найдите свой существующий раздел Ubuntu и папку модуля.

  • ls — должен вернуть все известные диски (hdX) и разделы (hdX, Y)
  • ls (hdX,Y)/ — должен показывать содержимое корневого каталога раздела.
  • Если вы получаете сообщение «error: unknown filesystem», это не ваш раздел Ubuntu.
  • Если это раздел Ubuntu, вы увидите папки Ubuntu, в том числе lost+found/, home/, boot/, vmlinuz и initrd.img. Используйте этот адрес в качестве первой части следующей команды.
  • ls (hdX,Y)/boot/grub — должно отображать несколько десятков *.mod файлов. Это папка, которую вы ищете.
  • Если вы не можете найти модули, попробуйте альтернативное расположение: ls (hdX,Y)/usr/lib/grub/i386-pc
  • Эта команда должна правильно указывать на папку, содержащую модули GRUB. Адрес должен быть тем, что был в предыдущем разделе, где отображались модули.

Это должно быть так. Если команды выполнялись без каких-либо сообщений / ошибок, команды были приняты как введенные. Пришло время для загрузки:

Теперь сделайте это после загрузки:

sudo mount /dev/sdaX /mnt

Вот, sdaX ваш загрузочный раздел. Вы можете получить список с sudo blkid как это,

Замечания: sdaX должен быть раздел Linux.

sudo grub-install —boot-directory=/mnt/boot /dev/sda

Загрузите свою систему с Ubuntu Live CD и попробуйте это, для меня это творит чудеса.

Перед прочтением: Ответ ниже предназначен для пользователей Ubuntu, которые только что обновили / восстановили / переустановили / установили OS X. Вероятно, ответ будет работать, если это не так (например, если в вашем разделе есть несоответствия) стол), но я не уверен.

Для меня это произошло после обновления до OS X Mavericks (10.9). В основном, возможно, произошло то, что OS X создала раздел восстановления («Recovery HD»), который система обнаруживает только иногда. Например, GParted в Ubuntu увидит раздел восстановления нормально, но при перечислении разделов в терминале ( fdisk -l ), вы можете не видеть разделы.

Диагностика проблемы: вызвало ли обновление / форматирование / восстановление OS X проблему?

Чтобы диагностировать, что это действительно так, сначала загрузите GRUB для загрузки в Ubuntu. Чтобы сделать это, перейдите на эту страницу или посмотрите, смогут ли другие ответы на этот вопрос помочь вам в Ubuntu. Для меня запуск следующих команд временно позволил мне загрузить правильный раздел. В зависимости от того, как настроены ваши жесткие диски и разделы, они могут различаться:

Теперь войдите в Ubuntu и проверьте GParted. Если вы видите раздел восстановления, откройте терминал и введите fdisk -l чтобы увидеть, обнаружит ли это раздел восстановления. Если в нем нет одинаковых разделов, проверьте столбец устройства / раздела и посмотрите, не совпадают ли они (например, в GParted ваш загрузочный раздел может быть /dev/sda4 , но это /dev/sda3 при беге fdisk ). Если это так, продолжайте читать. Если это не так, похоже, ваши разделы выстроены правильно. Вы можете либо продолжить чтение и следовать инструкциям (которые, если GRUB работал до восстановления / переустановки / и т. Д., Это должно работать правильно), либо просто переустановить GRUB в нужном разделе.

Исправление путем удаления / объединения раздела восстановления

Чтобы решить эту проблему, мы хотим избавиться от раздела восстановления — он вызывает проблемы и несоответствия, и его удаление не должно наносить ущерба. В идеале вы хотите объединить его с обычным разделом HFS + OS X, поэтому следуйте этому вопросу и ответьте здесь. После объединения GRUB должен вернуться в нормальное состояние.

1 месяц назад установил Ubuntu (Перед этим стояла винда, диск форматнул и поставил юбунту) Устанавливал ради интереса, посмотреть что да как. Сегодня решил снести ее и установить Windows 10 Technical Preview (rus, x64, офф сайт).

Я сделал загрузочную флешку с виндой. Выставил ее 1-ой в биосе на загрузку. В разметке диска удалил все разделы. После в биосе выставил 1-ым в списке HDD, 2-ым флешку.

Включил нетбук и увидел:
error: unknown filesystem
Entering rescue mode.

Использовал этот мануал (восстановление в rescue mode).
После ввода команды ls выдало:
(hd0) (hd0,msdos5) (hd0,msdos1)
Потом выполнил это:
set prefix=(hd0,1)/boot/grub
set root=(hd0,1)

Но после ввода
ls /boot/grub
выдало error:unknown filesystem

При покупке нетбука была установлена Linux, я ее в тот же день снес и заменил на Windows 7.
Но при установке возникли проблемы.

Я поставил 1-ой флешку, 2-ым HDD в загрузке, но при выборе тома для установки системы было такое сообщение:
Нам не удалось создать новый или найти существующий раздел
Решил так: установил 1-ым HDD, 2-ой флешку, т.к. диск пустой, загрузка переходит на флешку и все норм.

При установке Windows 8.1 проблема повторилась.
Тогда я ее решил копирование через командую строку установочных файлов с флешки на диск и прост загрузился с диска без флешки.

Месяц назад снес винду и поставил юбунту (писал уже выше).
Сносил юбунту так: записал образ Windows 10, через него удалил тома с Ubuntu, создал новый том (на 100гб, остальное место хочу разметить под файлы после установки винды) и отформатировал его в ntfs. Разумеется проблема с «Нам не удалось создать новый или найти существующий раздел» повторилась и я выставил 1-ым в загрузке HDD но увидел вот такую надпись
error: unknown filesystem
Entering rescue mode.

Копировать файлы на диск пробовал, но ничего не изменилось

Что делать, как мне теперь нормально восстановить диск и установить на него Windows?

Сообщения: 8626
Благодарности: 2127

но при выборе тома для установки системы было такое сообщение »

Для установки системы диск надо не готовить удалением и созданием разделов, а зачищать ото всей информации о ранее существовавших разделах и загрузочных записях.

Когда появится окно выбора раздела для установки, то нажмите сочетание клавиш Shift+F10.
Появится окно командного процессора (cmd).
Наберите в нём команду:
diskpart
и нажмите Enter. Через несколько секунд в окне появится приглашение DISKPART>
Наберите команду
list disk
и запомните номер диска, на который собираетесь ставить систему. Затем наберите команду
select disk #
подставив вместо символа # запомненный номер. После появления сообщения о том, что выбран диск с этим номером, наберите команду
clean
По завершении очистки (что займёт с десяток секунд; вся информация на диске будет удалена) завершите подготовку, набрав 2 одинаковых команды:
exit
exit

Окно командного процессора закроется.
Обновите информацию в окне выбора дисков, нажав соответствующий пункт под ним. Затем продолжайте установку на выбранный диск как обычно: либо на всё нераспределённое пространство, либо введя нужный вам размер раздела под систему.

Содержание

  • Решаем проблему дисков GPT
    • Способ 1: Настройка параметров BIOS
    • Способ 2: Флешка UEFI
    • Способ 3: Конвертирование GPT в MBR
    • Способ 4: Удаление разделов
    • Заключение
  • Вопросы и ответы

Установка Windows на данный диск невозможна. Выбранный диск имеют стиль разделов GPT
В настоящее время, когда в сети доступна практически любая информация, каждый пользователь способен установить на свой компьютер операционную систему. Вместе с тем даже такая простая, на первый взгляд, процедура может вызвать затруднения, выражающиеся в виде различных ошибок программы установки. Сегодня поговорим о том, как решить проблему с невозможностью инсталлировать Windows на диск формата GPT.

На сегодняшний день в природе существует два типа форматов дисков — MBR и GPT. Первым пользуется BIOS для определения и запуска активного раздела. Второй применяется с более современными версиями микропрограммного обеспечения – UEFI, которые имеют графический интерфейс для управления параметрами.

Графический интерфейс UEFI для управления параметрами компьютера

Ошибка, о которой мы сегодня говорим, возникает из-за несовместимости BIOS и GPT. Чаще всего это происходит из-за неправильных настроек. Также ее можно получить при попытке установки Windows х86 или несоответствии загрузочного носителя (флешки) требованиям системы.

Ошибка при установке Windows связанная с типом разделов GPT

Проблему с разрядностью решить довольно просто: перед началом установки убедитесь, что на носитель записан образ х64 операционной системы. Если образ универсальный, то на первом этапе нужно выбрать соответствующий вариант.

Выбор разрядности операционной системы Windows при установке

Далее разберем способы решения остальных проблем.

Способ 1: Настройка параметров BIOS

К возникновению данной ошибки могут привести измененные настройки БИОС, в котором отключена функция загрузки UEFI, а также включен режим «Secure Boot». Последний препятствует нормальному определению загрузочных носителей. Также стоит обратить внимание на режим работы SATA – он должен быть переключен в режим AHCI.

  • UEFI включается в разделе «Features» либо «Setup». Обычно параметром по умолчанию является «CSM», его необходимо переключить на нужное значение.
    Включение режима UEFI в БИОС компьютера
  • Режим защищенной загрузки можно отключить, выполнив в обратном порядке действия, описанные в статье ниже.

    Подробнее: Отключаем UEFI в BIOS

  • Режим AHCI можно включить в разделах «Main», «Advanced» или «Peripherals».

    Подробнее: Включаем AHCI режим в BIOS
    Изменение режима работы контроллера SATA в БИОС

Если в вашем БИОС отсутствуют все или некоторые параметры, то придется поработать непосредственно с самим диском. Об этом поговорим ниже.

Способ 2: Флешка UEFI

Такая флешка представляет собой носитель с записанным на него образом ОС, поддерживающий загрузку в UEFI. Если планируется установка Windows на GPT-диск, то желательно озаботиться ее созданием заранее. Делается это с помощью программы Rufus.

  1. В окне софта выбираем носитель, на который необходимо записать образ. Затем в списке выбора схемы раздела выставляем значение «GPT для компьютеров с UEFI».

    Выбор типа загрузочной флешки в программе Rufus

  2. Нажимаем кнопку поиска образа.

    Переход к выбору образа Windows в программе Rufus

  3. Находим соответствующий файл на диске и нажимаем «Открыть».

    Выбор образа Windows при создании загрузочной флешки в программе Rufus

  4. Метка тома должна поменяться на название образа, после чего жмем «Старт» и ждем окончания процесса записи.

    Запуск создания загрузочной флешки в программе Rufus

Если возможности создать UEFI-флешку нет, переходим к следующим вариантам решения.

Способ 3: Конвертирование GPT в MBR

Данный вариант подразумевает преобразование одного формата в другой. Сделать это можно как из загруженной операционной системы, так и непосредственно при установке Windows. Обратите внимание, что все данные на диске будут безвозвратно утрачены.

Вариант 1: Системные средства и программы

Lumpics.ru

Для конвертирования форматов можно воспользоваться такими программами для обслуживания дисков, как Acronis Disk Director или MiniTool Partition Wizard. Рассмотрим метод с применением Акрониса.

  1. Запускаем программу и выбираем наш диск GPT. Внимание: не раздел на нем, а именно весь диск (см. скриншот).
    Выбор диска для конвертирования формата в программе Acronis Disk Director
  2. Далее находим в списке настроек слева «Очистить диск».

    Очистка диска от разделов в программе Acronis Disk Director

  3. Кликаем по диску ПКМ и выбираем пункт «Инициализировать».

    Инициализация диска в программе Acronis Didk Director

  4. В открывшемся окне настроек выбираем схему разделов MBR и жмем ОК.

    Настройки инициализации диска в программе Acronis Disk Direktor

  5. Применяем ожидающие операции.

    Применение операций в программе Acronis Disk Director

Средствами Windows это делается так:

  1. Нажимаем ПКМ по значку компьютера на рабочем столе и переходим к пункту «Управление».

    Переход к управлению операционной системой с рабочего стола Windows

  2. Затем идем в раздел «Управление дисками».

    Переход к управлению дисками в Windows 7

  3. Выбираем в списке наш диск, жмем ПКМ на этот раз по разделу и выбираем пункт «Удалить том».

    Удаление раздела с диска системными средствами в Windows 7

  4. Далее кликаем правой кнопкой по основанию диска (квадрату слева) и находим функцию «Преобразовать в MBR-диск».

    Преобразование диска в формат MBR системными средствами Windows

В таком режиме можно работать только с теми дисками, которые не являются системными (загрузочными). Если требуется подготовить к установке рабочий носитель, то это можно сделать следующим способом.

Вариант 2: Конвертирование при загрузке

Данный вариант хорош тем, что работает независимо от того, доступны ли в данный момент системные средства и софт или нет.

  1. На этапе выбора диска запускаем «Командную строку» с помощью комбинации клавиш SHIFT+F10. Далее активируем утилиту управления дисками командой

    diskpart

    Запуск утилиты Diskpart из командной строки при установке Windows

  2. Выводим на экран список всех установленных в систему жестких дисков. Делается это путем ввода следующей команды:

    list disk
    Определение диска утилитой Diskpart при установке Windows

  3. Если дисков несколько, то необходимо выбрать тот, на который мы собираемся установить систему. Отличить его можно по размеру и структуре GPT. Пишем команду

    sel dis 0
    Выбор диска для конвертации утилитой Diskpart при установке Windows

  4. Следующий шаг – очистка носителя от разделов.

    clean
    Очистка диска утилитой Diskpart при установке Windows

  5. Заключительный этап – конвертирование. В этом нам поможет команда

    convert mbr
    Успешная конвертация диска в формат MBR утилитой Diskpart при установке Windows

  6. Осталось только завершить работу утилиты и закрыть «Командную строку». Для этого дважды вводим

    exit

    с последующим нажатием ENTER.

    Завершение работы утилиты Diskpart при установке Windows

  7. После закрытия консоли жмем «Обновить».

    Обновление состояния дисков при установке Windows

  8. Готово, можно продолжать установку.

    Результат работы утилиты Diskpart при установке Windows

Способ 4: Удаление разделов

Этот способ поможет в тех случаях, когда по какой-то причине невозможно воспользоваться другими инструментами. Мы просто вручную удалим все разделы на целевом жестком диске.

  1. Нажимаем «Настройка диска».

    Переход к настройке диска при установке Windows

  2. Выбираем каждый раздел по очереди, если их несколько, и жмем «Удалить».

    Удаление раздела с диска GPT при установке Windows

  3. Теперь на носителе осталось только чистое пространство, на которое можно без проблем инсталлировать систему.

    Результат удаления разделов с диска при установке Windows

Заключение

Как становится ясно из всего написанного выше, проблема с невозможностью установки Windows на диски со структурой GPT решается довольно просто. Все приведенные способы могут выручить вас в разных ситуациях – от устаревшего БИОС до отсутствия под рукой необходимых программ для создания загрузочных флешек или работы с жесткими дисками.

Еще статьи по данной теме:

Помогла ли Вам статья?

Понравилась статья? Поделить с друзьями:
  • Error discovering pytest tests
  • Error disc read error occurred press ctrl alt del to restart
  • Error disable recovery cisco
  • Error disable quad failed
  • Error disable faceit and vanguard anticheats