LINUX.ORG.RU

Слетел GRUB после запуска Windows

 , ,


0

1

Всем привет. Есть такая проблема: После запуска Windows пропала в BIOS Fedora 36. Пробовал переустановить grub2, но либо я что-то делаю не так, либо это мне не помогло. Файл fstab

UUID=d9ce9222-7260-4bd5-9185-ad137e10eaa2 /                       btrfs   subvol=@,compress=zstd:1 0 0
UUID=02af9c54-74b1-4276-8918-2f3ef0143514 /boot                   ext4    defaults        1 2
UUID=B1BA-DE15           /boot/efi               vfat    umask=0077,shortname=winnt 0 2
UUID=d9ce9222-7260-4bd5-9185-ad137e10eaa2 /home                   btrfs   subvol=@home,compress=zstd:1 0 0
UUID=d9ce9222-7260-4bd5-9185-ad137e10eaa2 /var/log                btrfs   subvol=@log,compress=zstd:1 0 0
UUID=63411054-ed67-4a74-80b3-d0797615c029 none                    swap    defaults        0 0

на диске также есть еще раздел ntfs которого нет в списке. Примеры из этого сообщения пытался использовать, но я что-то делаю не так:(


Эм… в той теме я так и не смог помочь, так что идея была не очень, ну и писал я те команды конкретно под ту ситуацию, у тебя они могут наоборот всё доломать.

У тебя есть Live флешка с Linux? Пришли с неё выводы

sudo efibootmgr -v
sudo fdisk -l

Я бы для начала попробовал в UEFI добавить запись о Fedora, если она пропала.

Vsevolod-linuxoid ★★★★★
()

Честно говоря - файл fstab никакой полезной информации не несет, учитывая что все разделы представлены UUID.
Гораздо интереснее содержимое файла /boot/efi/fedora/grub.cfg и вообще содержимое раздела EFI - его можно и в Винде посмотреть

sigurd ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

В итоге я решил просто переустановить всю систему. Grub2 я не мог переустановить из-за включенного Secure Boot в BIOS. Но мне это не сильно помогло У меня запускался Grub-console в общем я вошел в систему и пытался переустановить grub уже из неё.Теперь я пытаюсь настроить grub чтобы он хотя бы запускал мне Linux без консоли. И буду благодарен если кто-то мне с этим поможет хоть чем-то((

Через пару минут выложу efibootmgr, fdisk, grub.cfg.

yahack
() автор топика
Ответ на: комментарий от yahack

Вот вывод fdisk -l:

[root@localhost-live ~]# fdisk -l
Disk /dev/sda: 223.57 GiB, 240057409536 bytes, 468862128 sectors
Disk model: WDC WDS240G2G0A-
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x06337dbc

Device     Boot  Start       End   Sectors   Size Id Type
/dev/sda1  *    104448 468857032 468752585 223.5G  7 HPFS/NTFS/exFAT


Disk /dev/sdb: 465.76 GiB, 500107862016 bytes, 976773168 sectors
Disk model: WDC WD5000LPCX-2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xcba26495

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sdb1       347623424 976769023 629145600   300G  7 HPFS/NTFS/exFAT
/dev/sdb2  *         2048   1230847   1228800   600M  6 FAT16
/dev/sdb3         1230848   3327999   2097152     1G 83 Linux
/dev/sdb4         3328000 347623423 344295424 164.2G  5 Extended
/dev/sdb5         3330048 347623423 344293376 164.2G 83 Linux

Partition table entries are not in disk order.


Disk /dev/sdc: 7.28 GiB, 7811891200 bytes, 15257600 sectors
Disk model:                 
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x7a218b9a

Device     Boot Start     End Sectors  Size Id Type
/dev/sdc1  *        0 3941695 3941696  1.9G  0 Empty
/dev/sdc2         172   20455   20284  9.9M ef EFI (FAT-12/16/32)
/dev/sdc3       20456   63127   42672 20.8M  0 Empty


Disk /dev/loop0: 1.76 GiB, 1893396480 bytes, 3698040 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 7.57 GiB, 8128561152 bytes, 15876096 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop2: 32 GiB, 34359738368 bytes, 67108864 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/live-rw: 7.57 GiB, 8128561152 bytes, 15876096 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/live-base: 7.57 GiB, 8128561152 bytes, 15876096 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/zram0: 3.74 GiB, 4017094656 bytes, 980736 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

Вот вывод efibootmgr -v:

[root@localhost-live ~]# efibootmgr -v
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0004,0000,0001,0003,0002,2001,2002,2003
Boot0000* WDC WDS240G2G0A-00JH30          	BBS(HD,WDC WDS240G2G0A-00JH30          ,0x500)................-...........A.......................................y..
Boot0001* WDC WD5000LPCX-24VHAT0          	BBS(HD,WDC WD5000LPCX-24VHAT0          ,0x500)................-...........A.......................................y..
Boot0002* Realtek PXE B03 D00	BBS(128,Realtek PXE B03 D00,0x0).......................................................................
Boot0003* Generic USB Storage     	BBS(HD,Generic USB Storage     ,0x500)..................................................................X.y..
Boot0004* Linpus lite	HD(1,MBR,0x7a218b9a,0xac,0x4f3c)/File(\EFI\Boot\grubx64.efi)RC
Boot2001* EFI USB Device	RC
Boot2002* EFI DVD/CDROM	RC
Boot2003* EFI Network	RC

yahack
() автор топика
Ответ на: комментарий от yahack

Вот вывод grub.cfg:

# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub2-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
set pager=1

if [ -f ${config_directory}/grubenv ]; then
  load_env -f ${config_directory}/grubenv
elif [ -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="${saved_entry}"
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
}

terminal_output console
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/01_users ###
if [ -f ${prefix}/user.cfg ]; then
  source ${prefix}/user.cfg
  if [ -n "${GRUB2_PASSWORD}" ]; then
    set superusers="root"
    export superusers
    password_pbkdf2 root ${GRUB2_PASSWORD}
  fi
fi
### END /etc/grub.d/01_users ###

### BEGIN /etc/grub.d/08_fallback_counting ###
insmod increment
# Check if boot_counter exists and boot_success=0 to activate this behaviour.
if [ -n "${boot_counter}" -a "${boot_success}" = "0" ]; then
  # if countdown has ended, choose to boot rollback deployment,
  # i.e. default=1 on OSTree-based systems.
  if  [ "${boot_counter}" = "0" -o "${boot_counter}" = "-1" ]; then
    set default=1
    set boot_counter=-1
  # otherwise decrement boot_counter
  else
    decrement boot_counter
  fi
  save_env boot_counter
fi
### END /etc/grub.d/08_fallback_counting ###

### BEGIN /etc/grub.d/10_linux ###
insmod part_msdos
insmod ext2
set root='hd1,msdos3'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos3 --hint-efi=hd1,msdos3 --hint-baremetal=ahci1,msdos3  a20b08da-6549-4ddc-b81f-c085a466c092
else
  search --no-floppy --fs-uuid --set=root a20b08da-6549-4ddc-b81f-c085a466c092
fi
insmod part_msdos
insmod fat
set boot='hd1,msdos2'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=boot --hint-bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2  17F2-52DF
else
  search --no-floppy --fs-uuid --set=boot 17F2-52DF
fi

# This section was generated by a script. Do not modify the generated file - all changes
# will be lost the next time file is regenerated. Instead edit the BootLoaderSpec files.
#
# The blscfg command parses the BootLoaderSpec files stored in /boot/loader/entries and
# populates the boot menu. Please refer to the Boot Loader Specification documentation
# for the files format: https://systemd.io/BOOT_LOADER_SPECIFICATION/.

# The kernelopts variable should be defined in the grubenv file. But to ensure that menu
# entries populated from BootLoaderSpec files that use this variable work correctly even
# without a grubenv file, define a fallback kernelopts variable if this has not been set.
#
# The kernelopts variable in the grubenv file can be modified using the grubby tool or by
# executing the grub2-mkconfig tool. For the latter, the values of the GRUB_CMDLINE_LINUX
# and GRUB_CMDLINE_LINUX_DEFAULT options from /etc/default/grub file are used to set both
# the kernelopts variable in the grubenv file and the fallback kernelopts variable.
if [ -z "${kernelopts}" ]; then
  set kernelopts="root=UUID=29f57295-3d7d-40f4-a107-16fbf470ad80 ro rootflags=subvol=root rhgb quiet "
fi

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

### BEGIN /etc/grub.d/10_reset_boot_success ###
# Hiding the menu is ok if last boot was ok or if this is a first boot attempt to boot the entry
if [ "${boot_success}" = "1" -o "${boot_indeterminate}" = "1" ]; then
  set menu_hide_ok=1
else
  set menu_hide_ok=0
fi
# Reset boot_indeterminate after a successful boot
if [ "${boot_success}" = "1" ] ; then
  set boot_indeterminate=0
# Avoid boot_indeterminate causing the menu to be hidden more than once
elif [ "${boot_indeterminate}" = "1" ]; then
  set boot_indeterminate=2
fi
# Reset boot_success for current boot 
set boot_success=0
save_env boot_success boot_indeterminate
### END /etc/grub.d/10_reset_boot_success ###

### BEGIN /etc/grub.d/12_menu_auto_hide ###
if [ x$feature_timeout_style = xy ] ; then
  if [ "${menu_show_once}" ]; then
    unset menu_show_once
    save_env menu_show_once
    set timeout_style=menu
    set timeout=60
  elif [ "${menu_auto_hide}" -a "${menu_hide_ok}" = "1" ]; then
    set orig_timeout_style=${timeout_style}
    set orig_timeout=${timeout}
    if [ "${fastboot}" = "1" ]; then
      # timeout_style=menu + timeout=0 avoids the countdown code keypress check
      set timeout_style=menu
      set timeout=0
    else
      set timeout_style=hidden
      set timeout=1
    fi
  fi
fi
### END /etc/grub.d/12_menu_auto_hide ###

### BEGIN /etc/grub.d/14_menu_show_once ###
if [ x$feature_timeout_style = xy ]; then
  if [ "${menu_show_once_timeout}" ]; then
    set timeout_style=menu
    set timeout="${menu_show_once_timeout}"
    unset menu_show_once_timeout
    save_env menu_show_once_timeout
  fi
fi
### END /etc/grub.d/14_menu_show_once ###

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

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

### BEGIN /etc/grub.d/20_ppc_terminfo ###
### END /etc/grub.d/20_ppc_terminfo ###

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

### BEGIN /etc/grub.d/30_uefi-firmware ###
if [ "$grub_platform" = "efi" ]; then
        menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {
                fwsetup
        }
fi
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/35_fwupd ###
### END /etc/grub.d/35_fwupd ###

### 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 ###

yahack
() автор топика