Исправить поврежденный раздел NTFS без Windows - proUbuntu
79 голосов
от
редактировать

Мой NTFS-раздел как-то испортился (это пережиток тех дней, когда у меня была установлена ​​Windows).

GParted screenshot showing different partitions

Я помещаю выходные данные отладки fdisk и blkid здесь .

В то же время, любая ОС не может смонтировать мой корневой раздел, который находится рядом с моим разделом NTFS. Я не уверен, имеет ли это какое-либо отношение к этому, все же. Я получаю следующую ошибку при попытке смонтировать мой корневой раздел (sda5)

mount: wrong fs type, bad option, bad superblock on /dev/sda5,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

ubuntu@ubuntu:~$ dmesg | tail
[ 1019.726530] Descriptor sense data with sense descriptors (in hex):
[ 1019.726533]         72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00 
[ 1019.726551]         1a 3e ed 92 
[ 1019.726558] sd 0:0:0:0: [sda]  Add. Sense: Unrecovered read error - auto reallocate failed
[ 1019.726568] sd 0:0:0:0: [sda] CDB: Read(10): 28 00 1a 3e ed 40 00 01 00 00
[ 1019.726584] end_request: I/O error, dev sda, sector 440331666
[ 1019.726602] JBD: Failed to read block at offset 462
[ 1019.726609] ata1: EH complete
[ 1019.726612] JBD: recovery failed
[ 1019.726617] EXT4-fs (sda5): error loading journal

Когда я открываю gparted (используя live CD), рядом с диском NTFS появляется восклицательный знак, в котором указано GParted Screenshot showing error

Есть ли способ запустить chkdsk без использования windows?

Моя попытка запустить fsck приводит к следующему:

ubuntu@ubuntu:~$ sudo fsck /dev/sda
fsck from util-linux-ng 2.17.2
e2fsck 1.41.14 (22-Dec-2010)
fsck.ext2: Superblock invalid, trying backup blocks...
fsck.ext2: Bad magic number in super-block while trying to open /dev/sda

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>

Обновление: Мне удалось исправить раздел NTFS, запускающий chkdsk, с BootCD от Hiren, но, похоже, проблема с суперблоком все еще остается.

Обновление 2: Исправлена ​​проблема с суперблоком при использовании e2fsck -c /dev/sda5

Ответы [ 11 ]

101 голосов
от
редактировать

Установить ntfs-3g с sudo apt-get install ntfs-3g. Затем выполните команду ntfsfix в разделе NTFS.

Например:

ntfsfix /dev/hda6

ntfsfix v2.0.0 (libntfs 10: 0: 0)

Использование: ntfsfix [options] device

Attempt to fix an NTFS partition.

-h, --help             Display this help
-V, --version          Display version information

Адрес электронной почты разработчиков:

linux-ntfs-dev@lists.sf.net Linux NTFS домашняя страница: http://www.linux -ntfs.org


Для более новых Ubuntus Вы можете использовать опции -b и -d вместе. -b пытается исправить плохие кластеры и -d исправить грязные состояния. Таким образом, команда может быть

sudo ntfsfix -b -d /dev/sda6

--help показывает их

ntfsfix v2015.3.14AR.1 (libntfs-3g)

Usage: ntfsfix [options] device
    Attempt to fix an NTFS partition.

    -b, --clear-bad-sectors Clear the bad sector list
    -d, --clear-dirty       Clear the volume dirty flag
    -h, --help              Display this help
    -n, --no-action         Do not write anything
    -V, --version           Display version information
14 голосов
от
редактировать

Я только что исправил свой USB-накопитель, используя "testdisk", утилиту командной строки Linux (но дружественную) Мой диск даже не монтировался в Windows, и Windows 8 обнаружила как 6 разделов (когда диск был только один).

Чтобы использовать утилиту, установите ее:

sudo apt-get install testdisk

Затем запустите:

sudo testdisk

и следуйте инструкциям. Вы должны найти разделы, а затем записать изменения.

Надеюсь, это кому-нибудь поможет.

11 голосов
от
редактировать

Просто чтобы убрать некоторые из ваших очков.

Моя попытка запустить fsck приводит к следующему:

ubuntu@ubuntu:~$ sudo fsck /dev/sda

...

fsck.ext2: Bad magic number in super-block while trying to open /dev/sda

Это неудивительно, потому что вы пытаетесь скопировать диск, а не его раздел. Fsck пытается распознать тип FS. Поскольку вы задали ему необработанную поверхность диска, он не может распознать и использует тип по умолчанию - ext, вызывая fsck.ext.

fsck.ext не находит подписи FS в местоположении и пытается найти суперблоки. В конечном итоге это не удается, потому что его диск только с типом раздела NTFS.

Вот почему у вас есть эта ошибка.

Правильная команда будет:

sudo fsck /dev/sda1

Это будет ПЕРВЫЙ раздел первого жесткого диска sata, а не самого первого диска sata.

5 голосов
от
редактировать

Ваш диск - тост. Проверьте диагностику SMART в утилите диска для подтверждения; в нем должно быть сказано, что у вас тонна поврежденных секторов, и вам необходимо заменить диск.

5 голосов
от
редактировать

Я согласен с @psusi: диск нуждается в замене, см. Мой комментарий под принятым ответом. Выполнение ntfsfix совсем не поможет, а просто откладывает существенное действие:

  1. резервное копирование всех данных на диск как можно скорее
  2. замена диска на новый

Нет необходимости проверять SMART-диагностику - они все равно фиксируют только процент ошибок. Красные флаги - две строки:

[ 1019.726558] sd 0:0:0:0: [sda]  Add. Sense: **Unrecovered read error** - auto reallocate failed
[ 1019.726602] JBD: **Failed to read block** at offset 462

Как только диск начинает выдавать неисправимые ошибки чтения (URE), его следует немедленно заменить и использовать только для восстановления данных. (Чрезмерный уровень не-URE также указывает на необходимость замены.)

Диски следует рассматривать как расходные материалы, которые необходимо заменять каждые несколько лет, поэтому крайне важно иметь действительно хорошие резервные копии (автоматические, ежедневные, полные и, по крайней мере, на внешний диск).

4 голосов
от
редактировать

В Ubuntu 14.04 Просто попробуйте это

sudo ntfsfix /dev/sdXY

Где XY - ваш раздел. (/dev/sda2 в вашем случае)

1 голос
от
редактировать

Как сказали другие ответы, в данном случае это, вероятно, плохой диск ..

Но в интересах других, кто сталкивается с фактическим повреждением NTFS - к сожалению, инструмент ntfsfix очень ограничен по сравнению с Microsoft chkdsk. Попробуйте запустить установку Windows - желательно с самой новой версией Windows, поскольку Microsoft, по-видимому, постоянно совершенствует chkdsk (надеюсь ...). Более новые версии Windows часто доступны бесплатно в качестве пробных версий. Если проблема связана с USB-диском, вы можете попробовать установить Windows на что-то вроде VirtualBox и предоставить виртуальную машину USB-устройству.

1 голос
от
редактировать

К сожалению, бесплатные инструменты, доступные в Linux, очень ограничены в отношении исправления разделов NTFS.

Скорее всего, вы все еще можете восстановить свои данные с помощью вторичного MFT, хранящегося в конце диска. Обычно он не используется, но он должен содержать актуальную версию структуры каталогов. Есть большая вероятность того, что ошибки диска не повлияли.

В прошлом я использовал продукт Runtime Software (коммерческий, 79 $) GetDataBack NTFS с большим успехом для этого. Это один из немногих инструментов NTFS (единственный?), Который работает в WINE и как Linux LiveCD , и бесплатной демонстрационной версии должно быть достаточно, чтобы увидеть, сохраняются ли ваши данные , Если это так, ваши данные могут стоить покупки инструмента.

LiveCD работает под управлением Knoppix Linux и имеет все предустановленные инструменты. Обратите внимание, что вам по-прежнему нужен лицензионный ключ для фактического использования инструментов, но этого должно быть достаточно, чтобы проверить, работает ли он на вашем компьютере.

Отказ от ответственности: Я не имею никакого отношения к программному обеспечению Runtime, за исключением того, что купил их продукт несколько лет назад.

0 голосов
от
редактировать

Этот ответ, вероятно, будет работать только для 10.04 (lucid) и более поздних версий Ubuntu!

Попробуйте sudo ntfsfix -b /dev/sda2.

  • Вам необходимо установить ntfs-3g Install ntfsprogs. Если у вас его нет, вы можете установить его в Центре программного обеспечения, щелкнув по этой ссылке или в Терминале ( Ctrl + Alt + T ) запустив эти команды:

    sudo apt-get update
    sudo apt-get install ntfs-3g
    
0 голосов
от
редактировать

У меня была такая же проблема на 3 ТБ NTFS USB. Большая драма, как вы можете себе представить.

Сначала я попытался исправить это на Windows-коробке моей жены. Нет радости.

sudo ntfsfix / dev / sdcx очень быстро исправил это.

Ура! Снова в деле. Действительно должен получить новый диск и быстро переформатировать его в надлежащую, взрослую файловую систему.

...