Mac移动硬盘不正确卸载造成不识别解决方法

第一步先查看硬盘的信息使用如下命令行 diskutil list

diskutil list

输出结果如下,显示本地的硬盘和外接硬盘的数据信息

edzdeiMac:xcschemes edz$ sudo diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *480.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         479.9 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +479.9 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume 未命名                  222.0 GB   disk1s1
   2:                APFS Volume Preboot                 44.7 MB    disk1s2
   3:                APFS Volume Recovery                509.7 MB   disk1s3
   4:                APFS Volume VM                      9.7 GB     disk1s4

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        +498.9 MB   disk2
   1:                  Apple_HFS Command Line Develop... 498.8 MB   disk2s1

/dev/disk3 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk3
   1:       Microsoft Basic Data 新加卷                  500.1 GB   disk3s1
   2:       Microsoft Basic Data 新加卷                  500.1 GB   disk3s2

查看硬盘信息截图

发现/dev/disk3是我的移动硬盘(由于我1T的硬盘做了分区,所以显示的是2个子硬盘disk3s1disk3s2),然后使用挂载命令直接挂载就行如下

1.执行sudo fsck_hfs -fy /dev/disk3s1 命令
2.执行sudo diskutil mount /dev/disk3s1命令

成功~ done

edzdeiMac:xcschemes edz$ sudo  fsck_hfs -fy /dev/disk3s1
** /dev/rdisk3s1 (NO WRITE)
Can't open /dev/rdisk3s1: Resource busy
edzdeiMac:xcschemes edz$ sudo  fsck_hfs -fy /dev/disk3s2
** /dev/rdisk3s2
   Executing fsck_hfs (version hfs-407.200.4).
volumeType is 0
0000:  eb76 9045 5846 4154 2020 2000 0000 0000       |.v.EXFAT........|
0010:  0000 0000 0000 0000 0000 0000 0000 0000       |................|
. . .
0040:  00b0 373a 0000 0000 00a8 373a 0000 0000       |..7.......7.....|
0050:  0008 0000 0075 0000 0080 0000 2837 3a00       |.....u.......7..|
0060:  0700 0000 2e02 b3c4 0001 0200 0908 0180       |................|
0070:  0100 0000 0000 0000 33c9 8ed1 bcf0 7b8e       |........3.......|
0080:  d9a0 fb7d b47d 8bf0 ac98 4074 0c48 740e       |...........t.Ht.|
0090:  b40e bb07 00cd 10eb efa0 fd7d ebe6 cd16       |................|
00a0:  cd19 0000 0000 0000 0000 0000 0000 0000       |................|
00b0:  0000 0000 0000 0000 0000 0000 0000 0000       |................|
. . .
0100:  0d0a 5265 6d6f 7665 2064 6973 6b73 206f       |..Remove.disks.o|
0110:  7220 6f74 6865 7220 6d65 6469 612e ff0d       |r.other.media...|
0120:  0a44 6973 6b20 6572 726f 72ff 0d0a 5072       |.Disk.error...Pr|
0130:  6573 7320 616e 7920 6b65 7920 746f 2072       |ess.any.key.to.r|
0140:  6573 7461 7274 0d0a 0000 0000 0000 0000       |estart..........|
0150:  0000 0000 0000 0000 0000 0000 0000 0000       |................|
. . .
01b0:  0000 0000 0000 0000 0000 0000 0000 ffff       |................|
01c0:  ffff ffff ffff ffff ffff ffff ffff ffff       |................|
01d0:  ffff ffff ffff ffff ffff ffff ffff ffff       |................|
01e0:  ffff ffff ffff ffff ffff ffff ffff ffff       |................|
01f0:  ffff ffff ffff ffff ffff ff00 1f2c 55aa       |..............U.|
edzdeiMac:xcschemes edz$ 

diskutil mount /dev/disk2s2

发现超时:
Volume on disk2 timed out waiting to mount

搜索后发现是在挂载上一个存在问题的盘后,Mac 就会在后台自动运行 fsck_hfs,导致 diskutil 挂载超时。执行 ps aux | grep fsck 可以发现:

root             70983   1.0  0.1  4306296   5508   ??  Us   10:53下午   
0:02.74 /System/Library/Filesystems/exfat.fs/Contents/Resources/fsck_exfat -y -x /dev/rdisk2s2

当然你可以将该进程杀掉(sudo pkill -f fsck),然后再挂载(diskutil mount /dev/disk2s2),此时会挂载成功,但是会存在数据不一致现象。所以仍是得执行上述磁盘修复命令(如果是 apfs 文件系统,需要用 fsck_apfs):

fsck_exfat -y -x /dev/disk2s2 

然后等待其结束(具体多久那就不一定了,我的都是在几分钟的数量级),然后再:

diskutil mount /dev/disk2s2

具体这两个命令其他用法可以通过 man diskutil 和 man fsck_hfs 来查看。

你可能感兴趣的:(Mac移动硬盘不正确卸载造成不识别解决方法)