0

I'm trying to install Ubuntu 12.10 and make a dual-boot scheme with Windows 8. I'm following these instructions.

But the installer doesn't list the partitions (it even shows that dialog to choose between a full-disk install or do the process manually):

ubiquity

But the Ubuntu can see the partitions (and I can mount them in Nautilus):

disks
(full size image)

As you can see, I already resized my main partition to install Ubuntu in that "Free space". Some more outputs to describe better the problem:

ubuntu@ubuntu:~$ sudo fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 1000.2 GB, 1000204886016 bytes
256 heads, 63 sectors/track, 121126 cylinders, total 1953525168 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: 0x84dec887

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  4294967295  2147483647+  ee  GPT

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 32.0 GB, 32017047552 bytes
256 heads, 63 sectors/track, 3877 cylinders, total 62533296 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: 0x180cb215

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  4294967295  2147483647+  ee  GPT

and:

ubuntu@ubuntu:~$ sudo parted -l
Error: The backup GPT table is not at the end of the disk, as it should be.
This might mean that another operating system believes the disk is smaller.
Fix, by moving the backup to the end (and removing the old backup)?
Fix/Ignore/Cancel? C                                                 

Warning: Unable to open /dev/sr0 read-write (Read-only file system).  /dev/sr0 has been opened read-only.
Error: Can't have a partition outside the disk!                           

How can I fix this without harm the Windows installation?


Edit after Rod's answer

I confirm that HPA is disabled.

I don't understand this RAID thing, but my setup has two hard disks, one with 1TB and another one with 32GB SSD. The last is used as a cache. This thing is called Intel Rapid Storage Technology. As far as I can tell, it "uses" RAID. So I don't want to disable it in Windows. How to proceed?

borges
  • 515

1 Answers1

1

It looks like there's some question about how big the disk is. This type of problem usually occurs for one of three reasons:

  • You've got a hardware RAID array and you've added a disk to the array. If this is the case, you can tell parted to fix the problem (at the prompt you quoted and cancelled out of).
  • Your motherboard supports its own software-based RAID configuration, and this was active when the disk was partitioned, despite the fact that you've got just one disk. This results in the OS (probably Windows) thinking that the disk is smaller than it is. This works fine so long as you're in any OS that honors the software-based RAID setup. If you've booted Linux with such support disabled, though, Linux will see the entire disk, and the problem you report appears. The solution is to bring the two OSes into sync, either by activating the relevant type of RAID support in Linux or by disabling it in the firmware and in Windows. For a single-disk setup, I recommend the latter option, although that means you'll still see the error message in parted. Once the motherboard-based software RAID support is disabled, though, you can tell parted to fix it and everything should be fine. (You may also need to type sudo dmraid -E -r /dev/sda to erase the errant RAID metadata.)
  • Something has set a Host Protected Area (HPA) on the disk, but one of your OSes doesn't honor the HPA. You can check for this in Linux by typing sudo hdparm -N /dev/sda; you should get a report that specifies whether the HPA is active or disabled. How to proceed if you find this depends on why the HPA was active to begin with and what OS is not honoring it.

Unless you know you've got a hardware RAID array, I recommend checking for an HPA first, since the results of the hdparm command should be pretty definitive. If there's no HPA, you can then focus on figuring your your software RAID settings and, once you understand them, bringing your two OSes into line.

Rod Smith
  • 44,284
  • 7
  • 63
  • 105
  • AFAIK, Windows honours the HPA. Ubuntu will ignore it if the partition table lists a partition that extends beyond the HPA limited range, so respecting it would cause IO errors to parts of the disk. – psusi Mar 10 '13 at 04:35
  • @RodSmith, please see my edit. – borges Mar 11 '13 at 00:11