LINUX.ORG.RU

Не загружается винда в grub2

 , ,


1

2

Всем привет. Стоит opensuse, разбил диск и установил windows 10. Добавил её в grub, а она не запускается. В grub она есть.

вывод fdisk:


/dev/nvme0n1p1      2048   1050623   1048576  512M EFI System
/dev/nvme0n1p2   1050624   1067007     16384    8M BIOS boot
/dev/nvme0n1p3   1067008 164907007 163840000 78.1G Linux filesystem
/dev/nvme0n1p4 164907008 250066943  85159936 40.6G Microsoft basic data

вывод os-prober:

/dev/nvme0n1p4:Windows 10:Windows:chain

вывод grub2-mkconfig -o /boot/grub2/grub.cfg:


Generating grub configuration file ...
Found theme: /boot/grub2/themes/openSUSE/theme.txt
Found linux image: /boot/vmlinuz-5.15.12-1-default
Found initrd image: /boot/initrd-5.15.12-1-default
Found linux image: /boot/vmlinuz-5.15.8-1-default
Found initrd image: /boot/initrd-5.15.8-1-default
Warning: os-prober will be executed to detect other bootable partitions.
Its output will be used to detect bootable binaries on them and create new boot entries.
Found Windows 10 on /dev/nvme0n1p4
done

вывод из grub.cfg:

248 menuentry 'Windows 10 (on /dev/nvme0n1p4)' --class windows --class os $menuentry_id_option 'osprober-chain-F6DA31B2DA31704B' {
249         insmod part_gpt   
250         insmod ntfs
251         set root='hd0,gpt4'
252         if [ x$feature_platform_search_hint = xy ]; then
253           search --no-floppy --fs-uuid --set=root --hint='hd0,gpt4'  F6DA31B2DA31704B
254         else
255           search --no-floppy --fs-uuid --set=root F6DA31B2DA31704B
256         fi
257         drivemap -s (hd0) ${root}
258         chainloader +1
259 }



Последнее исправление: zero_one_two (всего исправлений: 1)

Ответ на: комментарий от zero_one_two

Флешка с виндой может понадобиться. Флешка с Linux точно необходима.

У тебя есть второй компьютер? Или нет? В принципе, можно и с этим обойтись.

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

Второго нет, я попробую и отпишусь. Спасибо большое за помощь. Я тред не закрываю, а то вдруг возникнут проблемы.

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

Я вообще хотел помочь тебе с попыткой этой. А то там так можно ошибиться, что останешься вообще без единой возможности загрузить хоть какую-то ОС.

Давай так: ты загружаешься в openSUSE, потом втыкаешь флешку, данные на которой не жалко, присылаешь мне выводы

sudo fdisk -l
df -hT
lsblk

а потом я подскажу, что делать.

Vsevolod-linuxoid ★★★★★
()

Сильно все напутал. И linux и windows давно умеет грузиться в EFI-режиме (но с отключенным secure boot). Советую обновить UEFI до последней версии и заново накатить и linux и windows с настройками UEFI only. Так проще тебе будет.

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

fdisk :

Disk /dev/nvme0n1: 119.24 GiB, 128035676160 bytes, 250069680 sectors
Disk model: WDC PC SN520 SDAPMUW-128G-1101          
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: gpt
Disk identifier: 7E357DA5-8E62-4BD7-AF2F-974AB08D5FB3

Device             Start       End   Sectors  Size Type
/dev/nvme0n1p1      2048   1050623   1048576  512M EFI System
/dev/nvme0n1p2   1050624   1067007     16384    8M BIOS boot
/dev/nvme0n1p3   1067008 164907007 163840000 78.1G Linux filesystem
/dev/nvme0n1p4 164907008 250066943  85159936 40.6G Microsoft basic data


Disk /dev/loop0: 99.44 MiB, 104267776 bytes, 203648 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: 61.91 MiB, 64913408 bytes, 126784 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: 373.78 MiB, 391933952 bytes, 765496 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/loop3: 230.45 MiB, 241647616 bytes, 471968 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/loop4: 310.8 MiB, 325902336 bytes, 636528 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

df -hT:

Filesystem     Type      Size  Used Avail Use% Mounted on
devtmpfs       devtmpfs  1.9G     0  1.9G   0% /dev
tmpfs          tmpfs     1.9G   63M  1.9G   4% /dev/shm
tmpfs          tmpfs     765M  2.0M  763M   1% /run
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /.snapshots
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /boot/grub2/i386-pc
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /home
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /opt
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /boot/grub2/x86_64-efi
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /usr/local
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /srv
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /root
/dev/nvme0n1p3 btrfs      79G   32G   47G  41% /var
/dev/loop1     squashfs   62M   62M     0 100% /snap/core20/1270
/dev/loop0     squashfs  100M  100M     0 100% /snap/core/11993
/dev/loop2     squashfs  374M  374M     0 100% /snap/anbox/186
/dev/loop3     squashfs  231M  231M     0 100% /snap/riseup-vpn/179
tmpfs          tmpfs     1.9G  3.3M  1.9G   1% /tmp
tmpfs          tmpfs     383M  100K  383M   1% /run/user/1000
/dev/sda1      vfat       16G  2.3G   14G  15% /run/media/creek/9AAE-E8E0

lsblk:

NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
loop0         7:0    0  99.4M  1 loop /snap/core/11993
loop1         7:1    0  61.9M  1 loop /snap/core20/1270
loop2         7:2    0 373.8M  1 loop /snap/anbox/186
loop3         7:3    0 230.5M  1 loop /snap/riseup-vpn/179
loop4         7:4    0 310.8M  1 loop 
sda           8:0    1  15.2G  0 disk 
└─sda1        8:1    1  15.2G  0 part /run/media/creek/9AAE-E8E0
nvme0n1     259:0    0 119.2G  0 disk 
├─nvme0n1p1 259:1    0   512M  0 part 
├─nvme0n1p2 259:2    0     8M  0 part 
├─nvme0n1p3 259:3    0  78.1G  0 part /var
│                                     /root
│                                     /srv
│                                     /usr/local
│                                     /boot/grub2/x86_64-efi
│                                     /opt
│                                     /home
│                                     /boot/grub2/i386-pc
│                                     /.snapshots
│                                     /
└─nvme0n1p4 259:4    0  40.6G  0 part 
zero_one_two
() автор топика
Ответ на: комментарий от zero_one_two
sudo mkdir /rescue20220116
sudo cd /rescue20220116
sudo wget https://mirror.yandex.ru/opensuse/distribution/openSUSE-current/live/openSUSE-Leap-15.3-KDE-Live-x86_64-Media.iso
sudo umount /run/media/creek/9AAE-E8E0
sudo dd if=openSUSE-Leap-15.3-KDE-Live-x86_64-Media.iso of=/dev/sda bs=4M oflag=direct status=progress
sudo sync
sudo eject /dev/sda
sudo dd if=/dev/nvme0n1p2 of=/rescue20220116/bboot.img
sudo dd if=/dev/zero of=/dev/nvme0n1p2
sudo parted /dev/nvme0n1 rm 2
Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)
Ответ на: комментарий от zero_one_two

Нет, только второй. То есть раздел bios boot, что предположительно мешает грузиться в UEFI режиме. А перед этим на всякий случай он будет забекаплен и затерт нулями. А ещё до того запишем флешку с сусей, что сможет грузиться.

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

Я перезапустил. Выставил настройки. Перезапустил. Ничего нет, а потом все равно grub запускается, обычная командная строка

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

Ну, вот за этим и нужен был бекап. Сейчас можно будет все вернуть как было.

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

Грузишься с флешки с openSUSE, потом

sudo fdisk /dev/nvme0n1 # там будет интерактивная сессия, создаешь второй раздел точно так, как он был ранее (начало на 1050624, конец на 1067007 секторе и меняешь тип на нужный)
sudo mkdir /tmp/1
sudo mount -o ro /dev/nvme0n1p3 /tmp/1
sudo dd if=/tmp/1/rescue20220116/bboot.img of=/nvme0n1p2

Потом возвращаешь настройки UEFI как были и у тебя рабочая openSUSE.

А что касается Windows… вероятно, нужен её установочный диск для восстановления загрузчика, причем придется опять менять настройки в UEFI на режим UEFI.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 2)
Ответ на: комментарий от Vsevolod-linuxoid

«(начало на 1050624, конец на 1067007 секторе и меняешь тип на нужный)» Можно подробнее, как это сделать командами?

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

Там интерактивная сессия. Ну как чат с ботом. Просто запускаешь fdisk /dev/nvme0n1, там он сам дает подсказки. Ну там ввести m для справки, чтобы создать новый раздел n, потом выбираешь в режиме вопрос-ответ его номер, начало, конец, тип можно менять через t, причем там будет выбор у какого раздела сменить тип, через L вывести справку о доступных типах… под конец w чтобы записать изменения, для проверки можно перед этим p ввести, и тогда напечатает как будет.

Если я правильно помню команды. Ещё раз — там есть встроенная справка, и всё вполне понятно.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 2)
Ответ на: комментарий от Vsevolod-linuxoid

Я разобрался, извиняюсь за несамостоятельность

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

Слушай, а у меня все стерло с домашней директории, она пустая.

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

Не понял. Я тебе сказал записать бекап в файл.

sudo dd if=/dev/nvme0n1p2 of=/rescue20220116/bboot.img

И потом развернуть из файла на тот же раздел, где взял:

sudo dd if=/tmp/1/rescue20220116/bboot.img of=/nvme0n1p2

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

Я сделал так же только создал папку в домашней директории home и и залил все в файл boot.img, а сейчас я смонтировал nvme0n1p3, зашёл в ней в папку home, а там пусто

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

Но сохранилась папка boot, в ней не то что надо ?

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

Или можно с помощью команд в grub можно запустить suse?

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

А, понял. Это фичи btrfs. У тебя корневой subvolume смонтировался по умолчанию. А ты сохранил на дополнительный, что в /home монтировался. Никуда файлы не пропадали.

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

Не диск, а раздел диска. И не форматировать, а назначать. И ответ: чтобы было как раньше.

/dev/nvme0n1p1      2048   1050623   1048576  512M EFI System
/dev/nvme0n1p2   1050624   1067007     16384    8M BIOS boot
/dev/nvme0n1p3   1067008 164907007 163840000 78.1G Linux filesystem
/dev/nvme0n1p4 164907008 250066943  85159936 40.6G Microsoft basic data
Vsevolod-linuxoid ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

вывод:

ID 256 gen 31 top level 5 path @
ID 257 gen 19809 top level 256 path @/var
ID 258 gen 19041 top level 256 path @/usr/local
ID 259 gen 19134 top level 256 path @/srv
ID 260 gen 19687 top level 256 path @/root
ID 261 gen 19341 top level 256 path @/opt
ID 262 gen 19809 top level 256 path @/home
ID 263 gen 19332 top level 256 path @/boot/grub2/x86_64-efi
ID 264 gen 19332 top level 256 path @/boot/grub2/i386-pc
ID 265 gen 19509 top level 256 path @/.snapshots
ID 266 gen 19816 top level 265 path @/.snapshots/1/snapshot
ID 380 gen 19113 top level 265 path @/.snapshots/115/snapshot
ID 381 gen 19113 top level 265 path @/.snapshots/116/snapshot
ID 386 gen 19113 top level 265 path @/.snapshots/121/snapshot
ID 387 gen 19113 top level 265 path @/.snapshots/122/snapshot
ID 390 gen 19113 top level 265 path @/.snapshots/125/snapshot
ID 391 gen 19113 top level 265 path @/.snapshots/126/snapshot
ID 392 gen 19113 top level 265 path @/.snapshots/127/snapshot
ID 393 gen 19113 top level 265 path @/.snapshots/128/snapshot
ID 394 gen 19113 top level 265 path @/.snapshots/129/snapshot
ID 395 gen 19113 top level 265 path @/.snapshots/130/snapshot
ID 396 gen 19125 top level 265 path @/.snapshots/131/snapshot
ID 397 gen 19127 top level 265 path @/.snapshots/132/snapshot
ID 398 gen 19496 top level 265 path @/.snapshots/133/snapshot
ID 399 gen 19498 top level 265 path @/.snapshots/134/snapshot

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

Да я верю, что винда запустилась. Я про то, что ты делал перед этим.

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

Я уже сам посмотрел как монтировать подразделы, смонтировал, перекинул с помощью dd. Перезапускаюсь и запускается винда

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

У тебя openSUSE пытается загрузиться в UEFI режиме, но не может.

В принципе, можно решить, загрузившись с флешки тоже в UEFI режиме и через chroot переставить реализацию GRUB2-EFI.

К слову, с этим проблема у многих потому, что почти все инструкции по восстановлению GRUB2 писаны под BIOS, и не работают под UEFI. Но их авторы об этом не упоминают.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 2)
Ответ на: комментарий от zero_one_two

А я и сам не знаю, так как ранее не работал столь плотно с openSUSE. Разве что погуглить могу.

Vsevolod-linuxoid ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.