我最近从一台计算机上卸载了一个 4TB 硬盘,以便直接从另一台计算机访问文件。卸载过程似乎没有问题。将硬盘连接到另一台计算机时,硬盘在“/dev”中被识别为 sdb,但没有出现分区“sdb1”,因此我无法挂载它。如果我运行
fdisk -l /dev/sdb
WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.
Disk /dev/sdb: 4000.8 GB, 4000787030016 bytes
255 heads, 63 sectors/track, 486401 cylinders, total 7814037168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdb1 1 4294967295 2147483647+ ee GPT
sdb1 分区出现了。由于这是一个 4TB 分区,我还运行了以下命令
parted /dev/sdb
GNU Parted 2.3
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ASMT 2105 (scsi)
Disk /dev/sdb: 4001GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Number Start End Size File system Name Flags
然后输入“print”。在这种情况下,sdb1 分区不会显示出来。
为什么这里的信息不匹配?这是否意味着分区已被删除?有没有办法恢复这个分区并挂载它?
提前非常感谢
答案1
运行命令partprobe
让计算机重新扫描磁盘分区。
答案2
我不知道这是否仍然是一个最新的问题,但我的一个硬盘也遇到了同样的问题。我使用它testdisk
并告诉它分析磁盘。它找到了丢失的分区并更新了磁盘分区表。然后我运行命令partprobe
,分区在 /dev/ 中完全正常地显示出来。
答案3
这可能不是您的问题,但我遇到了类似症状的问题,这是由于驱动器上存在 RAID 超级块引起的。
现在,我当然想清除驱动器上的所有内容,所以如果你不是这种情况,不建议这样做。但就mdadm --zero-superblock /dev/sdb
我的情况而言,这招对我有用。
答案4
虽然 fdisk(取决于版本)将尝试在 4TB 驱动器上创建分区,甚至将分区类型标记为 GPT,但 parted 无法识别该分区。
解决方案是删除使用 fdisk 创建的分区并使用 parted 完成整个操作:
parted /dev/sdb
mklabel gpt
unit TB
mkpart primary 0 3
print
quit
您可能需要运行“mkpart primary 0 3TB”而不是“mkpart primary 0 3”。
如果您在此之后没有看到 /dev/sdb1,请运行 partprobe 并再次查看。