12.3-32 upgrade/install difficulties: boot partition requirements; foreign OS boot recovery

Hello list! I have 12.3-32 working on older HW. Pent4 and 80GB mbr hdd. My desktop is lxde.

frank[5001] uname -a
Linux linux-ic3a.ShepardLand 3.7.10-1.16-default #1 SMP Fri May 31 20:21:23 UTC 2013 (97c14ba) i686 i686 i386 GNU/Linux
frank[5002]

Previously this HW was running 12.1-32 as a tripple boot with 3 primary partitions sda1=1GB-fat32, sda2=100MB-ext2, sda3=20GB-ntfs, then the extended partition.

The 12.1 was booting from the sda2 with grub. It was the grub default for 12.1. Both of the other 2 OSs were bootable from the grub menu.

I started the move to 12.3 with an upgrade. That operation filled up sda2 with a few bytes to spare, but after the upgrade reboot the full partition drew complaints.

To grow sda2, I stuffed in my live gparted CD and added another 100MB from sda1 - big mistake! Now the 12.3 upgrade won’t boot.

So start from scratch with 12.3 install into the same partition scheme except sda1 is 900MB and sda2 is 200MB. After the 12.3 install completes again no boot!

Here I’m thinking that the sda2 resize may have moved /boot to some unfriendly hdd geography. This is one of my questions. What are the /boot requirements?

So now with gparted I put the drive partitions back as best I can to where they were with the 12.1 and do another complete install (including format of sda2) no boot!

Now another unbelievable experience! I decided to try another 12.3 install with grub2 on the mbr, while leaving /boot mounted, but not reformatted. This complete 12.3 install finished, booted and updated all the packages, then asked to reboot.

The reboot after the package update goes into a “relaxation oscillation” where the system does an endless reboot!

So another complete 12.3 reinstall. This time I mounted sda2 as /usr3 and put grub2 in the mbr. That’s what I have now, but neither of the foreign OSs boot from the grub2 menu.

That brings me to the last of the questions: can I do something with grub2 to get the 2 foreign OSs to boot from the grub2 menu?

Also after the fact, is it possible to format sda2 with gparted, load grub2 on that partition and mount sda2 as /boot?

Hope someone is still with me here! I’ve learned a lot already. Heboland.

You need at very min 8 gig. You simply do not have enough disk allocated unless you are not reporting all the partitions.

Assuming again that yo do not hav a separate boot partitions it may not matter. but resizing partitions needs to be done right, did you also rezise the file system? And you may need to reinstall grub. You have not given enough info to know.

On 2013-10-21 18:16, heboland wrote:

> To grow sda2, I stuffed in my live gparted CD and added another 100MB
> from sda1 - big mistake! Now the 12.3 upgrade won’t boot.

100 MB only? That’s nothing.

> So start from scratch with 12.3 install into the same partition scheme
> except sda1 is 900MB and sda2 is 200MB. After the 12.3 install completes
> again no boot!

900MB and 200MB? No way, you can not put openSUSE on that. Minimum is 7
GB and a very minimal system.

Your post is unclear, sorry, things do not compute.


Cheers / Saludos,

Carlos E. R.
(from 12.3 x86_64 “Dartmouth” at Telcontar)

Sorry guys! Guess we need “the rest of the story” here. I didn’t include it since, to me, it’s not part of the problem.

So my 80GB hdd has the four partitions mentioned in the original post, so now let me expand on the extended partition of some 60GB. / mounted on the extended partition, is about 35GB, swap is a 5GB extended partition, and /home is mounted on a 15GB extended partition. These same partitions are working now with grub2 on the mbr.

If this satisfies the missing information, I would like to move back to my questions. I was expecting back something like /boot has to start before some maxium hdd sector and the beginning /boot partition sector boundary has to be such and such. Otherwise moving the leading sector boundary of /boot with gparted wouldn’t have caused a no boot outcome.

I’m relativity new to grub2, so I don’t know yet if I can recover the access to the foreign OSs that grub2 “sees”, but doesn’t properly boot. It would be nice to be able to fix this from my now working, updated system without starting over. Would I have to edit some grub2 files? I don’t see much in the yast > system > boot loader options.

And since I had to compromise with grub2 to get a bootable install, can I get back to where I was originally headed? That is to boot with grub2 on primary sda2. Similarly, it would be nice to accomplish this without yet another scratch install.

FWIW, I did run the memory test from my install DVD for 12 hours without any errors and the DVD media test finds no errors. Further removed, the host box is an HP Pavillion.

Again, sorry I didn’t connect the rest of the dots! Hope this update brings the thread back on topic. Heboland.

If you have Linux running please show use

sudo fdisk -l

note that is a lower case L not a one

Then we will better understand what you have.

Thanks for your reply gogalthorp!

Something seems wrong with your command. I pasted it into a terminal window and got this response:

frank[5004] sudo fdisk -l

We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.
    #2) Think before you type.
    #3) With great power comes great responsibility.

root's password:
sudo: fdisk: command not found
frank[5005] 


I use zsh for both me and root. That may have some bearing on the results.

This way I think I got what you wanted to see:

frank[5008] su
Password: 
root[504] which fdisk
/sbin/fdisk
root[505] fdisk -l

Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders, total 156301488 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 identifier: 0x00022043

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63     2047999     1023968+   b  W95 FAT32
/dev/sda2   *     2048000     2265087      108544   83  Linux
/dev/sda3         2265165    43016191    20375513+   7  HPFS/NTFS/exFAT
/dev/sda4        43016400   156301311    56642456    f  W95 Ext'd (LBA)
/dev/sda5        43020288    64849919    10914816   83  Linux
/dev/sda6        64851968    85323775    10235904    b  W95 FAT32
/dev/sda7        85325824    95565823     5120000   82  Linux swap / Solaris
/dev/sda8        95567872   136527871    20480000   83  Linux
/dev/sda9       136529920   156301311     9885696   83  Linux
root[506] 


You may be able to tell from this, but for the record sda8 is mounted as / and sda9 is mounted as /home. Heboland.

On 2013-10-22 05:46, heboland wrote:
>
> Thanks for your reply gogalthorp!
>
> Something seems wrong with your command. I pasted it into a terminal
> window and got this response:


sudo /usr/sbin/fdisk

> This way I think I got what you wanted to see:
>
> Code:
> --------------------
> frank[5008] su
> Password:
> root[504] which fdisk
> /sbin/fdisk
> root[505] fdisk -l
>
> Disk /dev/sda: 80.0 GB, 80026361856 bytes
> 255 heads, 63 sectors/track, 9729 cylinders, total 156301488 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 identifier: 0x00022043
>
> Device Boot Start End Blocks Id System
> /dev/sda1 63 2047999 1023968+ b W95 FAT32
> /dev/sda2 * 2048000 2265087 108544 83 Linux
> /dev/sda3 2265165 43016191 20375513+ 7 HPFS/NTFS/exFAT
> /dev/sda4 43016400 156301311 56642456 f W95 Ext’d (LBA)
> /dev/sda5 43020288 64849919 10914816 83 Linux
> /dev/sda6 64851968 85323775 10235904 b W95 FAT32
> /dev/sda7 85325824 95565823 5120000 82 Linux swap / Solaris
> /dev/sda8 95567872 136527871 20480000 83 Linux
> /dev/sda9 136529920 156301311 9885696 83 Linux
> root[506]
>
>
> --------------------
> You may be able to tell from this, but for the record sda8 is mounted
> as / and sda9 is mounted as /home. Heboland.

and sda2 is /boot, right?


Cheers / Saludos,

Carlos E. R.
(from 12.3 x86_64 “Dartmouth” at Telcontar)

Thanks for the reply robin_listas!

No, I don’t think sda2 is mounted as /boot. During the last virgin 12.3 install, I mounted sda2 as /usr2, but prior to the last install I formatted sda2 with the live gparted. What I see now is a /boot in /, but also an empty /usr2.

fstab doesn’t show a /boot, but it does show a /usr2.

/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part7 swap                 swap       defaults              0 0
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part8 /                    ext4       acl,user_xattr        1 1
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part9 /home                ext4       acl,user_xattr        1 2
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part3 /ntfs                ntfs-3g    users,gid=users,fmask=133,dmask=022,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part6 /share               vfat       users,gid=users,umask=0002,utf8=true 0 0
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part5 /usr1                ext4       defaults              1 2
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part2 /usr2                ext2       defaults              1 2
/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part1 /w98                 vfat       users,gid=users,umask=0002,utf8=true 0 0
proc                 /proc                proc       defaults              0 0
sysfs                /sys                 sysfs      noauto                0 0
debugfs              /sys/kernel/debug    debugfs    noauto                0 0
usbfs                /proc/bus/usb        usbfs      noauto                0 0
devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
/etc/fstab lines 1-13/13 (END)


Assuming I’m correct in my interpretation it would seem the install created /boot on the part8 partition.

Is there a way to get text version of grub2 settings, similar to fstab? Heboland.

On 2013-10-23 02:56, heboland wrote:
>
> Thanks for the reply robin_listas!
>
> No, I don’t think sda2 is mounted as /boot.

Well, that is a problem, because you have sda2 marked as bootable (the
‘*’ in the fdisk printout). If you have a generic MBR, it will fail to boot.

Else, you need grub installed in the MBR.

> Is there a way to get text version of grub2 settings, similar to fstab?
> Heboland.

You can still use grub 1 if you prefer.


Cheers / Saludos,

Carlos E. R.
(from 12.3 x86_64 “Dartmouth” at Telcontar)

Thanks robin_listas!

I noticed the * also on /sda2. There’s nothing visible in that partition except lost+found.

There is probably some command to show the mount particulars of the /boot in /.

It’s time for me to learn grub2. In lieu of a config file for grub2 I’ll attempt to transcribe it’s settings from the yast > system > boot loader.

Boot Loader -> GRUB2

Boot Loader Location
checked Boot from Master Boot Record
no check for Boot from Extended Partition

Boot Loader Options

Distributor openSUSE 12.3 probe foreign OS
no check for Set active flag in partition table for boot partition.
no check for Write generic Boot Code to MBR

There is only one disk in the disk order settings. It’s /dev/sda, but its written out by-id.

If I have to figure this out by myself, I’ll probably use the live gparted to change the primary partition active flags to see if the foreign partitions will still boot by themselves.

Any idea what would happen if I changed fstab to show /sda2 mounted as /boot. then

Boot Loader Location
uncheck Boot from Master Boot Record then
check Boot from Boot Partition

and attempted a reboot? My guess is that grub2 would not get written to sda2 and I would have another no boot. Heboland.

On 2013-10-24 07:06, heboland wrote:
>
> Thanks robin_listas!
>
> I noticed the * also on /sda2. There’s nothing visible in that partition
> except lost+found.

The grub stages do not show in the filesystem, they are outside.

> There is probably some command to show the mount particulars of the
> /boot in /.

“findgrub”, by please_try_again, does it. I don’t have a recent link
handy. Somewhere here <http://tinyurl.com/preview.php?num=23abzts>

> It’s time for me to learn grub2. In lieu of a config file for grub2 I’ll
> attempt to transcribe it’s settings from the yast > system > boot
> loader.
>
> Boot Loader -> GRUB2
>
> Boot Loader Location
> checked Boot from Master Boot Record
> no check for Boot from Extended Partition

> Boot Loader Options
>
> Distributor openSUSE 12.3 probe foreign OS
> no check for Set active flag in partition table for boot partition.
> no check for Write generic Boot Code to MBR

If this is true, grub should be installed in the mbr.

>
> There is only one disk in the disk order settings. It’s /dev/sda, but
> its written out by-id.
>
> If I have to figure this out by myself, I’ll probably use the live
> gparted to change the primary partition active flags to see if the
> foreign partitions will still boot by themselves.
>
> Any idea what would happen if I changed fstab to show /sda2 mounted as
> /boot. then

Don’t.


Cheers / Saludos,

Carlos E. R.
(from 12.3 x86_64 “Dartmouth” at Telcontar)

Thanks robin_listas!

I don’t have a “findgrub” command in my path, nor did a “find” locate one.

Here is a grep for boot from dmesg, not showing much:

root[502] findgrub
zsh: command not found: findgrub
root[503] findgrub2
zsh: command not found: findgrub2
root[504] dmesg | grep -i boot
    0.000000] ACPI: BOOT 2f7fa030 00028 (v01 ASUS   P4G533LA 42302E31 MSFT 31313031)
    0.000000] smpboot: Allowing 1 CPUs, 0 hotplug CPUs
    0.000000] Booting paravirtualized kernel on bare hardware
    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.7.10-1.16-default root=UUID=c1f1d0b7-14f9-4e57-843d-d0ff392630a8 resume=/dev/disk/by-id/ata-WDC_WD800EB-11DJF0_WD-WCAHL4579028-part7 splash=silent quiet showopts vga=0x318
    0.000000] bootsplash: silent mode.
    0.063671] smpboot: CPU0: Intel(R) Pentium(R) 4 CPU 2.60GHz (fam: 0f, model: 02, stepping: 09)
    0.064000] smpboot: Total of 1 processors activated (5181.28 BogoMIPS)
    0.211731] pci 0000:00:02.0: Boot video device
    0.965313] Simple Boot Flag at 0x3a set to 0x1
    1.358043] i8042: PNP: PS/2 appears to have AUX port disabled, if this is incorrect please boot with i8042.nopnp
    8.218567] systemd[1]: Starting LSB: Set default boot entry if called...
root[505]

Thanks for the warning not to fool with the yast boot loader settings! Heboland.

Replying back to myself with an addition.

I tried moving the active boot partition to sda1. That changes nothing. 12.3 just boots regardless of what active boot partition is set.

That explains to me why the foreign OSs don’t boot.

So is there a way short of starting over to load grub2 on to sda2 and make 12.3 boot from there?

Perhaps the “write generic boot code to mbr” checkbox in the yast bootloader section is intended to undo putting grub2 into the mbr? Heboland.

That just means that you have installed grub to the MBR which ignores the boot flag should be ok basically and needed if your boot is in an extended partition. Not sure why you are not seeing win98 (??? right???) Maybe the grub guys thought no one would be running that any more LOL so why bother to detect.

On 2013-10-24 17:26, heboland wrote:
>
> Thanks robin_listas!
>
> I don’t have a “findgrub” command in my path, nor did a “find” locate

No, I gave you a link to a thread.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

On 2013-10-24 17:46, heboland wrote:
>
> Replying back to myself with an addition.
>
> I tried moving the active boot partition to sda1. That changes nothing.
> 12.3 just boots regardless of what active boot partition is set.

Oops.
If it boots, then grub is correctly installed, don’t mess with it.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Thanks again gogalthorp, robin_listas!

gogalthorp, I think I need to get grub2 off the mbr to get the foreign OSs to boot. Grub2 does find both foreign OSs, but neither boot from the grub menu. I think grub2 tries to boot them like I tried with gparted

If I had grub on sda2 mounted as /boot, sda2 would necessarily need to be the active boot partition. In that scenario, I could use live gparted to change the active primary partition to perhaps sda3 and cause XP to boot from power on.

Do you guys know what the intent of “write generic boot code to mbr” is for? Does that restore the mbr to a state similar to the dos command fdisk /mbr? Does generic boot code remove grub2 from the mbr?

robin_listas, I did follow your “findgrub” link, but what I thought I saw where it led was the link author using findgrub as a command with options.

I probably won’t cave in on this install until I get the foreign OSs to be accessable. From this post I had hoped to get a procedure to move grub2 around and then restore the mbr. That doesn’t seem to be in the offing, so maybe restoring the mbr is the best I can expect, and then I can start over with yet another 12.3-32 install.

One other thing I think is fair to include in this thread is another Pent4 box partitioned similarly that I want to upgrade from 12.1-32 to 12.3. Before I start on this second box, I would like to get some advice about growing its sda2 boot partition while maintaining the bootability of sda1, sda2, and sda3.

If admissible, the second box advice is secondary to restoring the mbr, on the 12.3 box. Probably the 12.3 will be inaccessable requiring another virgin install.

From the install DVD, there is a rescue option. Is there anyone around to coach a grub2 recovery after it’s been displaced from the mbr? Heboland.

no I don’t think grub is the problem. The problem is detecting the Win 98 boot I’d guess. That is not done by grub boot. And the way you have the openSUSE in the extended I think you must have grub in MBR,

On 2013-10-25 08:06, gogalthorp wrote:
>
> no I don’t think grub is the problem. The problem is detecting the Win
> 98 boot I’d guess. That is not done by grub boot. And the way you have
> the openSUSE in the extended I think you must have grub in MBR,

Well, grub can be in the MBR, as now, or in any primary partition. It
could be in sda2.

In theory, H. could put a generic MBR (yes, it is similar to what
Dos/Win does), mark sda2 as bootable, copy the entire /boot directory to
sda2, install grub in sda2 (which means copy stages outside the
filesystem, in the first track), change fstab… and it should work. I
stress “should” because it is not trivial, something could be forgotten.

Then, changing the primary mark to any other primary should boot that
system there, if it is not broken.

Why grub2 does not boot the existing Windows I have no idea. Maybe the
problem is Windows, not grub.


Cheers / Saludos,

Carlos E. R.
(from 11.4, with Evergreen, x86_64 “Celadon” (Minas Tirith))

Thanks again for the replies guys!

robin_listas, I think I want to try something along the line of your last commment with the “first” box, but not until I get the second box updated.

So if I can use this same thread to cover both first (now 12.3 Pent4) and second (now 12.1 Pent4), may I move this thread slightly to the second (now 12.1 Pent4) box upgrade.

With this “second” box, I want to avoid the 12.3 upgrade problem where the upgrade completely fills /boot mounted on sda2.

My thoughts on this are that I have to grow /sda2 to accommodate the upgraded kernel.

Here’s the HDD map. Note that it’s very similar to the “first” box map.

root[503] fdisk -l
Disk /dev/sda: 82.0 GB, 81964302336 bytes
255 heads, 63 sectors/track, 9964 cylinders, total 160086528 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 identifier: 0xa3a3a3a3

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63     2040254     1020096   1b  Hidden W95 FAT32
/dev/sda2   *     2040255     2249099      104422+  83  Linux
/dev/sda3         2249100    71264339    34507620   17  Hidden HPFS/NTFS
/dev/sda4        71264340   160071659    44403660    5  Extended
/dev/sda5        71264403    75360914     2048256   82  Linux swap / Solaris
/dev/sda6        75360978   126560069    25599546   83  Linux
/dev/sda7       126560133   128600324     1020096   83  Linux
/dev/sda8       128600388   132696899     2048256   83  Linux
/dev/sda9       132696963   159991334    13647186    b  W95 FAT32
/dev/sda10      159991398   160055594       32098+   6  FAT16

Disk /dev/sdb: 1027 MB, 1027604480 bytes
18 heads, 49 sectors/track, 2275 cylinders, total 2007040 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 identifier: 0x29e8a099

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1             464     2007039     1003288    6  FAT16
root[504] 

Here’s also the second box fstab:

/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part6 /                    ext4       acl,user_xattr        1 1
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part8 /home                ext4       acl,user_xattr        1 2
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part5 swap                 swap       defaults              0 0
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part2 /boot                ext2       acl,user_xattr        1 2
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part10 /dell                vfat       users,gid=users,umask=0002,utf8=true 0 0
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part3 /ntfs                ntfs-3g    users,gid=users,fmask=133,dmask=022,locale=en_US.UTF-8 0 0
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part9 /share               vfat       users,gid=users,umask=0002,utf8=true 0 0
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part7 /usr1                ext3       defaults              1 2
/dev/disk/by-id/ata-Maxtor_6Y080P0_Y3HNNJQE-part1 /w98                 vfat       users,gid=users,umask=0002,utf8=true 0 0
proc                 /proc                proc       defaults              0 0
sysfs                /sys                 sysfs      noauto                0 0
debugfs              /sys/kernel/debug    debugfs    noauto                0 0
usbfs                /proc/bus/usb        usbfs      noauto                0 0
devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
/etc/fstab lines 1-14/14 (END)

So now I want to grow sda2 by 100MB, but I want to take that from sda1, not sda3.

The second box (12.1-32) still has just grub, not grub2. If I use the live gparted to make the partition changes to sda1 and sda2 with sda2 mounted as /boot, would you expect grub to boot, or does it have to know /boot has changed?

Remember in the 12.1-32 second box, has been booting successfully.from sda2 prior to growing that partition.

My idea is that if I can get the 12.1 to accept the 100MB change to sda2, I can just upgrade it to 12.3 and not overflow the /boot partition. Anybody think this plan can be made to work? Heboland.