HDD. Linux. Проверка HDD на бэдблоки (badblocks checking): различия между версиями
Cless (обсуждение | вклад) (Новая страница: «Категория:HDD __ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__») |
Cless (обсуждение | вклад) м (Cless переименовал страницу HDD. Linux. Проверка HDD на бэдблоки в HDD. Linux. Проверка HDD на бэдблоки (badblocks checking) без оставления перенаправления) |
||
| (не показано 5 промежуточных версий этого же участника) | |||
| Строка 1: | Строка 1: | ||
[[Категория:HDD]] | [[Категория:HDD]] | ||
__ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__ | __ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__ | ||
== Вариант 1 == | |||
Установка smartctl | |||
<code>yum install smartmontools</code> | |||
Посмотреть данные SMART | |||
smartctl -iHA | |||
Прогнать самотестирование (результаты смотреть через ндцать часов smartctl -a) | |||
<code>smartctl -t long</code> | |||
Проверить/исправить/очистить диск в режиме READ-ONLY | |||
<code>badblocks -svb4096 /dev/sdb</code> | |||
'''!!! READ-WRITE РЕЖИМ - ГАРАНТИРОВАННАЯ ПОТЕРЯ ДАННЫХ !!!''' | |||
<code>'''badblocks -w -svb4096 /dev/sdb'''</code> | |||
badblocks [параметры] устройство | |||
устройство - имя устройства для проверки | |||
параметры - необязательные параметры проверки, например | |||
-b установка размера блока в байтах | |||
Этот параметр желательно определять всегда. Размер используемого блока зависит от типа создаваемой файловой системы и её размера. | |||
-о определение имени файла, куда программа размещает номера сбойных блоков. | |||
Затем этот файл может быть передан программе, проверяющей/создающей файловую систему, для исключения отмеченных блоков. | |||
-i установка имени файла, в котором находятся номера сбойных блоков | |||
Использование параметра позволяет исключить повторное обращение к этим блокам при сканировании. | |||
-p установка количества проходов проверки | |||
-n установка для проверки режима "только для чтения", параметр по умолчанию | |||
-s отображение номеров проверяемых блоков -v отображение подробной информации во время работы программы | |||
-w установка использования при проверке режима записи - Гарантированная потеря данных! | |||
А если бэды уже есть - то нужен GNU ddrescue (не путать с dd_rescue) и второй диск. | |||
== Вариант 2 == | |||
Поблочное чтение диска, ничего плохого не случится | |||
<code>dd if=/dev/ada0 of=/dev/null bs=512 status=progress</code> | |||
При встрече первого бэд блока программа завершится с ошибкой: | |||
dd: /dev/ada0: Input/output error MiB) transferred 395.000s, 8111 kB/s | |||
6266577+0 records in | |||
6266577+0 records out | |||
3208487424 bytes transferred in 404.157958 secs (7938697 bytes/sec) | |||
Чтобы продолжать сканирование при встрече бэдблока (таким образом выясним сколько всего бэдблоков на диске): | |||
Вывод ошибок в терминал | |||
<code>dd if=/dev/ada0 of=/dev/null bs=8M status=progress '''conv=noerror'''</code> | |||
Вывести ошибки в терминал и записать вывод с ошибками в файл | |||
<code>dd if=/dev/ada0 of=/dev/null bs=8M conv=noerror | & tee /tmp/log.txt</code> | |||
[[Категория:Linux]] | |||
[[Категория:Dd]] | |||
Текущая версия на 12:26, 8 ноября 2023
Вариант 1
Установка smartctl
yum install smartmontools
Посмотреть данные SMART
smartctl -iHA
Прогнать самотестирование (результаты смотреть через ндцать часов smartctl -a)
smartctl -t long
Проверить/исправить/очистить диск в режиме READ-ONLY
badblocks -svb4096 /dev/sdb
!!! READ-WRITE РЕЖИМ - ГАРАНТИРОВАННАЯ ПОТЕРЯ ДАННЫХ !!!
badblocks -w -svb4096 /dev/sdb
badblocks [параметры] устройство устройство - имя устройства для проверки параметры - необязательные параметры проверки, например -b установка размера блока в байтах Этот параметр желательно определять всегда. Размер используемого блока зависит от типа создаваемой файловой системы и её размера. -о определение имени файла, куда программа размещает номера сбойных блоков. Затем этот файл может быть передан программе, проверяющей/создающей файловую систему, для исключения отмеченных блоков. -i установка имени файла, в котором находятся номера сбойных блоков Использование параметра позволяет исключить повторное обращение к этим блокам при сканировании. -p установка количества проходов проверки -n установка для проверки режима "только для чтения", параметр по умолчанию -s отображение номеров проверяемых блоков -v отображение подробной информации во время работы программы -w установка использования при проверке режима записи - Гарантированная потеря данных!
А если бэды уже есть - то нужен GNU ddrescue (не путать с dd_rescue) и второй диск.
Вариант 2
Поблочное чтение диска, ничего плохого не случится
dd if=/dev/ada0 of=/dev/null bs=512 status=progress
При встрече первого бэд блока программа завершится с ошибкой:
dd: /dev/ada0: Input/output error MiB) transferred 395.000s, 8111 kB/s 6266577+0 records in 6266577+0 records out 3208487424 bytes transferred in 404.157958 secs (7938697 bytes/sec)
Чтобы продолжать сканирование при встрече бэдблока (таким образом выясним сколько всего бэдблоков на диске):
Вывод ошибок в терминал
dd if=/dev/ada0 of=/dev/null bs=8M status=progress conv=noerror
Вывести ошибки в терминал и записать вывод с ошибками в файл
dd if=/dev/ada0 of=/dev/null bs=8M conv=noerror | & tee /tmp/log.txt