Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I use a 9 year old PC (P4) as backup server, and need more space. I have Ubuntu 12.04 installed. Now I have one external 2TB drive that is full. I can buy another external 2TB drive, or a 3TB drive, or replace the internal one with 2TB or 3TB. I'm not sure yet what to buy.

  • Does internal or external make any difference is size limit?
  • Is there a limit to the size of a drive?

To let you know what I did: I bought a 4TB external drive from Western Digital (My Book). It worked immediately - NTFS formatted. I deleted the partition and reformatted to EXT4, and that's how I use it for now.

share|improve this question
What PC are you using? At 9 years old, the connections for the drive to the motherboard may not be compatible (SATA vs IDE) as these large drives now days are SATA. So External maybe the only option with your curent configuration. – Carl B Oct 23 '12 at 14:20
I believe it has SATA, but I'll need to check to be sure. – SPRBRN Oct 23 '12 at 14:40
That's pushing the boundaries. SATA was created in 2003. – user3463 Oct 23 '12 at 16:33
Just partition the drive. You won't be able to access a drive larger then 2TB if you have the traditional BIOS. If you have UEFI then you can use GPT ( although certain versions of Windows cannot boot to GPT partitions ). – Ramhound Oct 23 '12 at 16:46
If you have two SATA connectors and a old style BIOS, then boot from the 2TB drive. Set the 3TB drive to disabled. Ubuntu boots from the 2TB drive (same as it does now). The kernel probes the hardware, finds two drives and use the kernels understanding of both MBR and GPT to access both drives. – Hennes Oct 23 '12 at 17:17
up vote 5 down vote accepted

Does internal or external make any difference is size limit?

In principle no. The OS will handle a drive just fine regardless of you mount it externally, or internally.

There are two caveats though:

  • If you mount the disk via an USB enclosure then you will effectively do a SATA to USB conversion in the external enclosure. If the chip doing that conversion is old and fails to understand large drives then it will not work.
  • If you use a non-standard connection to the external drive (e.g. no eSATA or SAS, but USB or Firewire) then you use extra drivers. These also need to be aware of large drives.
    (I never heard of problems with USB and 3TB drives though).

Is there a limit to the size of a drive?

Depending on how the computer 'talks' to the drive, there might be problems.

Old drives used specify their size with fields containing their number of heads, cylinders and sectors. Multiply these by sector size (usually 512 bytes in those times) and you got their size. However the values got stored in different ways which lead to complications.

E.g. the BIOS used cylinders (0-1023), heads (0-255) and sectors per track (1-63). Multiply this and you get 8 455 716 864 bytes (8.4 GB). This means old BIOS DOS boot (using in 13h) could not boot from drives bigger than 8.4GB.

Similar problems where encountered at 528MB, 2.1GB, 4.2GB, 8.4GB, 33.2GB and 137GB. (more info here.)

Modern systems and drives however left all of these problems behind and we are only left with one problem: The MBR cannot describe drives larger than 2.0TiB (2.19 TB).

If you want to use a drive larger then 2.0TiB you will need to use another partition format than MBR. The one used on modern computers is">GPT, which handles large drives just fine.

However this means your computer must understand GPT. This is not a problem on a modern OS, and Ubuntu should not have any problems with it. However:

  • Your BIOS/UEFI needs to understand GPT if it want to boot from it. Unless you have a modern BIOS (on a P4? Hell no) then you cannot boot from a 3TB drive.
  • The partitions will not be recognized if it is connected to a computer with an old OS (e.g. windows XP).
share|improve this answer
There are way to many technical and spelling mistakes in this answer. For instance you cannot even boot to a GPT parition on certain versions of Windows. – Ramhound Oct 23 '12 at 16:45
@Ramhound: Oh the irony of misspelling partition in a comment complaining about spelling. – Ben Voigt Oct 23 '12 at 16:50
Sorry about the spelling mistakes. Please feel free to correct them.- As for booting on windows: The post is tagged Ubuntu and I have mentioned that it would not work with an old OS (e.g. windows XP). – Hennes Oct 23 '12 at 16:52
3 silly grammar things fixed. (e.g. misspelling cylinder as cylynder, MUltiple, and partitionss). What are the technical problems? – Hennes Oct 23 '12 at 16:55
Thanks for the reply. I just found an external 4TB drive, much cheaper than an internal 4TB and (per TB) slightly more expensive than 2TB or 3TB. So I've decided what to buy. And besides that, using it as internal drive is probably not a good idea as I don't know if the BIOS will support it. – SPRBRN Oct 23 '12 at 20:51

If I am recalling correctly, You need at least a SATA II Connector in order to be able to address drives larger than 2TB.

SATA II was not released 9 years ago.

That being said, PCI (or PCI-express) RAID controllers would provide your current system with the needed interfaces. (You do not need to create a raid on a raid controller in order to use it's ports.)

share|improve this answer
That depends one the RAID controller. Some allow plain drives. Some force you to create 1 one disk RAID. That seems the same to the end user, but in praxis a 1 drive RAID gets handled differently and latencies change. Not likely a problem for a home user though). – Hennes Oct 23 '12 at 16:35

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .