# Форматирование и плохое управление блоками **Цель работы:** * Научиться форматировать накопители **Защита работы:** * Оформить отчёт о проделанной работе * Ответить на вопросы * Показать на практике ## 1. Форматирование дисков :::info Все жесткие диски поступают отформатированными, причем фабричное форматирование не хуже любого другого. Лучше избегать низкоуровневого форматирования, если это не диктуется крайней необходимостью. В общем, никогда не следует форматировать заново новые диски. ::: Если на диске обнаруживаются ошибки чтения или записи, сначала необходимо проверить кабели, терминаторы и адресацию. Каждый из них может вызвать симптомы, похожие на существование плохих блоков. Если после проверки вы все еще уверены, что на диске есть дефект, лучше заменить его сразу на новый диск, а не ждать много часов, пока он отформатируется, в надежде, что проблемы исчезну сами по себе. В процессе форматирования происходит запись адресов и временных отметок на пластинах, для того чтобы установить размеры каждого сектора. Кроме того, обнаруживаются плохие блоки и дефекты покрытия, препятствующие надежному чтению или записи. Все современные блоки имеют встроенные механизмы управления плохими блоками, поэтому ни вам, ни драйверу не следует беспокоиться об управлении дефектами. Для этой цели встроенные программы накопителя хранят в резервной области адреса хороших блоков. ### 1.1 Форматирование диска через терминал 1. Для начала нам нужно узнать имя накопителя, для его форматирования, используем команду lsblk ![](https://i.imgur.com/Z1je5QV.png) 2. Сейчас потребуется отмонтировать диск, если он находится в активном состоянии. В этом поможет команда sudo umount /dev/sdb1, где sdb1 — название накопителя. ![](https://i.imgur.com/5yunyZH.png) 3. Теперь форматируйте носитель в интересующую ФС через команду sudo mkfs.ntfs /dev/sdb1, где ntfs нужно заменить на требуемую файловую систему (vfat, ext2, ext3, ext4, msdos или reiserfs соответственно). ![](https://i.imgur.com/x5tS8kY.png) Запущено форматирование. ## 2. Плохие блоки :::info Плохие блоки, проявившиеся после форматирования диска, могут обрабатываться автоматически, но могут и не обрабатываться. Если программа накопителя полагает, что эти блоки можно восстановить надежным образом, то вновь выявленный дефект может быть исправлен на лету, а данные записаны в новое место. При выявлении более серьезных или менее очевидных ошибок, накопитель прекращает выполнение операций чтений или записи и сообщает об ошибке операционной системе компьютера. ::: Наличие дефектных блоков на диске - обычное дело. Внутри блока наряду с данными хранится контрольная сумма данных. Под “плохими” блоками обычно понимают блоки диска, для которых вычисленная контрольная сумма считываемых данных не совпадает с хранимой контрольной суммой. Дефектные блоки обычно появляются в процессе эксплуатации. Иногда они уже имеются при поставке вместе со списком, так как очень затруднительно для поставщиков сделать диск полностью свободным от дефектов. Рассмотрим два решения проблемы дефектных блоков - одно на уровне аппаратуры, другое на уровне ядра ОС. Решение на уровне ОС может быть следующим. Прежде всего, необходимо тщательно сконструировать файл, содержащий дефектные блоки. Тогда они изымаются из списка свободных блоков. Затем нужно каким-то образом скрыть этот файл от прикладных программ. Для проверки целостности диска существуют разнообразные утилиты, которые выполняют запись данных в случайно выбранные области и считывают их оттуда. Тщательные тесты занимают много времени и, к сожалению, имеют небольшое прогностическое значение. Если вы подозреваете, что диск испорчен, и можете его просто заменить (или заказать новый в течение часа), то эти тесты можно проигнорировать. В противном случае запустите тест на ночь. Не беспокойтесь об “изнашивании” диска вследствие избыточного или агрессивного тестирования. Промышленные диски предназначены для постоянной работы. ### 2.1 Лечение накопителя с плохими блоками Лучшее решение, если на накопителе появились плохие блоки, то лучшее лечение - как можно быстрее скопировать доступную информацию на новый диск. Если нового диска нет, то лечим как описано далее. 1. Смотрим полный список накопителей с томами: `$ fdisk -l` ![](https://i.imgur.com/QTSZWfz.png) 2. Если том примонтирован, то перед проверкой отмонтировать:`$ sudo umount /dev/sdb` 3. Проверка на бэдблоки: `$ sudo badblocks опции /dev/имя_раздела_диска > имя_файля_для_записи` `$ sudo badblocks -w /dev/sdb > /root/badblock` :::success Oпции программы, которые вам могут понадобится: ``` -e - позволяет указать количество битых блоков, после достижения которого дальше продолжать тест не надо; -f - по умолчанию утилита пропускает тест с помощью чтения/записи если файловая система смонтирована чтобы её не повредить, эта опция позволяет всё таки выполнять эти тесты даже для смонтированных систем; -i - позволяет передать список ранее найденных битых секторов, чтобы не проверять их снова; -n - использовать безопасный тест чтения и записи, во время этого теста данные не стираются; -o - записать обнаруженные битые блоки в указанный файл; -p - количество проверок, по умолчанию только одна; -s - показывать прогресс в % сканирования раздела; -v - максимально подробный режим; -w - позволяет выполнить тест с помощью записи, на каждый блок записывается определённая последовательность байт, что стирает данные, которые хранились там раньше. ``` ::: 4. Пометка бэд блоков (в дальнейшем помеченные блоки будут игнорироваться системой): `e2fsck -l /root/badblock /dev/sdb`