Tôi nhận ra rằng câu hỏi này đã được hỏi hai năm trước, nhưng tôi không nghĩ bất kỳ câu trả lời nào ở đây là hoàn chỉnh, vì vậy tôi sẽ đưa ra một câu trả lời.
Để trả lời dòng chủ đề, giới hạn của USB là giới hạn của thông số lớp lưu trữ khối (MSC) của nó. Thông số kỹ thuật này lần lượt dựa trên bộ lệnh trong suốt SCSI. (Xem thêm http://en.wikipedia.org/wiki/USB_mass_st Storage_device_ class#Device_access ). Nhìn vào các lệnh đọc SCSI ( http://en.wikipedia.org/wiki/SCSI_Read_Commands#Read_.286.29 ), bạn có thể thấy rằng có một số phiên bản API. Phiên bản cũ nhất hỗ trợ các địa chỉ khối 21 bit (và giới hạn 1GiB), phiên bản mới hơn hỗ trợ LBA 32 bit (áp dụng giới hạn 2TiB trong nhiều trường hợp hiện nay) và mới nhất có LBA 64 bit sẽ áp dụng giới hạn 8ZiB ( đó là 8 giga-terabyte!).
Vỏ USB hiện đại sẽ hỗ trợ LBA 64 bit và sẽ hỗ trợ mọi ổ đĩa bạn có thể tìm thấy. Các trường hợp cũ hơn sẽ không hỗ trợ điều này và sẽ hoạt động sai nếu chúng được gắn vào ổ đĩa lớn hơn 2TiB.
Giả sử trường hợp USB của bạn hỗ trợ ổ đĩa, thì có vấn đề phân vùng ổ đĩa. Sơ đồ phân vùng MBR (được sử dụng trong các hình thức khác nhau kể từ MS-DOS) sử dụng chỉ mục khối 32 bit. Vì vậy, nó có giới hạn là 2TiB. Giải pháp được sử dụng hiện nay là chuyển sang định dạng bảng phân vùng GUID (GPT) sử dụng số khối 64 bit.
Tất cả các hệ điều hành hiện đại (bao gồm Windows, Mac OS X và Linux) đều hỗ trợ các bảng phân vùng GUID và có thể hỗ trợ ổ đĩa> 2TiB dưới dạng đĩa dữ liệu.
Nếu bạn là người dùng Mac hoặc Linux, thì bạn cũng có thể khởi động từ ổ đĩa. Máy Mac có phần sụn EFI và hỗ trợ khởi động khối lượng GPT. Các hệ thống Linux hiện đại có mã trong bộ tải khởi động GRUB, theo tôi được biết, sẽ cho phép khởi động Linux từ ổ GUID mà không cần firmware EFI ..
Tuy nhiên, nếu bạn đang chạy Windows, bạn có thể hoặc không thể khởi động từ ổ đĩa. Bạn sẽ cần phần mềm EFI trên bo mạch chủ của mình và bạn sẽ cần chạy phiên bản Windows 64 bit. Microsoft yêu cầu cả hai để khởi động từ ổ GPT có kích thước bất kỳ. Điều này có nghĩa là nếu bạn đang chạy Windows 32 bit hoặc có phần sụn chỉ BIOS (không có EFI), bạn sẽ muốn đảm bảo đĩa khởi động của mình là 2TiB hoặc nhỏ hơn, vì vậy bạn có thể áp dụng phân vùng MBR.