Create 3TB msdos partition table in CentOS5.3 x64

uniserveps
uniserveps used Ask the Experts™
on
Hello all,

My company is trying to install CentOS 5.3 x64 on to a 3TB RAID6 volume that was configured using a ServeRaid 8k on an IBM x3650. The problem we keep running into is that the anaconda installer see's that the disk is 3TB and then rewrites our msdos partition table as GPT. This is unacceptable as our server is not Itanium nor does it have EFI.
We tried reverting the changes to the partition table made by anaconda using dd to zero out the first 64 and last 9000 sectors on the disk. After that we used fdisk to create a partition structure:

Using /dev/sda
Model: ServeRA SERVER (scsi)
Disk /dev/sda: 3000GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type     File system  Flags
 1      32.3kB  518MB   518MB   primary  ext3         boot
 2      518MB   1469GB  1468GB  primary               lvm
 3      1469GB  3000GB  1532GB  primary               lvm

Unfortunately, anaconda isn't able to recognize the msdos partition table when the installer is restarted and it only gives us the option to try and clear the partition table, resulting in the disk being partitioned using GPT again.

The only reason I think that I am able to get around using GPT is because another server in our office with the same specs is running CentOS fine using the same partition layout. Any pointers or advice would be appreciated. We would like to avoid having to use GPT for the 3TB volume and then a separate device for /boot.
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Top Expert 2005
Commented:
Well this is well known msdos partition format shortcoming - 2TB is the limit.
Verify, if the controlled is capable of creating boot partition on the raid6 volume. This way You can have small boot disk, then large data disk. The large disk of course have to use GPT if larger than 2TB.
Kerem ERSOYPresident

Commented:
Hi,

If you have partition larger than 2TB you need to use GPT. Why are you  avoiding the use of GPT? What is the harm using it? Why is the use of it unacceptable?

Cheers,
K.
GPT can be made bootable on BIOS-based systems by adding a BIOS boot partition, see http://grub.enbug.org/BIOS_Boot_Partition. 2TB is the largest HDD space addressable using 32-bit LBA (which msdos-style partition tables use), so you need GPT (or another partition format that uses 64-bit addressing) for a 3TB disk.
Acronis in Gartner 2019 MQ for datacenter backup

It is an honor to be featured in Gartner 2019 Magic Quadrant for Datacenter Backup and Recovery Solutions. Gartner’s MQ sets a high standard and earning a place on their grid is a great affirmation that Acronis is delivering on our mission to protect all data, apps, and systems.

Turns out that the CentOS5.3 installer didn't like the size of the RAID6 volume so it kept overwriting the partition table using GPT. We had managed to use a msdos partition table with another server running CentOS5.2. The steps I took get my desired result were:

Creating a msdos partitioning scheme as follows using a gparted boot CD:
/dev/sda1 128MB ext3 (/boot)
/dev/sda2 1.5TB LVM
/dev/sda3 ~1.5TB LVM

I then used a CentOS5.2 install DVD with GUI anaconda. It did not complain about the large disk size. In the anaconda partition manager we added the two 1.5 TB together to make one large 3TB LVM volume. After installation completed, we just ran yum upgrade to get our system up to CentOS5.3.
Top Expert 2005

Commented:
> Creating a msdos partitioning scheme as follows using a gparted boot CD:
This is simply impossible.
You can create such partitioning tables, but kernel will not use it  - I have tried that.
You sure it's msdos partition scheme? Gpartes is creating GPT partition tables... Maybe You only think You have creates msdos partition table?
Kerem ERSOYPresident

Commented:
Yeah but I agree with RavenPL. You think it is MS-DOS partition because it does not complain. But it is GPT. It is not possbile to map all your volume using a DOS-Partiton table and this is the correct answer.1
Kerem ERSOYPresident

Commented:
Have you ever tried to access these partitions under DOS ??

Author

Commented:
KeremE and ravenpl, is there anything I can post for you to see that it actually is using an msdos partitioning table? If it was using a GPT table and my system is NOT Itanium or EFI GPT aware then how am I booting off my /boot?
Top Expert 2005

Commented:
You can create msdos partition table spanning over 2TB, but kernel will not use it. So You actually can have msdos partition, and using only first 2TB of the disk.
Please post results from
df -k
fdisk -l /dev/sda
pvdisplay -v
lvdisplay -v
Uniserveps,

Having an Itanium or EFI system is not a requirement for GPT booting at all; GPT is backwards-compatible with BIOS systems (only the boot loader needs to be GPT-aware, which is true for GRUB2 and a patch for GRUB-Legacy also exists, presumably incorporated into CentOS). In fact, when writing gptgen, I heavily relied on VMware Workstation's ability to boot from GPT for testing on Linux (VMware emulates an Intel 440BX chipset with an AMI-like BIOS, and has absolutely no support for EFI).

As ravenpl said, please post the output of "fdisk -l /dev/sda".

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial