Внезапно запускаешь под виндой Victoria режим DMA, тест типа Verify, включить Remap. Фигачишь весь жёсткий диск, охлаждая его обязательно. Все битые сектора заремапятся на уровне харда и выпадут из списка доступных, будешь беззаботен и радостен. Ни под виртальной машиной, ни под Вайном не заработает. Увы, такой штуки в линуксе еще не придумали.
0. Обеспечь винчестеру хорошее охлаждение (отодвинь от других, вентилятор поставь и т. д.)
1. Установи smartmontools
2. smartctl --test=long /dev/твой_битый_диск
3. Ждёшь некоторое время (какое smartctl сказал)
4. smartctl --all /dev/твой_битый_диск
5. Смотришь, что вывел SMART. Ищи слова «PASSED» или «FAILED» (если FAILED - лучше заменяй диск) и смотри пункт Reallocated_Sectors_Count (сколько секторов заменены на другие с резервных дорожек самим винтом)
6. dd if=/dev/zero of=/dev/твой_битый_диск
Зануление - это некая разновидность «битья в бубен», от которого может активизироваться замена битых секторов резервными.
7. smartctl --test=long /dev/твой_битый_диск
8. Ждёшь некоторое время (какое smartctl сказал)
9. smartctl --all /dev/твой_битый_диск
10. Смотришь, что вывел SMART. Ищи слова «PASSED» или «FAILED» (если FAILED - лучше заменяй диск) и смотри пункт Reallocated_Sectors_Count (сколько секторов заменены на другие с резервных дорожек самим винтом) - количество может увеличиться.
11. badblocks -v -s /dev/твой_битый_диск > файл_список_битых_секторов
12. fdisk -l /dev/твой_битый_диск - смотришь геометрию
13. По номерам блоков в файле_списке_битых_секторов вычисляешь номера цилиндров (делением на количество секторов и количество головок)
14. fdisk'ом размечаешь диск так, чтобы битые цилиндры оказались в неразмеченной области.
15. badblocks -s -v -w /dev/твой_битый_диск1 >список_битых_секторов_на_1_разделе
badblocks -s -v -w /dev/твой_битый_диск2 > список_битых_секторов_на_1_разделе
Проверяешь разделы. Если много битых секторов - повтори разбиение fdisk'ом
16. smartctl --test=long /dev/твой_битый_диск
17. Ждёшь некоторое время (какое smartctl сказал)
18. smartctl --all /dev/твой_битый_диск
19. Смотришь, что вывел SMART. Ищи слова «PASSED» или «FAILED» (если FAILED - лучше заменяй диск) и смотри пункт Reallocated_Sectors_Count (сколько секторов заменены на другие с резервных дорожек самим винтом. Сильно ли увеличилось ли количество заменённых секторов? Если да, то винт разваливается на ходу и использовать его опасно.
Все битые сектора заремапятся на уровне харда и выпадут из списка доступных,
Вообще-то это не Victoria делает, а сам жёсткий диск. При попытке записи на битый сектор контроллер заменит его на один из резервных. Тот же эффет должен быть в линуксе от
dd if=/dev/disk of=/dev/disk conv=noerror,sync
Посмотреть количество перераспределённых секторов можно с помощью smartctl.
Любая нормальная ФС работает с логическим представлением пространства носителя. При невозможности записи/чтения какого-либо логического блока(сектора) ФС помечает этот блок(сектор) как сбойный и не использует его никогда.
Для избавления от bad-секторов на физическом уровне служат утилиты типа MHDD, которые способны при работе с контроллёром диска на низком уровне, осуществлять операции подмены адресов сбойных секторов на адреса секторов из резервной области «ремапа».
На графиках чтения «поверхности» отремонтированных таким образом винчестверов безотносительно к используемой ФС наблюдаются характерные впадины уменьшения трафика данных, что вызвано, очевидно, обработкой контроллёром переназначенного LBA-адреса сбойного сектора на резервный, чтобы не терялась линейность логической последовательности адресации блоков дискового пространства.
Для восстановления полной ёмкости отремонтированного носителя для операционной системы достаточно его переформатировать, чтобы исчезла информация о сбойных (логических) секторах из самой ФС.
Уникумам, вроде тебя, достаточно быть немного толерантнее и не выказывать собеседнику на публичном сайте представления о его неполноценности. Не кидаться словами «идиот», «дибил», «дурак» и т.п., так как за это необоснованное поведение в приличном обществе можно получить канделябрами. Ну, разве что это прощается лицам, не достигшим совершеннолетнего возраста по вполне понятным причинам.
Не согласен! только что сбросил на венике инфу о бэдах, прочесал этой командой, все бэды на месте. Так что программа еще должна уметь винчестеру команды давать на ремап.
Не согласен! только что сбросил на венике инфу о бэдах, прочесал этой командой, все бэды на месте. Так что программа еще должна уметь винчестеру команды давать на ремап.