Как мне прочитать раздел HPFS/NTFS (загрузочный) в Ubuntu (15.10)?
Я хотел бы прочитать содержимое старого жесткого диска, который отформатирован как раздел HPFS/NTFS (загрузочный); Я не уверен, что загрузочная часть имеет значение. Я попытался смонтировать диск, но не могу. Как я могу прочитать этот диск?
Когда используешь sudo fdisk -l
диск отображается как:
:~$ sudo fdisk -l
Device Boot Start End Sectors Size Id Type
/dev/sdf1 * 63 488392064 488392002 232.9G 7 HPFS/NTFS/exFAT
Попытка использования mount
:
:~$ sudo mount /dev/sdf1 /mnt/ntfs1
mount: wrong fs type, bad option, bad superblock on /dev/sdf1,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
Попытка использования ntfs-3g
;
:~$ sudo ntfs-3g /dev/sdf1 /mnt/ntfs1
NTFS signature is missing.
Failed to mount '/dev/sdf1': Invalid argument
The device '/dev/sdf1' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
Редактировать:
Попытка использования mount -t exfat
:
:~$ sudo mount -t exfat /dev/sdf1 /mnt/ntfs1
FUSE exfat 1.1.0
ERROR: exFAT file system is not found.
fsck
доклад:
:~$ sudo fsck -f /dev/sdf1
fsck from util-linux 2.26.2
e2fsck 1.42.12 (29-Aug-2014)
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/sdf1
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
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>
or
e2fsck -b 32768 <device>
2 ответа
Для начала НИКОГДА не бегать fsck
на раздел, когда вы не знаете, что это правильный путь. Проблема в том, что fsck
это инструмент для ремонта, и поэтому он может записывать данные на диск. В вашем случае вы применили его еще до того, как узнали, какая файловая система используется на диске. Это чрезвычайно опасно, поскольку инструмент для ремонта мог запутаться и усугубить ситуацию, а не улучшить ее. Такой исход маловероятен, но возможен. Вы, вероятно, не причинили вреда, но есть небольшая вероятность, что вы нанесли больший ущерб диску, используя fsck
в теме.
Чтобы узнать, какая файловая система находится на диске, используйте blkid
, как в:
$ sudo blkid /dev/sdb3
/dev/sdb3: UUID="493344495F520D15" TYPE="ntfs"
Конечно, ваш вывод, вероятно, будет другим, но в этом примере показан том NTFS. Если вы не получите никакого вывода, это означает, что blkid
не удалось определить файловую систему, что, в свою очередь, означает, что она очень сильно повреждена. Если есть выход, но TYPE=
показывает что-то другое, чем ntfs
, это означает, что это не том NTFS. Возможно, результат будет очевиден, и вы можете продолжить с этого момента, или, возможно, вам нужно будет отправить подробности для получения дополнительной информации.
С известной файловой системой вы можете использовать специфичные для файловой системы инструменты монтирования и, возможно, инструменты восстановления. Вы уже пробовали монтировать с помощью вероятных инструментов (NTFS и exFAT). Код типа для раздела (0x07) когда-то обычно использовался для HPFS, но это было бы вероятно, только если бы диск использовался с OS/2, и вы говорите, что он использовался с Windows 7.
Перед использованием потенциально разрушительных инструментов восстановления целесообразно сделать резервное копирование низкого уровня, например:
sudo dd if=/dev/sdf1 of=/path/to/lots/of/space/sdf1.img
Эта команда выполняет резервное копирование /dev/sdf1
в файл sdf1.img
в /path/to/lots/of/space/
, Убедитесь, что достаточно свободного места для всего раздела - около 233 ГБ в вашем случае. Создание этой резервной копии даст вам возможность восстановиться, если инструмент восстановления усугубит ситуацию, как это иногда случается.
Я догадываюсь, что диск использует NTFS, но он поврежден и / или не был правильно отключен. Если это так, вы должны сначала восстановить его с помощью инструментов Windows. Linux ntfsfix
утилита плохо названа; он выполняет только самые минимальные проверки, а затем помечает диск как требующий внимания в Windows. В Linux нет поддержки NTFS fsck
так что не стоит пытаться использовать fsck
на томе NTFS.
Также возможно, что происходит нечто более экзотическое. Например, диск мог использоваться в RAID-массиве, и в этом случае вы не сможете восстановить что-либо без других дисков из того же массива. (Особенности будут зависеть от типа используемого RAID и других деталей.)
В худшем случае вы можете использовать PhotoRec для восстановления отдельных файлов.
Еще один момент: в своих комментариях вы сказали, что запускали GParted на /dev/sdf1
, Это бесполезно - и даже потенциально опасно. /dev/sdf1
раздел, но GParted предназначен для использования на всем диске, то есть /dev/sdf
,
В моем случае, эта проблема была решена с помощью dislocker, поскольку у меня был жесткий диск с блокировкой Windows 10.