need help on installation of 11.2!

Hi all

my desktop has two hdd(sda+sdb recognized as (hd1)and (hd0)respectively…)
sda has vista on it. sda is comprised of several simple volumes which vista calls dynamic ntfs…
sdb has four primary partitions: sdb1; sdb5,sdb6, sdb7. sdb5,6,7 are extended partitions, together put as sdb2.
sdb5 for swap, sdb6 for (/)(does this mean root partition? but /root and /home are on the same level…), sdb7 for /home; this is suse 11.0.
I delete the last simple volume of sda, and divided it into three partitions: sda8,9,10. sda8 for swap, 9 formatted as ext3 for /home, 10 formatted as ext4 for /.
And I want to keep the current grub, so I chose the boot loader location to “Boot from Root Partition” in Boot Loader Settings.
At the last minute of installtion, a dialog tells me:

grub> setup --stage2=/boot/grub/stage2 --force-lba (hd1,9) (hd1,9)

Error 22: No such partition
grub>quit

(hd1,9) is surely sda10 which is mounted to ‘/’. why would grub not recognize this partition?
This error message always shows up whenever I boot to “rescue installed system” from dvd and try to reinstall grub to root partition, ie. (hd1,9).

I tried to put one entry in the menu.lst of suse 11.0 :

title openSUSE 11.2
rootnoverify (hd1,9)
chainloader +1

But instead of boot into 11.2, it gives me a message “No such a partition”
Until now the only successful boot into suse is through the dvd rescue mode-> boot into installed systems. later tries all failed… with a message “modprobe: FATAL: Could not open … .ko”, the screen freezed, number led indicator and caps lock led both flashing on and off. I had to press the RESET on the box…

the good thing is suse 11.0 is still bootable, the current grub not crumbled…
but the strange is grub cannot be installed. maybe it’s due to ext4 format? In 11.0 if I try to mount /dev/sda10 to /mnt, it would say unknown file system ‘ext4’.

I dont know what should I do in order to boot into suse 11.2?

Try to mount /dev/sdb10 instead! I described this absurd behaviour already, during and after Linux setup. You can never be sure who’s sda and who’s sdb. It can also vary in a later installation or in another Linux system.
OpenSUSE Install Wiped Out Other Linux Installs - openSUSE Forums

my desktop has two hdd(sda+sdb recognized as (hd1)and (hd0)respectively…)

That already doesn’t look very nice.

Also if you want to boot using openSUSE grub, you should format the root partition with ext3. If you want to boot an ext4 partition, you should use grub2 (shipped with the latest Ubuntu).

The trick is that, since most Linux don’t use device names anynore in /etc/fstab (I guess, openSUSE uses Disk IDs by default, while Ubuntu uses UUID), they don’t really care about who’s sda and who’s sdb. They might switch them (and they do unfortunately), it won’t prevent the system to mount the right devices. However if you have several Linux installs on two harddisks, it might become a mess under circumstances.

Sorry folks, don’t bark at me !.. But that’s just Linux handling things randomly.

thanks you! but if you run

find /boot/grub/stage1

in suse 11.2 when I successfully boot into it through dvd repair,
grub tells you (hd0,5). This is /dev/sdb6 where is suse11.0, cause sda6 is not a linux partition. so the order of sda and sdb is kept in suse 11.2. More, /dev (in 11.2)has sda1~10, sdb1,2,5,6,7.

now that suse 11.2 is already installed. I want to install its grub into its own partition (hd1,9) with that repair stuff(I also tried to install it to (hd0,9) but also got “no such partition”). but it won’t let me do this.
maybe I need to redo the installation but format the root partition as ext3… but maybe there’s a way to avoid these…
btw,
here is fdisk -l(in 11.0):

Disk /dev/sda: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xbbcccc01

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1           1         992+  42  SFS
Partition 1 does not end on cylinder boundary.
/dev/sda2   *           1        3264    26216448   42  SFS
Partition 2 does not end on cylinder boundary.
/dev/sda3            3264       30402   217980088   42  SFS
Partition 3 does not end on cylinder boundary.

Disk /dev/sdb: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa2365965

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       27008   216936448    7  HPFS/NTFS
Partition 1 does not end on cylinder boundary.
/dev/sdb2   *       27009       30401    27254272+   f  W95 Ext'd (LBA)
/dev/sdb5           27009       27270     2104483+  82  Linux swap / Solaris
/dev/sdb6           27271       28558    10345828+  83  Linux
/dev/sdb7           28559       30401    14803866   83  Linux

and in the 11.2, if you run:

grub
root (hd1,9)

it says not such partition
if run

root (hd1,0)or (hd1,1) or (hd1,2)

grub does have feedback telling the infomation of that partition.
Corresponding to partiton 1,2,3 in the result of fdisk -l…
root (hd1,3)~(hd1,9) → no such partition.
but (hd1,9) (ext4)is where the root partition is, (hd1,8) (ext3)is /home, how come grub does not know such a partition?

Do it this way:
All About Grub - openSUSE

no, I already have that grub interface…the one with suse 11.0. I even have added an entry for suse 11.2. But it does not work…

setup (hd0)

means to install grub to MBR (in my case the mbr of sdb)? 11.0 grub is installed in the mbr of sdb.
currently the boot loader of 11.2 has not been successfully installed yet. How can I install it to its own sector? (then the rootnoverify (…)command would handover boot control to the boot loader of 11.2 in that sector)?

I did some search. so ext4 has not grub support except some distros:
“If you convert your root filesystem (”/") to ext4, and you use the GRUB boot loader, you will need to install a version of GRUB which understands ext4. Your system may boot OK the first time, but when your kernel is upgraded, it will become unbootable. "

Yep. Some distros (I guess Ubuntu previous to Karmic) used to install GRUB2 when you choosed to format your root filesystem in ext4 and legacy GRUB otherwise. Karmic now installs GRUB2 by default, openSUSE still installs legacy GRUB (which cannot boot ext4). I haven’t installed the later Fedora now. You just reminded me that I should post less and work more . :wink:

Using ext4 has some advantages. It’s supposed to be safer, faster and use the space more efficiently. If you want to use ext4 (good idea) and boot in legacy GRUB, the most elegant solution would be to have /boot on a separate ext3 partition. It should be large enough to contain several kernels, so I would say about 100 MB (or 200 MB to be safe). This partition would become the ‘root’ partition from the GRUB point of vue (= the one containing the kernel you want to boot).

Also, I don’t know if it’s relevant in your case, but legacy GRUB starts counting partitions at 0, while GRUB2 starts at 1. So (hd1,9) in legacy GRUB is now (hd1,10) in GRUB2.

This is a mess! I personally would wipe sdb and setup 11.2 from scratch. Do a backup of all your files on sda if you have the space or use a external hard drive. This way you can have your system ext4 all the way and it should setup vista fine.

The Grub that comes with 11.2 works fine with ext4 or they would not have put it on the dvd. If you use one Linux version you pretty much only need 3 partitions. Swap, root and home. You could get away with 2 but that’s not recommended.

Just my 2ct’s… :slight_smile:

CT’ 17 s. 174 - “Besser booten”
What’s the other one ?

If openSUSE has patched its Grub version to boot ext4, it’s great. I didn’t know that.

I came up with several plans:-p
first is convert the ‘/’ from ext4 to ext3. And it turned out to be ‘backward-incompatible’. second, I also considered prepare another partition (which would be sda11)then boot into suse, make its filesystem as ext3,mount it to /mnt, move ‘/boot’ to it:

mount /dev/sda11 /mnt
mv /boot /mnt/

will ‘sda11’ actually be mounted to /boot in this way?
then grub possibly could be insalled to /boot partition to be chained by chainloader.
third is to install grub2. but considering it would still became unbootable in the future(and may not be solved by simply reinstalling grub2), it’s not so desirable.

But if you do this:

find /boot/grub/menu.lst

What does it return?

Linux users and sysadmins will never agree on the number of partitions they need. Some people prefer to have everything in one partition, some others like to have /var, /tmp, /usr/local and - in a situation like the one you described - /boot in separate partitions.

Both methods have advandages and inconvenients. It also depends on what you are doing. There has been a lot of discussions about the /boot partition. It used to make sense in the old times, as it was often not possible to boot partitions that started after cylinder 1024, it became unnecessary as BIOS lost that limitation. Now it’s not a bad idea, since not all GRUB versions can boot ext4. And even if they could, it’s still not a bad idea to have grub and kernels in a small partition. But it’s not a requirement for a system to boot nor to work properly. It’s up to you.

If you’re going to reinstall, just choose “manual partitioning” or “expert partitioning” during setup … I don’t recall the exact term but you’ll see that option. Pick your root partition, select the mountpoint “/” and fs “ext4”, pick your boot partition, select the mountpoint “/boot” and fs “ext3”, pick your home partition, select the mountpoint “/home” and the fs you like (if you want to format it new. Otherwise choose it’s current filesystem and don’t format it). The setup will install grub files and kernel in the right place and should write the correct menu entries.

Don’t convert a filesystem in order to copy or move files! You can copy files from ext4 to ext3, reiserfs, nfs, vfat or everything. It doesn’t matter.


I’m not sure I understand why you want to do that, but to move file hierarchies to another partition, I would do :


mount /dev/sda11 /mnt
tar -cf - -C /boot . | tar -xpBf - -C /mnt
mv /boot /boot.old
mkdir /boot
umount /mnt
mount /dev/sda11 /boot

You can remove /boot.old later.

caf4926:

the output is same as before: (hd0,6)

please_try_again:

after “mount /dev/sda11 /boot” how do you change fstab so that it mounts each time the machine boots?
Thanks.

Using a live CD
So to install do:

You enter this ---------------- root (hd0,6)
Computer returns like this ---- Filesystem type is ext2fs, partition type 0x83
You enter this ---------------- setup (hd0)

It’s enough to add the following line in /etc/fstab after the one mounting / (sda11 is an EXAMPLE. I’m getting lost with your partitions):


/dev/sda11  /boot  ext3      acl,user_xattr                1   1

However, I don’t trust device names under Linux (as I mentionned several times already). There are 3 possibles syntaxes you can use to mount filesystems in /etc/fstab besides device names: by label, by UUID, by disk IDS. openSUSE uses disk IDS by default during setup (but let you choose another method in the mounting advanced options). I normally use UUIDs.

Assuming you want to mount sda11 in /boot, find out sda11 UUID with :


blkid | grep sda11

The ouput will look like that :

/dev/sda11: LABEL="SUSE_BOOT" UUID="0dabaf79-086a-4850-aa1a-3ab9b4b872ca" TYPE="ext3"

All we care about is the UUID. Write the UUID of your sda11 in your /etc/fstab instead of the device name.


UUID=0dabaf79-086a-4850-aa1a-3ab9b4b872ca  /boot  ext3      acl,user_xattr                1   1

or …


blkid | sed -n '/\/dev\/sda11:/s/.*UUID="\(.*\)".*TYPE="\(.*\)".*/UUID=\1	\/boot	\2		acl,user_xattr		1	1/p'

and paste the output in /etc/fstab IF AND ONLY IF it looks like the example above (which I do not garantee),

Both syntaxes are equivalent and will do the same: mount automatically /dev/sda11 in /boot. However the one using UUID ist safer, because the UUID will not change unless you reformat the partition, while device names may change if you add/remove harddisks, play with the BIOS … or even (under circumstances) if you do nothing but setup and reboot.

As I already said, I don’t know what you have in mind. If you just want to reinstall and use a /boot partition, you don’t need to worry about moving files, editing /etc/fstab or even understanding my explanation (which might be confusing if you are new to Linux). Just create the partitions, either before or during setup, pick the ones you want with the desired mountpoints and filesystems during setup, tell the setup to format at least / and /boot. It will install grub in the mbr. And you should be able to reboot with a working linux system.

i’m really confusing now…
this morning I tried to boot into suse 11.2 with the repair stuff. I chose ‘boot installed system’, which no longer show me a list (11.0 & 11.2) that I can choose, but directed me to suse 11.0, booting from /dev/sdb6.
Then I went on to reinstall 11.2. this time I make sda8 2.0G at the beginning of free space and mounted it to swap, sda9 8G formatted ext3 for /, sda10 4G formatted ext4 mounted /home. grub configured to boot from /.
Almost unsurprising, the same error msg appeared at 93% of installation. “grub… no such partition”. Of course this is spurious, because at the beginning of installation, the job of formatting, mounting & adding an entry for sda9 in fstab went on smoothly as was shown in “Details” of installation process…
bootloader (grub)simply would not be installed to root partition.
Maybe it is because sda is comprised of several “dynamic ntfs” partition if you view it in vista. or maybe bootloader must be installed to a “Primary partition”?
After reinstallation, I still cannot boot into 11.2 even through repair stuff ‘boot installed system’, which still directs me into suse 11.0 instead of giving me a system list.

i’m really confusing now…
which no longer show me a list (11.0 & 11.2) that I can choose, but directed me to suse 11.0, booting from /dev/sdb6.

That could be the result of a timeout 0 in /boot/grub/menu.lst

Then I went on to reinstall 11.2. this time I make sda8 2.0G at the beginning of free space and mounted it to swap, sda9 8G formatted ext3 for /, sda10 4G formatted ext4 mounted /home. grub configured to boot from /.

That sounds perfectly reasonable.

Almost unsurprising, the same error msg appeared at 93% of installation. "grub.. no such partition".

You have to find out if it’s a ‘logical’ error, like a mess in your partition table or a ‘physical’ error, like something broken : bad or dirty installation CD/DVD, broken DVD drive, harddisk with dead sectors.

I don’t want to confuse you with the list of all different things you can try. However you could (in that order):

  • install from another CD/DVD
  • try installing another Linux (like Ubuntu) for testing purpose.
  • test your harddisk for physical failures (bad sectors)
  • wipe out you mbr (if you have nothing to lose on the whole harddisk) and create ALL partitions new

among many other things, like replacing cables, affording a new HD, etc.

It happens sometimes that what appears to be sda during setup becomes sdb after reboot. But that would not happen during setup.

or maybe bootloader must be installed to a “Primary partition”?

If you mean the grub bootloader, you can install it in the bootsector (first sector) of any (primary or logical) partition, even in the first sector of the extended partition (which doesn’t contain any data but just the logical partitions). But if you want your computer to boot with grub (rather than with the Windows bootloader for example) you have to install it in the mbr (which doesn’t belong to any partition).

If you mean all the files under /boot (grub stuff and kernels), you can have them in a primary or in a logical partition. However, in your case, it would be safer to use a primary partition. We don’t know what’s going on with your extended partition and I guess the Linux setup doesn’t get it either.

That could be the result of a timeout 0 in /boot/grub/menu.lst

it’s not boot from grub, but boot with the setupiso repair->boot installed system-> it would generally show me a list with two entries 11.2 on sda10 or 11.0 on sdb6. But now it only show a dialog “booting from sdb6” instead of a list.
the installation process went on well except for the bootloader. it seems that bootloader does not support dynamic partitions.
I just found an article complaining a good dual-boot system fails (grub fails) since a Basic-> dynamic disk convert in xp. My case is suse could not be, or specifically, the boot loader could not be normally installed to a dynamic disk.
I don’t know whether it is possible to use a basic partition (would be in /sdb…) as /boot. don’t know if it’s ok.

please_try_again-

do you mean it’s possible to install bootloader (the item you see before installation begins, after you deploy the partitions) to a customised position, neither ‘/’, nor /boot, nor to mbr… any position even a basic partition on another disk. and that would work?