以下是 fdisk 命令的输出:
sudo fdisk -l
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders, total 976773168 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: 0x00043809
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 973105151 486551552 83 Linux
/dev/sda2 973107198 976771071 1831937 5 Extended
/dev/sda5 973107200 976771071 1831936 82 Linux swap / Solaris
Disk /dev/sdb: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 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: 0x5387f1b4
Device Boot Start End Blocks Id System
/dev/sdb1 2048 625140399 312569176 7 HPFS/NTFS/exFAT
从我对 Ubuntu 的有限了解来看,我猜我的操作系统检测到了我的外部设备,但无法安装。背景故事:我试图使用 AcetoneISO 使用外部设备上的 ISO 文件,然后一切都冻结了。我强制关机/重启,然后当我重启时,我的硬盘无法安装。它甚至没有给我一个错误消息,它就是不起作用。怎么了?帮忙?
编辑:@Alaa:我正要添加此信息。我刚刚尝试手动安装我的驱动器,这是输出:
$ sudo mkdir /media/TOSHIBA_EXT
$ sudo mount -t ntfs-3g /dev/sdb1 /media/TOSHIBA_EXT
ntfs_attr_pread_i: ntfs_pread failed: Input/output error
Failed to read $MFTMirr: Input/output error
Failed to mount '/dev/sdb1': Input/output error
NTFS is either inconsistent, or there is a hardware fault, or it's a
SoftRAID/FakeRAID hardware. In the first case run chkdsk /f on Windows
then reboot into Windows twice. The usage of the /f parameter is very
important! If the device is a SoftRAID/FakeRAID then first activate
it and mount a different device under the /dev/mapper/ directory, (e.g.
/dev/mapper/nvidia_eahaabcc1). Please see the 'dmraid' documentation
for more details.
编辑 2:这是尝试运行 NTFSFix 后的结果
$ sudo ntfsfix /dev/sdb1
Mounting volume... ntfs_attr_pread_i: ntfs_pread failed: Input/output error
Failed to read $MFTMirr: Input/output error
FAILED
Attempting to correct errors...
Processing $MFT and $MFTMirr...
Reading $MFT... OK
Reading $MFTMirr... ntfs_attr_pread_i: ntfs_pread failed: Input/output error
FAILED
Failed to read $MFTMirr: Input/output error
假设:当我强制重新启动驱动器时,驱动器是否短路了?我知道这样做不好——但我以前也这样做过,无论是在基于 Windows 的系统上,还是自从我开始使用 Ubuntu 以来——这是第一次出错。作为对所有回答者的提示,我的家人很快就要出去吃饭了,所以我接下来一个小时左右会不在家。我猜我的下一个合乎逻辑的步骤是在基于 Windows 的环境中运行 chkdsk,所以我会在回家后尝试。根据结果,我下一步该怎么做?
编辑 3:仍在等待进入 Windows 系统的机会(我爸爸的笔记本电脑,他正忙着使用它)。我发现了命令 fsck——它显然大致相当于 Linux 环境中的 chkdsk。这是我得到的结果:
$ sudo fsck /dev/sdb1
fsck from util-linux 2.20.1
e2fsck 1.42.5 (29-Jul-2012)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdb1
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
我使用 e2fsck 和 -b 8193 修饰符重复了 fsck,得到了相同的结果。这些信息对任何人都有帮助吗?
编辑:我无法在 Windows 环境中使用 chkdsk 来恢复磁盘。我对它做了一些事情——我不确定是什么。但幸运的是,数据丢失不会造成生命危险。所以,我将继续自己调查这个问题,如果我找到解决方案,我会重新发布这个问题和所有相关信息。感谢大家的帮助,祝你晚安!:-)
答案1
fsck 只是大致相当于 chkdisk。据我所知,它对 ntfs 没什么用(因此叫 ntfsfix)。对于 NTFS 磁盘,它是总是最好从 Windows 执行此操作。如果磁盘在 Windows 上出现一些无法恢复的错误,我将指导您如何使用 testdisk 来 a) 修复 fs b) 如果其他方法都失败,则恢复数据
好的,要恢复数据,请下载 testdisk 并使用它:
http://yz.mit.edu/wp/recovering-files-using-testdisk/
(有类似过程的屏幕截图 - 虽然不是您想要的,但仍然有帮助:http://www.cgsecurity.org/wiki/Undelete_files_from_NTFS_with_TestDisk)
后您已完成尝试恢复使用驱动器本身(而不是数据),您可以尝试破坏性的坏块测试 - 这将擦除驱动器并映射出任何坏扇区。
答案2
我也遇到了同样的问题,直到我记得这个外部硬盘已被加密。
我知道的唯一解决方案是在 Windows 7 或 8、专业版或企业版中停用 bitlocker(家庭版无法读取加密硬盘)。
我希望您进行的所有检查都没有损坏硬盘中的数据。