我买了一个 USB 3.0 外置 3.5 英寸硬盘盒。
它基于以下芯片:JMicron JMS567。
我想用它来连接我的内置硬盘,它有三个分区:交换分区和两个 ext4 分区。
为了测试目的,我拿了我的旧 200 GB 硬盘,它有 2 个分区:第一个是小 NTFS 分区,第二个是 ext4 分区。
我的电脑运行的是 Linux Mint 17.2、x86_64、内核 4.4。
当我将硬盘盒连接到 PC 时,我可以访问第一个 NTFS 分区,但无法访问第二个 ext4 分区!我也在 Arch 2017.8 (VirtualBox) 上尝试了 USB 盒。同样的问题!
以下是dmesg
安装失败时显示的内容:
[288553.362536] sdd: sdd1 sdd2 [288553.362593] sdd:p2 大小 384428032 超出 EOD,可实现本机容量 [288553.366410] sdd: sdd1 sdd2 [288553.366457] sdd:p2 大小 384428032 超出 EOD,被截断 [288553.394656] sd 13:0:0:0: [sdd] 连接的 SCSI 磁盘 [288554.138776] EXT4-fs(sdd2):几何形状不良:块数 48053504 超出设备大小(48053293 个块) [288555.667902] EXT4-fs(sdd2):几何形状不良:块数 48053504 超出设备大小(48053293 个块)
我百分之百确信我的磁盘无错误!我将其作为常规 SATA HDD 连接到我的电脑上,并对其进行了测试!
最搞笑的是,我在 Windows 7 下安装了ext2fsd
允许访问 Windows 下的 ext4 分区的驱动程序。因此,在 Win 7 下我可以毫无问题地访问第二个 ext4 分区!
这绝对是 USB 驱动程序问题!
当我的 200 GB 磁盘作为 SATA 驱动器连接时,它的参数(我将磁盘通过 USB 连接时不同的值设置为粗体):
fdisk -l /dev/sdd 磁盘 /dev/sdd: 200.0 GB,200049647616字节 总共 255 个磁头、63 个扇区/磁道、24321 个磁柱390721968部门 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节 /512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标识符:0xe1751117 设备启动开始结束块ID系统 /dev/sdd1 * 2048 6293503 3145728 7 HPFS/NTFS/exFAT /dev/sdd2 6293504 390721535 192214016 83 Linux hdparm -I /dev/sdd /dev/sdd: ATA 设备,带有不可移动介质 型号:WDC WD2000JS-00MHB0 序列号:WD-WMANL1143240 固件版本:02.01C03 标准: 支持:7 6 5 4 可能使用:8 配置: 逻辑最大电流 气缸 16383 16383 头 16 16 扇区/轨道 63 63 -- CHS 当前可寻址扇区:16514064 LBA 用户可寻址扇区:268435455 LBA48用户可寻址扇区: 390721968 逻辑/物理扇区大小:512 字节 设备大小为 M = 1024*1024: 190782兆字节 设备尺寸为 M = 1000*1000: 200049兆字节 (200 GB) 缓存/缓冲区大小 = 8192 KB
相同的磁盘,但现在通过 USB HDD 盒连接:
fdisk -l /dev/sdd 磁盘 /dev/sdd: 200.0 GB,200048565760字节 总共 255 个磁头、63 个扇区/磁道、24321 个磁柱390719855部门 单位 = 1 * 512 = 512 字节的扇区 扇区大小(逻辑/物理):512 字节 /4096 字节 I/O 大小(最小/最佳):4096 字节 / 33553920 字节 磁盘标识符:0xe1751117 设备启动开始结束块ID系统 /dev/sdd1 * 2048 6293503 3145728 7 HPFS/NTFS/exFAT /dev/sdd2 6293504 390721535 192214016 83 Linux hdparm -I /dev/sdd /dev/sdd: ATA 设备,带有不可移动介质 型号:WDC WD2000JS-00MHB0 序列号:WD-WMANL1143240 固件版本:02.01C03 标准: 支持:7 6 5 4 可能使用:8 配置: 逻辑最大电流 气缸 16383 16383 头 16 16 扇区/轨道 63 63 -- CHS 当前可寻址扇区:16514064 LBA 用户可寻址扇区:268435455 LBA48用户可寻址扇区: 390719855 逻辑/物理扇区大小:512 字节 设备大小为 M = 1024*1024: 190781兆字节 设备尺寸为 M = 1000*1000: 200048兆字节 (200 GB) 缓存/缓冲区大小 = 8192 KB
如您所见,几何形状错误,因为扇区大小错误。也许,安装选项中有任何参数允许用户设置块/扇区大小?或者其他解决方案?
PS详细USB芯片描述:
总线 002 设备 004:ID 152d:2590 JMicron Technology Corp. / JMicron USA Technology Corp. Seatay ATA/ATAPI 桥接器 设备描述符: b长度 18 bDescriptorType 1 bcdUSB 2.10 bDeviceClass 0(在接口级别定义) bDeviceSubClass 0 bDeviceProtocol 0 bMaxPacketSize0 64 idVendor 0x152d JMicron Technology Corp. / JMicron USA Technology Corp. idProduct 0x2590 Seatay ATA/ATAPI 桥接器 bcd设备 81.05 iManufacturer 1 USB 转 ATA/ATAPI Brid iProduct 2 通用 USB 设备 iSerial 3 00A12345AFC0 bNumConfigurations 1 配置描述符: b长度 9 bDescriptorType 2 w总长度 85 bNumInterfaces 1 bConfigurationValue 1 iConfiguration 4 USB 大容量存储 bmAttributes 0xc0 自供电 最大功率 30mA 接口描述符: b长度 9 bDescriptorType 4 bInterfaceNumber 0 bAlternateSetting 0 bNumEndpoints 2 bInterfaceClass 8 大容量存储 bInterfaceSubClass 6 SCSI bInterfaceProtocol 80 仅限批量 iInterface 6 MSC 批量传输 端点描述符: b长度 7 bDescriptorType 5 bEndpointAddress 0x81 EP 1 输入 bmAttributes 2 传输类型 批量 同步类型 无 使用类型数据 wMaxPacketSize 0x0200 1x 512 字节 b间隔 0 端点描述符: b长度 7 bDescriptorType 5 b端点地址 0x02 EP 2 输出 bmAttributes 2 传输类型 批量 同步类型 无 使用类型数据 wMaxPacketSize 0x0200 1x 512 字节 b间隔 0 接口描述符: b长度 9 bDescriptorType 4 bInterfaceNumber 0 b替代设置 1 bNumEndpoints 4 bInterfaceClass 8 大容量存储 bInterfaceSubClass 6 SCSI b接口协议 98 iInterface 10 MSC USB 连接 SCSI 端点描述符: b长度 7 bDescriptorType 5 b端点地址 0x01 EP 1 输出 bmAttributes 2 传输类型 批量 同步类型 无 使用类型数据 wMaxPacketSize 0x0200 1x 512 字节 b间隔 0 命令管道(0x01) 端点描述符: b长度 7 bDescriptorType 5 bEndpointAddress 0x82 EP 2 输入 bmAttributes 2 传输类型 批量 同步类型 无 使用类型数据 wMaxPacketSize 0x0200 1x 512 字节 b间隔 0 状态管道(0x02) 端点描述符: b长度 7 bDescriptorType 5 bEndpointAddress 0x83 EP 3 输入 bmAttributes 2 传输类型 批量 同步类型 无 使用类型数据 wMaxPacketSize 0x0200 1x 512 字节 b间隔 0 数据输入管道(0x03) 端点描述符: b长度 7 bDescriptorType 5 b端点地址 0x04 EP 4 输出 bmAttributes 2 传输类型 批量 同步类型 无 使用类型数据 wMaxPacketSize 0x0200 1x 512 字节 b间隔 0 数据输出管道(0x04) 二进制对象存储描述符: b长度 5 bDescriptorType 15 w总长度 22 bNumDeviceCaps 2 USB 2.0 扩展设备功能: b长度 7 bDescriptorType 16 开发能力类型 2 bmAttributes 0x00000002 支持链路电源管理 (LPM) 超高速 USB 设备功能: b长度 10 bDescriptorType 16 [0177] bDevCapabilityType 3 bmAttributes 0x00 wSpeedsSupported 0x000e 设备可以全速(12Mbps)运行 设备可以高速运行(480Mbps) 设备可以超高速 (5Gbps) 运行 b功能支持 1 最低全功能设备速度为全速(12Mbps) bU1DevExitLat 10微秒 bU2DevExitLat 32 微秒 设备状态:0x0001 自供电
答案1
终于!我找到了解决方案允许使用常规mount
命令:
sudo resize2fs -f /dev/sdd2
这是一个输出:
Resizing the filesystem on /dev/sdd2 to 48053293 (4k) blocks. The filesystem on /dev/sdd2 is now 48053293 blocks long.
此命令不会删除非常重要的数据!
之后,我就可以用标准文件系统工具打开两个分区了!
答案2
在创建这个线程时,我终于找到了解决方案!
假设您的磁盘是/dev/sdd
,它有 2 个分区:/dev/sdd1
和/dev/sdd2
解决方案:
sudo apt-get 安装 fuseext2 sudo fuseext2 -o rw+,sync_read /dev/sdd2 /mnt
或者,您可以不执行最后一条命令,而是编写以下命令mount
:
sudo mount -t fuse-ext2 -o rw+,sync_read /dev/sdd2 /mnt