Can't boot from USB Drive - "Missing Operating System"

I’m trying to install OpenSUSE on an external usb drive but when I boot from USB, all I get is a message saying “Missing Operating System”. I’ve tried different ways of partitioning the drive either by letting OpenSUSE do it automatically or doing it myself. It’s just a basic partitioning scheme, with swap on one partition sdb2 and the rest on root sdb1 .

I made sure to have GRUB be installed on the root partition of sdb (usb drive) instead of in the MBR (I’ve installed Fedora and Ubuntu on usb drives this way). I’m not sure what else to do.

On 2011-06-08 00:36, xenphor wrote:
>
> I’m trying to install OpenSUSE on an external usb drive but when I boot
> from USB, all I get is a message saying “Missing Operating System”.

That’s typically an msdos message, not linux.


Cheers / Saludos,

Carlos E. R.
(from 11.4 x86_64 “Celadon” at Telcontar)

I’m trying to install OpenSUSE on an external usb drive but when I boot from USB, all I get is a message saying “Missing Operating System”. I’ve tried different ways of partitioning the drive either by letting OpenSUSE do it automatically or doing it myself. It’s just a basic partitioning scheme, with swap on one partition sdb2 and the rest on root sdb1 .

I made sure to have GRUB be installed on the root partition of sdb (usb drive) instead of in the MBR (I’ve installed Fedora and Ubuntu on usb drives this way). I’m not sure what else to do.
Normally if you install grub into the root “/” openSUSE partition and mark it active for booting and then get this message, you failed to load generic booting code into the MBR (Master Boot Record). Brand new disks will have a blank MBR by default. It would be worth trying to reload and visit the boot section of the installer and look at all option pages to see if generic booting code is being copied to the disk. Make sure you are not trying to boot from some other USB device that might also be plugged into the computer. As far as I know the message “Missing Operating System” comes from the computer BIOS when the selected boot disk has no boot (MBR) sector setup. If you boot say a Windows MBR, it will say NTLDR is *missing *or something like that (if the MBR is setup and the Windows partition is missing or corrupt) and not “Missing Operating System” and thus is a BIOS error and not a Windows error message.

Thank You,

Well I tried reinstalling, this time checking the option that said:

“Set active flag in Partition Table for Boot Partition”

Now I get this error when booting usb:

Booting ‘opensuse 11.4’
root (hd1,1)
Error 22: No such partition

When I press a key it takes me to Grub. If I select Opensuse it just takes me to the same error message.

I noticed there was also an option in the Installer under Grub that said:

“Write Generic Boot Code to MBR”

Now, I don’t want to replace my Windows boot loader with anything. I just want to put a seperate boot loader on the usb disk and have it boot by itself. I’m not sure if this option will help me boot the OS or not.

When it says that it goes to (hd1,1) and then says there isn’t such partition. Then you should concentrate on that. Is your USB seen as the second disk on the system (rermind that GRUB starts counting with 0, thus hd1 is the second disk, When Linux would run, it would think of it as sdb). And, when yes, does that disk have a partition #2 (again GRUB starts with 0). This could of course be checked by an *fdisk -l *or similar on that disk. You only told us you installed to that USB storage device, but you never showed us anything about it (like a partition table).

“Write Generic Boot Code to MBR”
Is the correct opion and will not wipe out Windows if written to your Windows drive though you want it written to the USB drive. It would normally be written to the drive where you installed openSUSE. I must tell you that normally if you were really booting from the USB stick, it should be HD0 which makes me wonder were you installed openSUSE OR you did not realize when you installed openSUSE to the USB drive to inform the Installer to consider the USB drive as the FIRST HARD drive and thus should be HD0? What ever drive you boot from should be HD0 to GRUB. Look at the Boot order in the INSTALL section, if the USB drive is not FIRST, perhaps that is the problem. Here is some more help on Partitioning.

Each hard drive can have up to four PRIMARY partitions, any of which could be marked active and bootable. No matter what you might hear, only one of the first four primary partitions can be booted from. That means you can boot from Primary partitions 1, 2, 3 or 4 and that is all. In order to boot openSUSE, you must load openSUSE and the grub boot loader into one of the first four partitions. Or, your second choice is to load the grub boot loader into the MBR (Master Boot Record) at the start of the disk. The MBR can be blank, like a new disk, it can contain a Windows partition booting code or generic booting code to boot the active partition 1, 2, 3, or 4. Or, as stated before, it can contain the grub boot loader. Why load grub into the MBR then? You do this so that you can “boot” openSUSE from a logical partition, numbered 5 or higher, which is not normally possible. In order to have more than four partitions, one of them (and only one can be assigned as extended) must be a extended partition. It is called an Extended Primary Partition, a container partition, it can be any one of the first four and it can contain one or more logical partitions within. Anytime you see partition numbers 5, 6 or higher for instance, they can only occur inside of the one and only Extended Primary partition you could have.

What does openSUSE want as far as partitions? It needs at minimum a SWAP partition and a “/” partition where all of your software is loaded. Further, it is recommended you create a separate /home partition, which makes it easier to upgrade or reload openSUSE without losing all of your settings. So, that is three more partitions you must add to what you have now. What must you do to load and boot openSUSE from an external hard drive? Number one, you must be able to select your external hard drive as the boot drive in your BIOS setup. Number two, you need to make sure that the external hard drive, perhaps /dev/sdb, is listed as the first hard drive in your grub device.map file and listed as drive hd0. I always suggest that you do not load grub into the MBR, but rather into the openSUSE “/” root primary partition which means a primary number of 1, 2, 3 or 4. If number one is used, then that will be out. You will mark the openSUSE partition as active for booting and finally you must load generic booting code into the MBR so that it will boot the openSUSE partition. I suggest a partition like this:

  1. /dev/sdb, Load MBR with generic booting code
  2. /dev/sdb1, Primary NTFS Partition for Windows
  3. /dev/sdb2, Primary SWAP (4 GB)
  4. /dev/sdb3, Primary EXT4 “/” openSUSE Partition Marked Active for booting (80-120 GB)
  5. /dev/sdb4, Primary EXT4 “/home” Your main home directory (Rest of the disk)

Thank You,

Alright I was able to get it to work. All I had to do was also enable the option: “Write Generic Boot Code to MBR”. Now it boots up normally. Thanks for the help.

Alright I was able to get it to work. All I had to do was also enable the option: “Write Generic Boot Code to MBR”. Now it boots up normally. Thanks for the help.
Yeah! Happy to hear you found the solution here. So, for anyone that elects to load Grub into the openSUSE “/” partition and will not be loading grub into the MBR (Master Boot Record) must consider that on a brand new drive, the MBR will simply be blank. And, if you attempt to boot from a disk in which the MBR is blank, you will get the error message from your BIOS of “Missing Operating System”. The solution within the Boot Installation section of openSUSE is to select the option “Write Generic Boot Code to MBR” and then you should be good.

Thank You,

When I got “Missing Operating System” error, the tool Windows Boot Genius from Windows Boot Genius - Free download and software reviews - CNET Download.com helped me fix the problem at last after trying many ways!