Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I'm trying to do a new install of 12.04 server on one node of a Dell PowerEdge C6145 with the following spec:

48 cores
512GB RAM
LSI MegaRAID 9265 controller
4x2TB disks, configured with RAID5 giving 6TB in total
American Megatrends v02.69 BIOS

Booting from a USB with Ubuntu Server 12.04.2 LTS "Precise Pangolin" - Release amd64 (20130214) Expert Mode is turned on (using F6) and doing a clean install of ubuntu server

Its a standard installation except for a manual parition of the disks. I created a new empty gpt partition table on the disk, and added three partitions:

#1 10MB, beginning of disk, /boot, Reserved BIOS boot area
#2 512GB, end of dist, /swap, swap area
#3 max, /, Mount point: /, Mount options: defaults, label: data

Summary:
SCSI6 (2,0,0) (sda) - 6.0 TB LSI MR9265-8i
     1.0 MB   FREE SPACE
#1   9.4 MB f biosgrub    /boot
#3   5.5 TB f ext4        /        /
#2 512.0 GB f swap        /swap    swap
     1.0 MB   FREE SPACE

I selected linux-generic-lts-quantal as the kernel to install, and "generic: include all available drivers" when asked to select drivers to include in initrd.

For additional software:

Restricted software: No
Software from universe component: Yes
Softare from multiverse component: No
Backported software: Yes

When installing the GRUB boot loader, selected Yes to install it to the master boot record. No errors produced and installer skipped over the next item in the main menu "Continue without boot loader"

At "Finish the installation", standard message saying Installation complete and going to reboot

On reboot, get:

error: out of disk.
grub rescue>

typing ls

(hd0) (hd0, gpt3) (hd0,gpt2) (hd0,gpt1)

typing ls (hd0,gpt3)

error: bad filename.

typing ls (hd0,gpt2)

error: unknown filesystem.

typing ls (hd0,gpt1)

error: unknown filesystem.

Rebooting from ubuntu USB and selecting Rescue a broken system: went through various steps until Enter rescue mode reached

/dev/sda3 selected as device to use as root file system Selected Execute a shell in /dev/sda3

$df -l
Filesystem   1K-blocks    Used   Available Use%  Mounted on
/dev/sda3   5316685816  901368  5047839028   1%  /
devtmpfs     264147596       0   264147596   0%  /dev
/dev/sdb1   5316685816  901368  5047839028   1%  /media/cdrom
devpts       264147596       0   264147596   0%  /dev/pts
none          52837212     212    52837000   1%  /run

ls /boot shows initrd.img-3.5.0-23-generic and vmlinuz-3.5.0-23-generic and populated grub directory, including grub.cfg. Also /etc/default/grub looks reasonable

Back in the installer, selected "Reinstall GRUB boot loader" Selected /dev/sda and no error or message produced

Rebooting the system again, and I still get the same "error: out of disk" grub error

Booting from the USB again and selecting "Rescue a broken system". Went through the various steps until "Enter rescue mode" reached. Selected "Execute a shell in /dev/sda3"

Ran 'grub-install /dev/sda' and got the message:

Installation finished. No error reported

Ran 'update-grub' and got:

Generating grub.cfg...
Found linux image: /boot/vmlinuz-3.5.0-23-generic
Found initrd image: /boot/initrd.img-3.5.0-23-generic
Found memtest86+ image: /boot/memtest86+.bin
done

Rebooting still gives the same "error: out of disk" grub error.

Apologies for the length of this. Any help would be very much appreciated

kieran

Some additional details from the grub rescue> prompt. Typing set gives:

prefix=(hd0,gpt3)/boot/grub
root=hd0,gpt3

Typing ls / or ls (hd0,gpt3)/ gives:

./ ../ lost+found/ etc/ media/ initrd.img var/ lib/ usr/ proc/ dev/ run/ root/ tmp/ home/ mnt/ sbin/ bin/ lib64/ selinux/ sys/ srv/ opt/ umlinuz

There is no /boot directory. Typing ls (hd0,gpt3)/root/ gives:

./ ../ .profile .bashrc

But typing ls (hd0,gpt3)/etc/ gives

error: out of disk.

There are similar mixed results with other directories.

share|improve this question

1 Answer 1

up vote 1 down vote accepted

biosgrub and /boot partitions are two different things. The biosgrub partition only needs to be 1 MB, and must NOT be mounted anywhere. A /boot partition needs to be more like 150-200 MB and formatted with a filesystem, like ext4. You might try reinstalling with both a biosgrub and a 200 MB /boot partition and see if that fixes it. Or try booting the grub rescue cd and running ls -l to see how large the bios reports the size of the disk is. It may be that the megaraid bios has a limit on its bios size.

share|improve this answer
    
Partition 1 is the biosgrub parition, which I just named /boot. I set it to be 10MB based on the comment in the installed about selecting "generic: include all available drivers" for drivers to include in initrd. Partition 3 is 5.5TB in size, formatted as ext4 and contains the full filesystem. It is the only partition that is mounted. –  Kieran Mar 14 '13 at 18:25
    
@Kieran, the initrd goes with the kernel and most grub files in /boot. The bios_grub partition only holds the grub core, which is much less than 1 MiB in size. If it is a size limitation with the megaraid bios, using a /boot partition near the start of the disk will fix it. –  psusi Mar 14 '13 at 18:49
    
I agree with psusi, and then some: On a BIOS-based installation on a GPT disk, GRUB 2 works best with a BIOS Boot Partition, which is not mounted anywhere. Calling it "/boot" is just confusing. With a disk of the size you've got (essentially a 6TB physical disk, as far as the BIOS is concerned), keeping the kernel below the 2TiB limit is likely to be necessary for a successful boot. Thus, you should have a separate ext2/3/4fs partition, mounted at /boot, to hold your kernel. Place it early on the disk -- BIOS Boot Partition first, then /boot, then your other partitions. –  Rod Smith Mar 14 '13 at 21:06
    
Created an extra 200MB ext4 partition mounted at /boot at the start of the disk after the biosgrub partition. This solved the problem. System now boots fine. Thanks for your help! –  Kieran Mar 15 '13 at 12:28

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.