Крах жёсткого диска

На жёстком диске появились «битые» сектора. Я это вижу вижу из некоторых приложений по работе с диском. Кто может подсказать, как проверить диск из-под Linux и сделать их «не читаемыми» для всех операционных систем?
К сведению скажу, что многие приложения просто отказываются проверять разделы диска, потому что они являются заблокированным системой (такие, как, занятые корневой системой «/», возможно так же «/home», «/var», «/tmp» и т.д.).
Как же провести проверку этих разделов, если они используются системой?

  • Внимание: данная процедура связана с риском потери данных на жёстком диске.

    Подойдёт загрузочная флешка Ubuntu Linux LTS. Если swap оказался автоматически смонтирован, поможет команда:

    sudo swapoff -a

    Отображение разделов HDD:

    sudo fdisk -l
    sudo fdisk -l
    Результат команды sudo fdisk -l

    Проверить диск на битые сектора и одновременно предотвратить их использование, добавив в индексный дескриптор, можно следующей командой:

    sudo e2fsck -vcck /dev/имя_раздела

    Используемые ключи
    -v: подробный (verbose) режим вывода команды;
    -c: использовать программу badblocks только для чтения, опция указана дважды для запуска неразрушающего теста чтения-записи;
    -k: в сочетании с опцией -c новые сбойные блоки, обнаруженные при запуске badblocks, будут добавлены в существующий список.

    Подробнее можно узнать в справочной информации командами:

    e2fsck

    или:

    man e2fsck
  • Если требуется только проверка диска на повреждённые сектора в режиме чтения:

    sudo badblocks -vs -o ~/badblocks.txt /dev/sda

    Можно указывать и отдельные разделы, например /dev/sda2

    Используемые ключи
    -v: подробный вывод информации о проверке диска;
    -s: позволяет отображать прогресс операции;
    -o: указать файл для записи результата проверки.

    Справка:

    man badblocks
  • Спасибо за рассказанный метод проверки диска! Я, правда, ещё не успел применить его на практике, но думаю, что всё получится.
    У меня ещё есть такой вопрос, чтобы не попасть в плохую ситуацию: а для файловых систем в формате NTFS и FAT32 его можно применить? Дело в том, что у меня есть раздел с Windows 7, но она не грузится как раз из-за того, что системные файлы в ней попали именно на «битые сектора».
    Или для проверки нужно использовать другую команду? А может и какой-нибудь «реанимационный» диск с поддержкой FAT32 и NTFS?

  • Если честно, в моём случае есть два решения. Но, сначала хочу рассказать, почему так получилось.
    Тут сложились сразу несколько факторов.
    Во-первых: я хотел, чтобы у меня на машине были две ОС — Windows и Linux (последняя в виде XUbuntu — лёгкая и непринуждённая система).
    Во-вторых: я довольно часто меняю структуру жёсткого диска (устанавливаю для проверки вновь вышедшие операционные системы). Но, что-то у меня должно быть постоянным (документы, музыка, фото, видео). Поэтому часть жёсткого диска я оставляю под них, чтобы эти разделы были неизменны. Это во второй части HDD. Эти разделы я оставляю в формате NTFS, чтобы они были доступны и из Windows, и из Linux.
    Но тут вмешалась описанная  выше проблема — жёсткий диск из-за долгого использования стал «сыпаться».
    Проверить файловую систему EXT4 на «битые» сектора можно способом выше. А NTFS или FAT32?

    Пока что я нашёл чуть мудрёный способ.

    Опять таки надо загружаться с Live CD. Но не Linux, а Windows. Когда начнет происходить загрузка с установочного диска (или флешки) Windows, в любом из промежуточных окон нажимаем Shift + F10 (но не доводя непосредственно до установки). Откроется командная строка. В ней вводим следующее: chkdsk C: /F /V /R /X и «Enter». Начнётся проверка файловой системы на первом разделе, который видит ОС Windows (как правило, это системный раздел для неё).
    Если Вы знаете, что у Вас на диске более одного раздела в FAT32 или NTFS, то выполняем ту же самую команду, только заменяя «C:» на «D:», «E:» и т,д. Тем самым можно проверить разделы диска и на ошибки, и на «битые» сектора во всех оставшихся ФС.

    Ну или использовать один из дисков «Реанимации».
    Да, и Live CD и Reanimator можно записать так же и на флешку, если у Вас отсутствует привод CD/DVD. Будут вопросы, как записать из Linux? — Расскажу более подробно, спрашивайте!

  • Я тоже считаю, что чинить файловую систему надёжнее всего родной операционной системой (Windows для NTFS). И желательно иметь флешку с той же версией ОС, что уже установлена. А насчёт записи флешки мне понравилась программа из твоего поста на сайте: Balena Etcher, пользуюсь регулярно для образов Linux.

  • Да, Balena простое и удобное приложение. Причём, как ты говоришь — кросс-платформенное ) — работает как в Linux, так и в Windows!
    И совершенно согласен, я, как-то, упустил этот момент! Перед тем, как «чинить» Windows, лучше бы обзавестись загрузочной флешкой для своей версии Linux (Ubuntu, Debian, Linux Mint, и проч.)
    Хотя, если загрузка Windows пройдёт удачно, то той же Balen’ой можно будет записать из «своего» образа Операционной Системы (ОС) флешку (а уж CD-диск и подавно, если присутствует дисковод). Но лучше не рисковать, и обзавестись оными заранее.
    Да, и ещё… По-поводу команды «chkdsk C: /F /V /R /X» в Windows, и перечислении других дисков («D:», «E:» и т.д.), поясню: Wind’a «обзывает» все видимые ей диски (они же разделы и наоборот) начиная с латинской буквы «C:» и до, грубо говоря, буквы «Ё:» (шуткую, до буквы «Z:»). А «видит» она только Файловые Системы (ФС) в формате NTFS или FAT32 («FAT», «FAT16» — но этого никто уже не встретит, Windows Me и более ранние вряд ли у кого есть…)
    Так вот… Если при перечислении очередного диска Винд’а пошлёт Вас на ту самую букву «Ё:» (не помню точно, как она ругнётся, типа: «не могу понять Your запрос…») — значит все Ваши разделы перечислены и закончились. Проверка окончена, можно возвращаться в Linux, или переустанавливать Windows в соответствии с другим топиком форума: «По мотивам grub rescue».
    Такие вот пироги с котятами )

Добавить ответ

6 ответов