我有一个 3TB 的 Seagate Backup Plus Desktop USB 3.0 驱动器,在它的外壳中工作正常,但是当我将它从它的外壳中取出并直接将其插入为内部 SATA 驱动器时,它只是无法正确识别(它在用于外壳)。
我的系统的主板是ASUS P8P67 LE,它有两个 SATA 6.0 Gb/s 和四个 SATA 3.0 Gb/s 端口。
当用作内部 SATA 驱动器时,Windows 7 询问我是否要格式化驱动器,就好像它没有合适的文件系统一样,如果我使用该DISKMGMT.MSC工具(在开始菜单中输入),我会得到完全错误的信息驾驶。
它说驱动器有 3 个分区(349,31GB 的RAW数据和两个未分配的分区,分别为 1698,68GB 和 746,52GB)。此信息完全错误,因为该驱动器在 USB 外壳中使用时,可用作单个 NTFS 分区 (2794,52GB)。当通过SATA连接时,它为什么显示为没有文件系统的3个分区?!
在其提供的 USB 3.0 外壳中使用驱动器时,希捷是否使用某种专有方式来存储数据?我没有使用任何类型的加密。我只是用 USB 3.0 插入驱动器并立即开始使用它,因为它显然是用 NTFS 文件系统预先格式化的。
windows-7 hard-drive sata community-faq-proposed external-hard-drive
我已经知道我需要做什么来解决这个问题;我只是不知道该怎么做。我希望有一些现成的工具可以自动执行此操作 - 但找不到任何工具。我接受 Rod 的回答,因为尽管没有直接解决我的问题,但它为扇区大小问题提供了非常好的背景,并使我相信该问题确实是分区对齐和寻址。对于那些遇到同样问题的人,在做任何事情之前,请彻底仔细地阅读它,包括评论。
我有一台电脑,需要更多空间,我买了一个新的 500GB 驱动器和一个 USB 外壳。很快我就注意到,如果我对机箱上的驱动器进行分区并将其移动到计算机上,它就无法识别这些分区(反之亦然)。我认为这是外壳的问题,并没有担心。
美好的一天,我的电脑决定不再打开。结果发现主板(没有品牌,只是上面印着一个很大的 MADE IN CHINA)已经死了。我一直将它用作文件服务器,而那个 500GB 的驱动器现在充满了我不能丢失的数据。我现在破产了,买不起新电脑,所以我唯一的希望是“有缺陷的”USB 外壳。
配备了几个 Linux 发行版、一台笔记本电脑、VirtualBox 和机箱,我对这个问题进行了取证分析。dmesg 报告分区大小超出驱动器末端。所以我查看了硬盘数据表,从头开始计算扇区数,用 dd 手动测试驱动器边界,一切看起来都很好,直到我启动 fdisk 并说:
Note: Sector size is 4096 (not 512).
Run Code Online (Sandbox Code Playgroud)
多么谦虚的fdisk。这个“笔记”是所有问题的根源。经过一番折腾,得出了以下结论:
USB 外壳没有缺陷。
至少现在已经死了的主板上的 SATA 控制器是一个“奇怪的”控制器。它没有向操作系统报告 4096 字节的扇区,因此操作系统愉快地使用 512 字节的扇区地址创建了 MBR。
现在,当我尝试访问分区时,操作系统会尝试在 4096 字节的扇区驱动器上使用基于 512 字节的地址,当然,这是行不通的。
那么,除了在十六进制编辑器上手动编辑 MBR 之外,如何更正 MBR 中的地址,使它们在 4096 字节扇区大小上有效,以及
分区未针对 4096 字节扇区对齐。除了复制进出另一个驱动器之外,还有一些工具可以用来对齐它们吗?(我没有备用驱动器),或者我是否需要创建一些工具将数据一次“转移”到一边一小块?分区是ext3。
谢谢!
我发现有一种聪明的方法可以使用 dd 在这个问题中就地移动分区:How to move a partition in GNU/Linux? …
内置 SATA 硬盘驱动器对很多 2TB 的主板都有限制,如果我想要一个 3TB 的硬盘,那么我需要使用 PCI 卡连接它(或获得一个新的主板)。
但我想问:如果我将 3TB 硬盘连接到外部 USB 外壳,它会起作用吗?我想购买的Vantec 机箱说它最多支持 3TB 硬盘,但我想确定一下。
硬盘驱动器的扇区大小正在从 512 字节过渡到 4096 字节,如果没有附加软件(例如Western Digital 的 WDalign),Windows XP 似乎将不支持这些较新的驱动器
我的问题是:这如何影响外部硬盘驱动器?我将购买一个 1TB 的 USB 外置驱动器,它将插入 Windows 7 和 XP 机器的组合中。有没有一种简单的方法可以判断外部硬盘驱动器上的扇区大小是多少?
我有一个 4 TB 硬盘,具有 4k 物理扇区大小(高级格式),我将它连接到两个 SATA 主机控制器(一个内置,一个在 USB 机箱中)。在(较旧的,大约 2010 年)上,它的逻辑扇区大小为 512B,但报告其物理扇区为 4096 字节。在最近的 USB 机箱中,据报道它具有 4096B 的逻辑和物理大小:
# internal host controller
sd 4:0:0:0: [sdd] 7814037168 512-byte logical blocks: (4.00 TB/3.63 TiB)
sd 4:0:0:0: [sdd] 4096-byte physical blocks
# USB enclosure
sd 18:0:0:0: [sdd] 976754646 4096-byte logical blocks: (4.00 TB/3.63 TiB)
Run Code Online (Sandbox Code Playgroud)
“内部”控制器显示了我以前见过的行为,通常称为“512e”,其中驱动器的固件模拟 512 扇区 LBA 寻址,即使它不会以这种方式物理写入扇区。操作系统(和管理员)可以确保分区对齐,以便(小)写入命令可以分组,以便磁盘可以覆盖整个扇区而不是回退到写入物理扇区的一部分,在那里它需要读取其余部分首先是内容。
然而,在驱动器(USB 外壳)上看到“4k 原生”行为对我来说是新的,我最初的想法是外壳在驱动器的模拟 512B 模拟之上模拟 4096B 寻址。
我唯一可以通过 Web 搜索找到的这种情况,其中 USB 存储设备注册了 4k 逻辑扇区。我认为他们在 512e 上模拟 4k,因此允许使用 MBR 分区表,以便大型驱动器可以在仅支持 MBR+FAT32 USB 大容量存储的传统/嵌入式设备(智能电视等)上使用。
后 …
我最近购买了一个具有 3 TB (2.72 TiB) 存储容量的外置磁盘驱动器。
现在,根据维基百科关于 MBR 的文章,使用 MBR 方案格式化的磁盘上的最大可寻址存储空间被限制为 2TB (1.81 TiB),因此按理说大容量硬盘驱动器 (>2TB) 必须使用GUID 分区进行格式化表 (GPT) 方案能够使用 HDD 的全部容量。
那么为什么 3TB WD My Book 外置磁盘驱动器出厂时使用 MBR 方案格式化,更令人惊讶的是,为什么当 MBR 最多只能寻址 1.81 TiB 时,它在 Windows 上显示为 2.72 TiB 驱动器?
有没有其他拥有大容量西部数据(或其他品牌)硬盘的人见过这个?
如果有帮助,则硬盘已使用格式化NTFS且扇区大小为4096 bytes. 另外,这里有一些截图:
现在 MBR 分区下的 LBA 使用 32 位值寻址,最大为 2^32 或 4294967296。硬盘上的每个 LBA 对应一个 512 字节的扇区值(即使在 4K 高级格式化驱动器上,它们仍然显示为OS 的 512 字节扇区驱动器),因此 …
我刚刚购买了几个新的 3TB WD 驱动器。它们具有 4k 物理扇区,但有某种层提供 512B 逻辑扇区(请参阅下面的分区表)。
为了尝试从我的硬盘驱动器中获得更高的速度,我想摆脱这个逻辑层并实际使用物理 4k 扇区。但是,我无法从 fdisk 和 parted 的手册页或从 Google 搜索中弄清楚如何执行此操作(或者即使可能)。有谁知道如何做到这一点?
至于为什么这是相关的,这个页面表明,仅仅正确对齐扇区已经可以弥补 25% 的读取速度差异,在某些情况下超过 2500% 的写入速度差异!摆脱逻辑扇区以支持物理扇区应该会进一步提高速度。谢谢!
$ parted /dev/sdc
GNU Parted 2.3
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB zfs
9 3001GB 3001GB 8389kB
Run Code Online (Sandbox Code Playgroud)
PS我不在乎驱动器上的数据,我只是在玩不同的文件系统。另外,这是我第一次在这里发帖,所以请让我知道我的帖子是否应该采用不同的格式等。
我最近将自制的外置硬盘从 1TB 升级到 3TB。在这样做时,我了解到它的桥接板不支持大于 2TB 的驱动器。我必须得到一个更新的案例才能支持这个驱动器。
有谁知道为什么这应该是真的?
从SATA接口的角度来看,应该没有问题。识别块的 LBA-28 系统强加了 128GiB 的限制(假设通常的 512 字节块),但 10 多年来,这一直不是一个严重的问题。从那以后的一切(包括所有 SATA 设备)都支持 LBA-48,最高可达 128PiB,因此应该可以轻松支持 3TB。
我知道 MBR 分区表存在 2TB 限制的问题,但这不应该影响 SATA-USB 桥接芯片,因为它(或应该)只是在两个协议之间转换磁盘块。
我认为这可能只是芯片制造商变得懒惰的情况,将 32 位整数用于真正需要支持 48 位值的应用程序。真的那么简单(和 IMO,不可原谅)还是我还缺少其他东西?
只是好奇,但我还无法从任何地方通过谷歌搜索答案。
我刚买了一个 1 TB 的希捷 Barracuda ST1000LM048硬盘。它是一个高级格式驱动器,具有 4096 字节的扇区。
我计划将它与我便宜但值得信赖的(我的意思是便宜,它真的很普通,我花了大约 5 美元买它)2.5 英寸硬盘盒,我已经用了 5 年了,多个硬盘没有问题(我不确定我是否曾经使用过高级格式硬盘。它基本上是一个JMicron JM20329 高速 USB 转 SATA 桥芯片,带有一些晶体管和一个 USB 端口。看起来完全像这样:
当我购买 1 TB HDD 时,我不知道涉及高级格式驱动器和 HDD 外壳的问题。我强烈怀疑它可能在这里起作用,但在某些情况下我可以访问数据.
现在我不确定,因为我刚刚找到了一个较旧的 Western Digital 500 GB 高级格式硬盘,它使用同一个机箱显示在 Windows 资源管理器上......这里发生了什么?!
当我通过 USB 外壳将其连接到 Windows 8.1 笔记本电脑时,Windows 资源管理器上没有显示新卷。在通过同一硬盘盒连接的同一台笔记本电脑上运行 Fedora 25 时,我可以看到文件夹和文件。
当我通过内部 SATA 连接它时,它可以在不同的 Fedora 25 PC 上运行。我附近没有可以在内部 SATA 上对其进行测试的 Windows PC。
可能相关:分区方案似乎有问题/奇怪,请参阅以下部分中的粗体文本。我真的很困惑,因为我以前从未见过类似的案例。
我有一个 3TB WD 磁盘(在 My Book Essential 外置驱动器中)。我在 Linux 下使用 parted 用 GPT 磁盘标签对其进行分区,并通过 USB 电缆从我的笔记本电脑加载数据。然后我打开它并切换到另一台计算机(台式机)上的内部 SATA 驱动器。
Linux(两台计算机上的 Fedora 14)无法识别该磁盘。parted 表示无法识别的磁盘标签。它还报告逻辑扇区大小为 512 字节:“扇区大小(逻辑/物理):512 字节/4096 字节。当我通过 USB 将它连接到我的笔记本电脑时,它被报告为 4096/4096。
我试图通过将所有扇区偏移量乘以 8 来重新分区它,但它仍然无法识别数据。(并不是说我非常惊讶。)
如果我在台式机上切换到 USB 连接,它会切换回 4096 字节的逻辑扇区。所以看起来是 USB 控制器板使它使用 4096 字节的逻辑扇区。老实说,考虑到它是硬件扇区大小,4096 对我来说更有意义,但是有没有办法让 USB 或 SATA 使用另一个值?
我今年生产的SSD,扇区大小为512字节。可以在保留数据的情况下改成2k或者4k吗?使用 Windows 7。我想进行基准测试,看看更大的扇区大小是否会提高读/写速度。
hard-drive ×9
linux ×4
partitioning ×3
sata ×3
usb ×3
mbr ×2
windows ×2
windows-7 ×2
debian ×1
enclosures ×1
filesystems ×1
gpt ×1
ssd ×1
windows-8.1 ×1