[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 547: include_once(./includes/auth/auth_ldap.php): failed to open stream: No such file or directory
[phpBB Debug] PHP Warning: in file [ROOT]/includes/session.php on line 547: include_once(): Failed opening './includes/auth/auth_ldap.php' for inclusion (include_path='.:/usr/share/php')
Просмотр темы - Как програмно отремонтировать флешку в Linux


Начать новую темуОтветить Страница 1 из 1   [ 1 сообщение ]
Автор Сообщение
 Заголовок сообщения: Как програмно отремонтировать флешку в Linux
СообщениеДобавлено: 04 июн 2010, 20:25 

Зарегистрирован: 04 июн 2010, 19:47
Сообщений: 1
У нас есть флешка которая либо виснет в Windows, либо просится быть отформатированной, но не форматируется

Для восстановления нам понадобится дистрибутив Ubuntu или любой другой linux.

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

Итак, загрузились и открыли терминал. Станьте Root выполнив команду su и введя пароль.

Подключаем флешку, смотрим список USB-устройств. Вводим lsusb, нажимаем Enter, смотрим вывод:

root@alex# lsusb
Bus 005 Device 003: ID 0ea0:2168 Ours Technology, Inc. Transcend JetFlash 2.0 / Astone USB Drive # Это наша флешка)
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 001: ID 0000:0000

Чтобы узнать какую букву получила у нас флешка я использую дисковую утилиту Система-> Адимнистирование -> Дисковая утилита

затем когда буква флешки нам известна (в моём случае это sdb) набираем:

root@alex# hdparm /dev/sdb
/dev/sdb:
readonly = 0 (off) #Защита от записи выключена
readahead = 256 (on)
geometry = 1014/17/59, sectors = 1017856, start = 0 #1017856 секторов это ~512 МБ

этой командой мы посмотрели параметры флешки

Теперь сделаем ей «низкоуровневое форматирование», т. е. заполним всё пространство накопителя нулевыми байтами. Таким образом мы удалим софт-бэды, сотрем ошибочные таблицы FAT, загрузочный сектор, MBR. Внимание! Все оставшиеся данные на флешке будут безвозвратно утеряны!

root@alex# dd if=/dev/zero of=/dev/sdb
dd: запись в `/dev/sdb': No space left on device #dd вводили без параметров, теперь он ругается на нехватку места на флешке.
1017857+0 записей считано
1017856+0 записей написано
скопировано 521142272 байта (521 MB), 144,185 секунд, 3,6 MB/s

Флешка USB 2.0 на 512 МБ стиралась 2 минуты

Теперь создаём раздел.

root@alex# fdisk /dev/sdb
#fdisk ругается, что не нашел DOS-овской таблицы разделов.
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel. Changes will remain in memory only,
until you decide to write them. After that, of course, the previous
content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

#создаём новый раздел. Жмем n
Command (m for help): n
Command action
e extended
p primary partition (1-4)
#нам нужен первичный раздел. Жмем p
p
#первый, естественно. Жмем 1
Partition number (1-4): 1
#Далее соглашаемся со всем, что предлагает fdisk.
First cylinder (1-1014, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-1014, default 1014):
Using default value 1014

#Смотрим, что получилось . Жмем p
Command (m for help): p

Disk /dev/sdb: 521 MB, 521142272 bytes
17 heads, 59 sectors/track, 1014 cylinders
Units = cylinders of 1003 * 512 = 513536 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 1014 508491+ 83 Linux

#По умолчанию fdisk создал, естественно, линуксовый раздел. Надо поменять ID раздела. Жмем t.
Command (m for help): t
#Выбираем первый раздел для изменения ID
Selected partition 1

#Меняем ID партишна на ФАТ16 - жмём 6
Hex code (type L to list codes): 6
Changed system type of partition 1 to 6 (FAT16)

#Еще раз проверяем
Command (m for help): p

Disk /dev/sdb: 521 MB, 521142272 bytes
17 heads, 59 sectors/track, 1014 cylinders
Units = cylinders of 1003 * 512 = 513536 bytes

Device Boot Start End Blocks Id System
/dev/sdb1 1 1014 508491+ 6 FAT16

#Всё в порядке, записвываем изменения
Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: If you have created or modified any DOS 6.x
partitions, please see the fdisk manual page for additional
information.
Syncing disks.


теперь остаётся только отформатировать флешку

root@alex# mkdosfs /dev/sdb1
mkdosfs 2.11 (12 Mar 2005)

иногда может потребоваться дополнительное форматроание в Windows.


Я не несу никакой ответственности за то, что Вы попутаете буквы дисков и постирете информацию со своих винчестеров. Данная методика проверялась на флешках объёмом до 2ГБ, SD и microSD флешках.

Источник: http://techzona.3dn.ru


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую темуОтветить Страница 1 из 1   [ 1 сообщение ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron


Rambler's Top100
1ww