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

Теперь на жестком диске есть поврежденные файлы, которые нельзя удалить ни с помощью rm ни с помощью файлового менеджера. Сообщение об ошибке: « Файл или каталог не найден ». Повторное копирование оставшихся файлов также приведет к той же ошибке.

  • Операционная система: Lubuntu 18.04 LTS
  • Файловая система внешнего жесткого диска: NTFS

Как можно удалить эти файлы?

РЕДАКТИРОВАТЬ: У меня есть только инструменты Linux (то есть, нет chkdsk). Я пробовал ntfsfix -bd /dev/sdc1 качестве суперпользователя, но это не решило мою проблему. Сейчас я запускаю testdisk , который занимает значительное количество времени, поэтому я не буду знать результаты до завтра.

1 ответ1

0

Тот факт, что ваша ОС зависла во время записи, может указывать на неисправность оборудования. Первым делом стоит узнать, исправен ли диск.

Диск внешний, возможно дело в виновнике. Разумно подключить диск напрямую. Вы не сообщили нам подробности, но это, вероятно, диск SATA, и вы подключаете корпус через USB. Если вы хотите подключить диск напрямую через SATA, помните об этой возможной проблеме: почему мой USB-накопитель показывает поврежденные данные при подключении как внутренний SATA-накопитель?

Для диагностики диска:

  1. Проверьте состояние SMART (smartctl -a /dev/sdX) и интерпретируйте его.
  2. Запустите SMART-тесты (smartctl -t short /dev/sdX , … -t long …); проверьте статус еще раз, чтобы увидеть результаты.
  3. При желании используйте badblocks .
  4. Или используйте (Windows) chkdsk /r . Я думаю, вам все равно понадобится chkdsk , так что вы можете начать с него.

В зависимости от поведения диска и его результатов, в какой-то момент вы можете сделать резервную копию своих файлов с него. Если вы сомневаетесь, сделайте это как можно раньше.

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

Если диск исправен, вы можете восстановить файловую систему на диске. К сожалению, насколько я знаю, в Linux нет инструмента для исправления поврежденной NTFS. Скорее всего, вам понадобится chkdsk из Windows.

Если диск не исправен, вы можете попытаться исправить там файловую систему (с помощью chkdsk). В зависимости от того, насколько серьезна ситуация, вы можете или не можете добиться успеха, и вы можете или не можете использовать диск больше.

Если по какой-либо причине вы не можете или не хотите больше использовать диск, и лучшее, что осталось, это образ из ddrescue тогда вы должны исправить файловую систему в образе; опять с chkdsk . В Windows возможно работать с файлом изображения ; или запишите образ на другое физическое устройство (если оно еще не было записано на устройство с помощью ddrescue ), чтобы chkdsk работал без дополнительных хитростей.

Я думаю, что есть небольшой шанс, что вы сможете исправить свою файловую систему NTFS в Linux (то есть без chkdsk). Обходной путь - скопировать все файлы в другом месте и восстановить файловую систему с нуля на том же устройстве (если устройство исправно).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .