Сценарий Smartctl для записи нулей

Таким образом, у меня есть старый HDD, который был badsectors и мной неправильно следующий сценарий для записи нулей в badsectors, который находит smartctl. Вопросом является желание эта справка ошибки чтения-записи, или это бесполезно?

сценарий (btw извините любых глазных выдалбливаний сначала записанный сценарий):

a="$(smartctl -l selftest /dev/sdb | grep '# 1' | awk '{print  $9}')"
smartctl -t short /dev/sdb
clear
echo $a
b="$(smartctl -l selftest /dev/sdb | grep '# 1' | awk '{print  $5}')"
echo $b
until [[ $a = 0 ]];do
if [[ $b == *Compl* && $a == 0% ]]
        then
            exit
    else
            if [[ $b == *Compl* ]]
                    then
                    echo writting zeros
                    X="$(smartctl -l selftest /dev/sdb | grep 'read failure'| grep '# 1' | awk '{print  $10}')"
                    Y=$((X / 8))
                    Z=${Y%.*}
                    echo $Y
                    dd if=/dev/zero of=/dev/sdb conv=sync bs=4096 count=1 seek=$Y
                    smartctl -t short /dev/sdb
            fi
            sleep 10
            c="$(smartctl -l selftest /dev/sdb | grep '# 1' | awk '{print  $9}')"
            d="$(smartctl -l selftest /dev/sdb | grep '# 1' | awk '{print  $5}')"
                    until [[ $c != $a ]] || [[ $d != $b ]];do
                            sleep 10
                            c="$(smartctl -l selftest /dev/sdb | grep '# 1' | awk '{print  $9}')"
                            d="$(smartctl -l selftest /dev/sdb | grep '# 1' | awk '{print  $5}')"
                            clear
                            echo $c
                            echo $d
                            echo ZZZZzzzzzZZZZ
                    done
            clear
            echo wake up time $(date +"%H:%M:%S")
            a=$c
            b=$d
            echo $a
            echo $b

fi
done
echo done
0
задан 14 November 2014 в 00:15

1 ответ

Это в основном бесполезно. Могло бы помочь в течение короткого времени, но если Ваш диск имеет поврежденные секторы, то это только собирается получить больше поврежденных секторов со временем. Лучше покупать новый диск и/или получать тот, замененный, если он находится под гарантией. Если это не находится под гарантией, затем обратно хорошие данные к хорошему диску, запишите 0s в дефектный диск по крайней мере 10 раз и возьмите его к месту, где это будет переработано правильно.

1
ответ дан 6 October 2019 в 20:34

Другие вопросы по тегам:

Похожие вопросы: