25

Я запускаю badblocks (или, скорее, «e2fsck -c») на диске емкостью 1 ТБ, и если индикатор прогресса является какой-либо индикацией (без каламбура), для завершения потребуется почти вечность.

Прямо сейчас говорится, что 0.01% done, 30:20 elapsed что означало бы, что на выполнение этой задачи потребуется около 17 недель, что в моей книге кажется чрезмерным.

Это нормальное количество времени для такой проверки или просто мои подозрения верны в том, что привод выходит из строя, и поэтому проверка занимает лишь немного короче вечности?

Я нашел этот вопрос здесь, но это относится к количеству выполненных проходов.

6 ответов6

18

Чтобы ответить на ваш вопрос, самое близкое, что я могу предложить, - это 3 ТБ, которые я тестировал для этого. Вот три раза тесты, которые я сделал, только меняя значения параметров для -c и выполняя их только до 10%, так как они занимали ОЧЕНЬ много времени. Каждый был сделан 3 раза, чтобы получить среднее значение.

badblocks -svn /dev/sdb

Чтобы добраться до 1%: 1 час
Чтобы добраться до 10%: 8 часов 40 минут

badblocks -svn -b 512 -c 32768 /dev/sda

Чтобы добраться до 1%: 35 минут
Чтобы добраться до 10%: 4 часа 10 минут

badblocks -svn -b 512 -c 65536 /dev/sda

Чтобы добраться до 1%: 16 минут
Чтобы добраться до 10%: 2 часа 35 минут

Так что да, параметр -c очень сильно влияет на время проверки диска. Я предполагаю, что для жесткого диска емкостью 1 ТБ, при условии, что он поддерживает те же временные рамки, что и 3 ТБ, это будет 1/3 от времени, указанного здесь, поэтому получить 10% с -c 65536 на жестком диске емкостью 1 ТБ будет около 50 минут.

5

Badblocks делает 4 пробежки. На внешнем HD объемом 1 ТБ это обычно занимает около 70 часов.

3

Попробуйте увеличить количество блоков, обрабатываемых вместе, как в badblocks -svn -b 512 -c 65536 /dev/sda . Таким образом, я могу проверить жесткий диск объемом 1 ТБ за 8 часов.

0

Некоторые наблюдения за производительностью:

Я запускаю e2fsck -c -c -v /dev /sda2, который находится на этом устройстве:

/dev/sda2 77056 976754431 976677376 3.7T файловая система Linux

Текущее время выполнения для 63,5% составляет 53:28:40; 53,5 часа. Скорость прогресса составляет 1,186%/ час. При такой скорости потребуется еще 31 час, а общее время выполнения - около 85 часов. Это устройство USB 3.0. iotop указывает, что средняя скорость чтения / записи составляет около 25 МБ / с. До настоящего времени ноль плохих блоков найдено не было.

Базовая командная строка, запускаемая e2fsck:

sh -c badblocks -b 4096 -X -s -n /dev /sda2 976677375

В сообщениях о состоянии StackOverflow безопасно прерывать плохие блоки с помощью ^ C (SIGTERM). Если я это сделаю, я не вижу недостатка в прекращении этого теста и его возобновлении в будущем, поскольку это операция на уровне дисков. Я должен размонтировать эту файловую систему перед тем, как возобновить сканирование в процентах.

0

Запустил это позавчера на отказавшем диске 1 ТБ в моем 6 ТБ RAID 6 (РЕЖИМ УНИЧТОЖИТЕЛЬНОЙ ЗАПИСИ!):

# badblocks -svw -b 4096 -c 65536 /dev/sdb

Материнская плата представляет собой ASRock Rack C2550D4I (я знаю…) с 8-кратным Samsung SpinPoint M8 HN-M101MBB (я знаю…), подключенным к портам SATA3. Диски 4K "Advanced Format", следовательно, размер блока 4K.

badblocks заняло около 28 часов, без ошибок.

Одиночные диски занимают ~ 105 МБ / с (среднее время буферизации чтения hdparm -tT ), 200–230 МБ / с при тестировании всего массива. Ничего превосходного в наше время, но приятно для кучи старых ноутбуков.

Надеюсь, что это поможет так же, как этот поток помог мне найти быстрый способ запуска badblocks на диске. Я знаю, что его использование сомнительно в наши дни, но когда предыдущий smartctl -t long не работал из-за ошибок чтения, я решил несколько раз коснуться всех секторов и переписать их, чтобы увидеть, как изменятся значения SMART. Ожидается еще один тест smartctl , если это снова не удастся, я куплю новый диск.

0

Я использую badblocks на дисках WD Red 4TB. Так как это 4-секторные диски (проверено с помощью lsblk -o NAME,PHY-SeC), я запускаю его с -b 4096 . Я хотел дать каждому экземпляру badblocks ~ 800 МБ ОЗУ, поэтому я использовал -c 200000 что дает 4096 bytes * 200,000 blocks = 800,000 Kb . Они начинали с примерно 800Mb каждый, но со временем подкрались. Эти настройки обеспечивают значительное ускорение по сравнению со стандартными настройками.

Он пробежал 1% за 3 минуты 56 секунд, но это 1% от 4 паттернов. Похоже, что чем ближе к концу пробега, тем больше времени уходит. Он проверил диск с первым шаблоном примерно через 17 часов, поэтому он должен заполнить 4 ТБ примерно за 68 часов.

КОМАНДА НИЖЕ ЗАПУСКАЕТ ДЕСТРУКТИВНОЕ НАПИСАНИЕ

Я использую команду :badblocks -svw -b 4096 -c 200000 /dev/sdc -o bb_sdc.txt

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .