Hi all,
I have the problem with boot again.
Till now I was able to upgrade my OS without big issue.
But last week when I update from 13.2 to Leap 42.2, Now the opensuse is not loading.
My first bootscreen is still on Windows (I am using windows boot screen first, then it will load Grub),
When I select Opensuse, it will say that loading Grub2… not do noting.
I guess something is wrong with the Grub2.
Please help.
Rahul
That sounds more like a windows problem than grub. If windows is supposed to load grub but won’t.
It would be better to boot with grub and have windows as default if that’s your preference.
Hi,
It was working fine for Opensuse 11.4 till 13.2
but as soon as I upgrade to LEAP 42.2 it stopped.
I prefer to boot from Windows.
-Rahul
Start with describing how you configured Windows to load grub. The more details you provide the more likely someone can help.
I have ran following command
grub
grub> find /boot/grub/stage2
(hd0,8)
grub> root (hd0,8)
Filesystem type is ext2fs, partition type 0x83
grub> setup (hd0,8)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd0,8)"... failed (this is not fatal)
Running "embed /boot/grub/e2fs_stage1_5 (hd0,8)"... failed (this is not fatal)
Running "install /boot/grub/stage1 (hd0,8) /boot/grub/stage2 p /boot/grub/menu.lst "... succeeded
Done. grub> quit
After that
dd if=/dev/sda4 of=/mnt/windows/suse.bin bs=512 count=1
then copied suse.bin to Windows drive in C:
then created a boot.ini file like this
[boot loader]
timeout=0
default=multi(0)disk(0)rdisk(1)partition(1)c:\suse.bin
[operating systems]
c:\suse.bin="openSUSE"
Now when I select opensuse in the boot screen,
It shows “loading grub stage2”.
so I guess, the part with Windows boot loader must worked fine, since it load grub stage1.
The problem is it couldn’t load stage2.
Your title says “grub2” and your commands show grub legacy. So which one is correct?
Running "embed /boot/grub/e2fs_stage1_5 (hd0,8)"... failed (this is not fatal)
Running "embed /boot/grub/e2fs_stage1_5 (hd0,8)"... failed (this is not fatal)
Running "install /boot/grub/stage1 (hd0,8) /boot/grub/stage2 p /boot/grub/menu.lst "... succeeded
Done.
Did you run these commands before or after update of openSUSE to 42.2?
I thought opensuse 11.4 onwards runs on Grub2.
I ran all those command when I installed 11.4.
After that I only upgrade the system, didn’t do anything about grub, because everything works perfectly.
Now after 42.2 I can’t boot or can give “grub” in the command line
How is system default related here? You run these commands, not system. It was your choice to use grub legacy.
I ran all those command when I installed 11.4.
After that I only upgrade the system, didn’t do anything about grub, because everything works perfectly.
In this case what most likely happened - during upgrade grub package was updated and replaced files in /boot/grub. Because in your case stage1.5 could not be embedded, grub bootblock contains reference to absolute disk location. When stage2 file was replaced, this disk location now contains undefined content. It is hard to tell more precisely, but error picture is very similar.
Now after 42.2 I can’t boot or can give “grub” in the command line
Boot install DVD in rescue mode, chroot and run the same commands again (including copying bootblock to Windows after that).
Thanks.
Now the grub is working after the chroot.
But couldn’t find stage2
grub> find /boot/grub/stage2
Error 15: File not found
What should I do now?
Is there any way to install stage2, or other better way to solve the issue?
Sorry, I do not understand this. What is working? Can you boot now?
sorry for the confusion.
What I meant is now the grub command is working after chroot.
I still couldn’t boot linux
If your /boot is on separate partition, you obviously need to mount it inside of your chroot as well.
If your /boot is on separate partition, you obviously need to mount it inside of your chroot as well.
How can I find it where the grub is.
I normally use the following command to find it. and it will return where it is.
grub> find /boot/grub/stage2
(hd0,8)
but this time it returned
Error 15: File not found
Post /etc/fstab from your root and “fdisk -l” output.
**linux-rahul:/home/rahul #** fdisk -l
**Disk /dev/sda: 596.2 GiB, 640135028736 bytes, 1250263728 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
Disklabel type: dos
Disk identifier: 0xc3ffc3ff
**Device****Boot**** Start**** End**** Sectors**** Size****Id****Type**
/dev/sda1 2048 206847 204800 100M 7 HPFS/NTFS/exFAT
/dev/sda2 206848 209717247 209510400 99.9G 7 HPFS/NTFS/exFAT
/dev/sda3 * 209717248 419432447 209715200 100G 7 HPFS/NTFS/exFAT
/dev/sda4 419432448 1250260991 830828544 396.2G f W95 Ext'd (LBA)
/dev/sda5 419434496 629149695 209715200 100G 7 HPFS/NTFS/exFAT
/dev/sda6 629151744 838866943 209715200 100G 7 HPFS/NTFS/exFAT
/dev/sda7 838868992 943726591 104857600 50G 7 HPFS/NTFS/exFAT
/dev/sda8 943728640 954228735 10500096 5G 82 Linux swap / Solaris
/dev/sda9 954230784 1059084287 104853504 50G 83 Linux
/dev/sda10 1059086336 1250242559 191156224 91.2G 83 Linux
**Disk /dev/sdb: 58.6 GiB, 62889394176 bytes, 122830848 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
Disklabel type: dos
Disk identifier: 0x135a2181
**Device****Boot****Start**** End****Sectors**** Size****Id****Type**
/dev/sdb1 4084 11643 7560 3.7M ef EFI (FAT-12/16/32)
/dev/sdb2 * 11644 8562687 8551044 4.1G 17 Hidden HPFS/NTFS
and fstab
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part8 swapswapdefaults0 0
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part9 / ext4acl,user_xattr1 1
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part10 /home ext4acl,user_xattr1 2
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part1 /windows/C ntfs-3g default,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part2 /windows/D ntfs-3g default,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part3 /windows/E ntfs-3g users,gid=users,fmask=133,dmask=022,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part5 /windows/F ntfs-3g default,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part6 /windows/G ntfs-3g default,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-TOSHIBA_MK6465GSX_11P7P1EFT-part7 /windows/H ntfs-3g default,locale=en_US.UTF-8 0 0
OK, so /boot is on root partition. Do you actually have /boot/grub at all? What “ls -lR /boot” says? Also “rpm -q grub”?
This appears to be a EFI boot but I could be wrong. If so you use grub2-efi not grub2 and nothing is install in MBR or any partition.
Please be clear on which boot method used MBR or EFI
Is it a joke? We are discussing grub legacy all the time. Did you bother to at least read previous discussion?
No joke look at the partitions. sda1 could be a EFI boot partition or it could be a Windows partition. With GPT formatting it could go either way.
I want to be sure that mixed booting methods are not being used