ru
язык
смартфоны SoC процессоры видеокарты игры
українська русский
Архив | Флешка → Если флешка не форматируется
Статья в последний раз корректировалась 2015.06.17 и могла потерять свою актуальность !!!

Что делать,
если флешка не форматируется

28.08.2012 г.

Если флешка вышла из строя и ее не удается отформатировать стандартным способом, не отчаивайтесь и не спешите ее выбрасывать. Скорее всего, вы сможете «реанимировать» эту флешку при помощи утилиты "DD". Эта утилита входит в состав операционной системы Linux. Но использовать ее можно также и на компьютерах с ОС Windows.

Предложенный в статье вариант восстановления флешки подразумевает создание на компьютере виртуальной машины и запуск на этой машине операционной системы Linux. С задачей справится любой "новичок". Но данные, находящиеся на флешке, будут безвозвратно потеряны.

Способ восстановления подходит не только для флешек, но и для носителей других типов.

Для создания виртуальной машины с Линуксом нам понадобится программа VirtualBox, а также образ диска Damn Small Linux.

Устанавливаем и запускаем программу VirtualBox. В окне программы жмем кнопку "создать". Запустится мастер создания виртуальной машины. Отвечаем на его вопросы, пока в списке не появится новая виртуальная машина. При этом, нужно дать следующие ответы:

• имя машины - можно выбрать любое (например, Linux 2.4.);

• операционная система - Linux 2.4.;

• версия операционной системы - Linux 2.4.;

• оперативная память - 128 MB (можно и меньше);

• жесткий диск - снимаем галочку и жмем "далее", затем подтверждаем создание машины без жесткого диска. Нам он не нужен, поскольку машину будем грузить из образа Linux.

После создания виртуальной машины выделяем ее в списке в окне программы VirtualBox и жмем кнопку "Свойства". Проходим в раздел "Носители". Щелкаем мышкой по изображению диска с названием "Пусто".

Затем в пункте "Атрибуты" опять жмем мышкой на изображение диска. Выбираем пункт "Выбрать образ оптического диска...", в проводнике выбираем образ дистрибутива Damn Small Linux, который нужно предварительно скачать по ссылке выше, жмем кнопку "открыть", затем кнопку "ОК".

Если все сделано правильно, превью виртуальной машины в окне VirtualBox будет примерно таким:

Восстановление флешки

Теперь виртуальную машину можно включить. В окне VirtualBox щелкаем по машине мышкой, жмем кнопку "Старт" и ждем загрузки. Как будет выглядеть окно виртуальной машины после старта см. на изображении ниже.

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

Во всем остальном виртуальная машина ведет себя как обычное окно Windows. Ее можно сворачивать и разворачивать, или вообще закрыть. В последнем случае машина выключится и ее нужно будет включать заново.

Восстановление флешки



Порядок восстановления флешки


Чтобы восстановить флешку, нужно вставить ее в USB-разъем компьютера. Затем в окне виртуальной машины, в разделе меню "Устройства", найти пункт "Устройства USB" и выбрать неработающую флешку. Возле нее должна появиться галочка, что свидетельствует о ее подключении к виртуальной машине (см. картинку).

Восстановление флешки

Затем двойным щелчком мышки открываем папку с названием Apps/, находящуюся на рабочем столе виртуальной машины. В ней таким же образом открываем файл с названием Root. Запустится Терминал, в котором нужно будет вводить перечисленные ниже команды.

Будьте внимательны. Каждый пробел и косая линия в командах имеют значение. Дальше по тексту команды будут выделены красным цветом.


Порядок действий:

1. Нужно убедиться в том, что виртуальная машина видит нашу флешку, а также узнать ее (флешки) название. Для этого после фразы [ramdisk/home/dsl]# вводим команду fdisk -l и жмем "Enter" (последний символ команды - английская L, не путать с единицей или буквой i). Появится примерно следующее:

Восстановление флешки

Это свидетельствует о том, что машина видит флешку как носитель с определенным объемом дискового пространства (на примере - 4004 MB) и его название в системе - /dev/sda.

2. На следующем этапе необходимо осуществить низкоуровневое форматирование флешки, во время которого все ее пространство будет забито нулевыми битами. Для этого используем утилиту "DD". Вводим команду dd if=/dev/zero of=/dev/sda bs=1M, жмем "Enter" и дожидаемся завершения форматирования.

Ждать придется достаточно долго. Все зависит от объема и других характеристик флешки, а также ее состояния. "Подопытная" флешка USB 2.0 размером 4 ГБ, которая использовалась при подготовке этой статьи для наглядности, форматировалась около часа.

Пока идет форматирование, окно виртуальной машины можно свернуть, и заниматься на компьютере другой работой.

Если возникло желание узнать состояние процесса, нужно на виртуальной машине, не закрывая терминал, в котором мы производили все вышеперечисленные действия, открыть еще одно окно терминала (в папке Apps/ открыть файл Root), ввести в нем команду killall -sigusr1 dd (в этой команде после sigusr стоит единица, не L) и нажать "Enter". Через некоторое время в первом терминале отобразится информация об уже забитом нулевыми битами пространстве (в мегабайтах).

Восстановление флешки

На скриншоте видно, что на момент проверки на флешке было обработано 950 MB пространства. Исходя из этого, можно оценивать скорость процесса и определить приблизительное время его завершения. Проверять можно сколько угодно раз.

Когда все пространство флешки будет отформатировано, Linux сообщит об этом в первом терминале надписью "dd: /dev/sda: No space left on device", после чего появится фраза [ramdisk/home/dsl]#.

3. Дальше на флешке нужно создать раздел.

После фразы [ramdisk/home/dsl]# вводим команду fdisk /dev/sda, жмем "Enter".

Linux сообщит, что на диске нет таблицы разделов или каких-либо других данных (ведь все пространство забито пустыми битами) и предложит помощь в дальнейшем решении проблемы. После "Command (m for help)" вводим n и снова жмем "Ввод".

На следующий вопрос вводим p и жмем "Ентер".

Дальше на вопросы компьютера отвечаем так:

- Partition number (1-4) - вводим 1 (единица), жмем "Ввод";

- First cylinder (1 - 1017, default - 1) - вводим то, что после default (обычно это 1 (единица) и нажимаем "Ентер";

- Last cylinder ... - опять вводим то, что после default, в моем случае 1017 (в вашем случае будет другое), жмем "Ввод";

- После "Command (m for help)" вводим t и Ентер.

- После "Hex code (type L to list codes):" - l (L, не единица) и Enter.

Дальше Linux предложит варианты файловых систем, которые можно создать на восстанавливаемой флешке. Нам нужен вариант FAT16. Поэтому вводим 6 и жмем Ентер, затем w и еще раз Ентер.

4. Дожидаемся завершения процесса и появления фразы [ramdisk/home/dsl]#, после которой вводим команду mkdosfs /dev/sda1 (в конце единица) и нажимаем Ентер.

По окончанию, закрываем окно терминала и выключаем виртуальную машину (просто закрываем ее окно). Восстановление флешки завершено. Если файловая система FAT вас чем-то не устраивает, флешку можно отформатировать в NTFS обычным способом.


Изложенный выше метод форматирования подходит не только для флешек, но и для карт памяти, съемных винчестеров и др. Применять его можно и в отношении вполне работоспособных запоминающих устройств, когда нужно гарантированно уничтожить все данные, которые когда-либо на них хранились. Восстановить информацию после такого форматирования носителя уже невозможно.





вверх