USB 转 SATA 适配器上的硬盘未显示完整大小

USB 转 SATA 适配器上的硬盘未显示完整大小

我购买了一个新的 4TB 硬盘,Western Digital WD40PURX,来替换现有的 1TB 硬盘,并且由于我没有空闲的内部 SATA 端口,因此我使用了身边的 USB 转 SATA 适配器来临时连接硬盘,这样我就可以移动数据,然后再切换硬盘。

但是当我尝试对驱动器进行分区时,Ubuntu 只能看到 1.6 TB 的大小:

# gdisk -l /dev/sdg
GPT fdisk (gdisk) version 1.0.1

Partition table scan:
  MBR: not present
  BSD: not present
  APM: not present
  GPT: not present

Creating new GPT entries.
Disk /dev/sdg: 3519069872 sectors, 1.6 TiB
Logical sector size: 512 bytes
Disk identifier (GUID): B19A7DC5-52A5-44AD-B295-51C8853A9EBB
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 3519069838
Partitions will be aligned on 2048-sector boundaries
Total free space is 3519069805 sectors (1.6 TiB)

下面是smartctl

# smartctl -x /dev/sdg 
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.8.0-49-generic] (local build)
Copyright (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Purple
Device Model:     WDC WD40PURX-64GVNY0
Serial Number:    WD-WCC4E3YY1VKE
LU WWN Device Id: 5 0014ee 2b849189a
Firmware Version: 80.00A80
User Capacity:    4,000,787,030,016 bytes [4.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5400 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2 (minor revision not indicated)
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 1.5 Gb/s)
Local Time is:    Wed Apr 26 11:23:10 2017 IDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
AAM feature is:   Unavailable
APM feature is:   Unavailable
Rd look-ahead is: Enabled
Write cache is:   Enabled
ATA Security is:  Disabled, NOT FROZEN [SEC1]
Write SCT (Get) Feature Control Command failed: Read of ATA output registers not implemented [JMicron]
Wt Cache Reorder: Unknown (SCT Feature Control command failed)

这里是lsusb

# lsusb | grep SATA
Bus 001 Device 002: ID 152d:2338 JMicron Technology Corp. / JMicron USA Technology Corp. 
  JM20337 Hi-Speed USB to SATA & PATA Combo Bridge

我已经搜索过类似 USB 大容量存储设备的大小限制,但似乎并非如此。

[更新]:在查看了@Mitch 指出的讨论后,我尝试使用跳线将驱动器设置为“高级格式”,但没有成功 - 设置跳线后,驱动器仍然识别为“扇区大小:512 字节逻辑,4096 字节物理”。

我将非常感激您对这个问题的任何想法。

答案1

解决该问题的一个可能方法是将较大的 4TB 驱动器直接连接到计算机 SATA 端口,将较小的驱动器连接到 USB 适配器上。

大多数新的 Linux 系统可以直接通过 USB 运行,只要 BIOS 强制从 USB 启动(尽管速度有点慢)。

间接解决方案可能来自这里或者这里。似乎其他人也因为这个特定的 JMicron 适配器而遇到了类似的问题,该适配器的怪癖已修复但随后又重新出现。也许可以尝试运行一个没有再次出现该错误的不同内核。

答案2

JM20337 有点被诅咒了。

撇开每个外壳都是不同的,你永远不知道(有似乎需要更多的主板修订,并且观察到数据损坏错误这里, 没找到别处),虽然它应该支持 LBA48 寻址,但似乎有一个错误与报告的块长度大小(对于原因它只能在>2TB 磁盘上使用)

这应该是固定的几年前,但正如另一个答案中链接末尾所报告的那样,也许还有其他事情需要考虑,或者可能存在回归。 Windows 的检测逻辑略有不同,因此可能不是?) 在那里工作。

编辑:划掉. 尽管“如此新”,甚至支持的一些 SATA 2 功能,似乎在 2004 年它们仍然吝啬实施 48 位命令在桥接器的 USB 端。而且我找不到任何固件更新。不过我想知道这是否仍然无法解决(例如,您尝试坚持“4096 块”模式,跳过剪辑的磁盘大小报告并尝试其他方式找到它)。

EDIT2:看起来至少旧的 JMicron 控制器是这样的没有所有 SCSI/ATA 转换命令块都按预期的顺序和格式排列。我想这可以理解,因为当它们发货时,相应的工作组才刚刚成立(其他桥接器制造商甚至还没有所有权协议)。那么,也许需要克服的大问题就在这里?

相关内容