答案1
对于第一个磁盘(3TB,但您只能使用其中的 2TB),这是 MBR(主引导记录)磁盘的限制。就像 FAT32 只能存储最大 4GB 的文件一样,MBR 在其分区表中最多只能处理 2^32-1 个扇区,每个扇区为 512 字节(40 亿 * 0.5 千 = 2 万亿 = 2TB)。您需要将磁盘转换为 GPT(GUID 分区表)磁盘才能使用剩余空间。它应该是那样的,但也许 Linux 将其转换回了 MBR;我最近在 GNU Parted 中发现了一些与 GPT 磁盘相关的错误。Windows 上的磁盘管理可以将 MBR 磁盘转换为 GPT,但您可能需要先删除所有分区(这意味着您将丢失磁盘上未先备份的所有数据)。
对于另一个磁盘,我真的不知道那里发生了什么。我会检查 BIOS/UEFI 是否可以看到该磁盘,并将其报告为健康;如果可以,我会检查另一台计算机是否可以访问它。您也可以尝试检查 Windows 命令行工具diskpart
以查看它的内容 -list disk
然后选择并检查磁盘的详细信息 - 但我不太确定那里的问题是什么。
答案2
首先,没有空间的两个设备是某种读卡器,很可能安装在机箱前面板上并通过 USB 内部连接,不要介意它们。
现在来看看你的硬盘:
正如@CBHacking 的回答中提到的,你需要将磁盘从 MBR 转换为 GPT。这可以做到没有丢失数据。尽管该过程相当安全,但您应该(一如既往)获取数据备份。
转换时不丢失数据是可能的,因为:
- MBR效率不够高
- 使用完全相同的参数重新创建分区将导致文件系统完全重新出现
当 MBR 写入硬盘时,其大小很可能为 2048s,这是目前 MBR 的标准大小,或者当您使用非常非常旧的工具格式化驱动器时,其大小为 63s。但是,由于 GPT 仅使用扇区 1 到 33,因此在两种情况下都有足够的空间容纳 GPT。
我知道的最简单的方法(之前使用过)如下:
启动带有 gdisk 的 Linux Live CD(芬尼克斯例如)并识别您的磁盘。您可以执行以下操作:
$ ls /dev/disk/by-id/
这给了我一个例子
ata-Samsung_SSD_850_PRO_1TB_[序列号]
返回。用这种方法识别您的硬盘。现在您必须启动 gdisk 并将您的硬盘指定为参数。例如:
如果你已经是 root 用户,则可能需要放弃 sudo
$ sudo gdisk /dev/disk/by-id/ata-Samsung_SSD_850_PRO_1TB_[序列号]
放下任何-第1部分,-第2部分ETC。(您可以使用 TAB 键自动完成)
此后你应该看到类似这样的内容:
GPT fdisk (gdisk) 版本 0.8.5
分区表扫描:
MBR:仅 MBR
BSD:不存在
APM:不存在
GPT:不存在********************************************************************
发现无效的 GPT 和有效的 MBR;将 MBR 转换为 GPT 格式。
此操作可能具有破坏性!如果您不想将 MBR 分区转换为 GPT 格式,请输入“q”退出!
*******************************************************************
不用担心,目前还没有任何东西写入你的硬盘。你现在应该通过按n。使用默认分区号并按回车键。现在你必须输入第一个扇区,即三十四(因为 GTP 本身以 33 结尾)并再次按 Enter。现在需要最后一个扇区,即2047(因为你的第一个数据分区从 2048 开始),再次按 Enter。现在 gdisk 想知道分区的类型,它是具有十六进制代码的 Bios 启动分区ef02您必须输入并再次按回车键。
当您看到
将分区类型更改为“BIOS 启动分区”
输入 s 并再次按 Enter 键对分区 ID 进行排序。
如果您认为操作有误,可以按 q 并按 Enter 键,而无需将任何内容写入硬盘并重新开始。如果您认为一切正常,可以按 w 并按 Enter 键,这样就可以退出程序,如下所示:
最终检查完成。即将写入 GPT 数据。这将覆盖
现有分区!!是否要继续?(Y/N): y 确定;正在将新的 GUID 分区表 (GPT) 写入 。
警告:内核仍在使用旧分区表。
下次重新启动时将使用新表。
操作已成功完成。
您现在可以重新启动,并且应该能够在 Windows 中根据需要重新调整分区大小(尽管您也可以使用 gdisk 来执行此操作)。
你应该可以出发了。玩得开心!