Is there a size limit on external USB hard drives?

14

2

The internal SATA hard drives have a limit on a lot of motherboards of 2TB and if I want to get a 3TB HDD then I need to connect it using a PCI card (or get a new motherboard).

But I wanted to ask: If I connect a 3TB harddrive to a external USB enclosure, will it work? The Vantec enclosure I want to buy says it supports up to 3TB HDD but I want to make sure.

Karim

Posted 2011-07-09T15:34:46.760

Reputation: 1 062

1I don't beleive the limit applies to the motherboard at all, but the USB enclosure as denoted in @David C. answer below. I just found out that a 4TB drive will not work in any of the USB enclosures I have even though my OS and motherboard do support 4TB drives (has them internally) based on the 2TB limit with 32bit LBA adressing inside the enclosure itself. – DarrenMB – 2016-05-28T00:17:02.720

There is always a size limit. Period. The addressing space of your computer is the limit. It varies depending on your hardware and software, but there is always a limit. Your onboard USB controller probably has the same address size as your onboard SATA controller. – bahamat – 2011-07-09T17:18:18.070

yeah there is a limit sure but i am asking if a 3TB hdd in usb enclosure will work in a pc where this same harddisk wont work while connected to sata, also if this limit is like 500TB it wont matter cause we wont see such harddisks in the next 10 years. – Karim – 2011-07-09T20:17:04.427

Like I said, if they're both onboard controllers then they will likely have the same limit. – bahamat – 2011-07-09T22:01:03.257

@bahamat: not Necessarly , sata and usb are different things. please read the answer of KCotreau – Karim – 2011-07-09T22:59:01.877

Answers

25

I realize that this question was asked two years ago, but I don't think any of the answers here are complete, so I'm going to give it a shot anyway.

To answer the subject line, USB's limit is the limit of its mass-storage class (MSC) spec. This spec is in turn based on the SCSI transparent command set. (See also http://en.wikipedia.org/wiki/USB_mass_storage_device_class#Device_access). Looking at the SCSI read commands (http://en.wikipedia.org/wiki/SCSI_Read_Commands#Read_.286.29) you can see that there are several versions of the API. The oldest supports 21-bit block addresses (and a 1GiB limit), a later version supports 32-bit LBAs (imposing the 2TiB limit many cases have today), and the latest has a 64-bit LBA which will impose an 8ZiB limit (that's 8 giga-terabytes!).

Modern USB cases will support 64-bit LBAs and should support any drive you're likely to find. Older cases won't support this and will misbehave if they are attached to a drive larger than 2TiB.

Assuming your USB case supports the drive, then there's the issue of partitioning the drive. The MBR partition scheme (used in various forms since MS-DOS) uses a 32-bit block index. So it has a limit of 2TiB. The solution used today is to switch to the GUID partition table (GPT) format which uses 64-bit block numbers.

All modern operating systems (including Windows, Mac OS X and Linux) support GUID partition tables and should be able to support a >2TiB drive as a data disc.

If you're a Mac or Linux user, then you should be able to boot from the drive as well. Macs have EFI firmware and support booting GPT volumes. Modern Linux systems have code in the GRUB bootloader that, I'm told, will allow booting Linux from a GUID drive without EFI firmware..

If you're running Windows, however, you may or may not be able to boot from the drive. You will need EFI firmware on your motherboard, and you will need to be running a 64-bit version of Windows. Microsoft requires both in order to boot from a GPT drive of any size. This means that if you are running 32-bit Windows or have BIOS-only firmware (without EFI), you will want to make sure your boot disk is 2TiB or smaller, so you can apply an MBR partition.

David C.

Posted 2011-07-09T15:34:46.760

Reputation: 863

thanks for your answer. but i want to ask something . is windows XP 32 included in the list of modern operating systems or i need win 7? – Karim – 2013-08-02T23:40:10.180

2

Windows XP doesn't have built-in support for GPT partitions and disks larger than 2TB, but I believe you can download 3rd party software to add the support for non-bootable volumes. For built-in support, you will need Vista or later. (Seagate's DiskWizard claims to include software for large drives on XP. I have no personal experience with this. http://knowledge.seagate.com/articles/en_US/FAQ/218619en)

– David C. – 2013-08-10T01:11:26.907

1

It will really come down to your motherboard, but most of the issues you are worried about relate to directly-connected SATA drives, which use a SATA driver, not a USB driver as in your case. These SATA issues are being addressed in newer motherboards.

Doing a search, I could not find one person, who had problems with a 3TB external drive, but of course, I cannot say 100% since I do not have your specific hardware to test. This is interesting as a general paper (Note number 10, which is directly relevant to your question).

You might want to create a couple of partitions <2TB, or you can create GPT partitions >2TB. Select the largest block size you can when formatting, as there are known issues with some programs, like Windows Backup and small block sizes. With that much space, you may lose a little, but not much relatively speaking.

KCotreau

Posted 2011-07-09T15:34:46.760

Reputation: 24 985

In my experience a 4TB HDD will not operate in a USB chamber that is only capable of the 2TB limit (32bit LBA). It shows as "No Media". I expect any drive over the limit, even the smallest ammount, will be completely invisible to the USB enclosures SATA adapter. – DarrenMB – 2016-05-28T00:13:53.217

cool asnwer, didnt know there is a software issue with >2TB partitions :) – Karim – 2011-07-09T20:18:32.913

well it seems that >2TB dont work on windows xp 32 so well this is another problem i am facing :( – Karim – 2011-07-09T20:20:53.987

1

The 2TB issue is mainly with computers that need to boot from a large drive as the BIOS has problems understanding them. Even without a card or extra addon, using a standard lower drive for boot and a 2+TB drive for data works fine (at least the few times I have tried).

USB to SATA enclosures usually just emulate a hard drive controller. Some of the older ones were very rough and had a few issues, but with any recent one, I don't think you will have any issues what so ever.

William Hilsum

Posted 2011-07-09T15:34:46.760

Reputation: 111 572