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

61

MY NTFS Partition немного испортилась (это реликвия с тех пор, как я установил Windows).

Я помещаю отладочный вывод 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

[email protected]:~$ 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, в котором говорится:

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

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

[email protected]:~$ 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 отключен от Hiren's BootCD, но кажется, что проблема суперблока все еще остается.

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

    
задан Nemo 08.06.2011 в 21:18
источник

9 ответов

76

Установите 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
     

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

     

[email protected] Linux NTFS   Домашняя страница: Ссылка

Для нового 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
    
ответ дан RolandiXor 08.06.2011 в 21:56
источник
11

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

  

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

[email protected]:~$ sudo fsck /dev/sda

...

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

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

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

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

Правильная команда:

sudo fsck /dev/sda1

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

    
ответ дан Who cares 09.05.2012 в 19:18
9

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

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

sudo apt-get install testdisk

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

sudo testdisk

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

Надеюсь, что это поможет кому угодно.

    
ответ дан Diego Jancic 17.12.2012 в 19:35
6

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

    
ответ дан psusi 09.06.2011 в 03:36
4

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

  1. резервное копирование всех данных на диске ASAP
  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 также указывает на необходимость замены.)

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

    
ответ дан RichVel 16.10.2011 в 08:02
4

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

sudo ntfsfix /dev/sdXY

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

    
ответ дан user335969 09.10.2014 в 14:12
1

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

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

    
ответ дан eug 01.01.2012 в 06:05
1

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

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

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

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

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

    
ответ дан jmiserez 09.10.2014 в 15:06
0

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

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

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

    sudo apt-get update
    sudo apt-get install ntfs-3g
    
ответ дан DeGe 09.05.2012 в 19:32