Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Last revisionBoth sides next revision | ||
linux_faq:восстановление-виснущего-диска [2016/10/05 13:42] – mike | linux_faq:восстановление-виснущего-диска [2019/02/11 09:13] – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | 1. Делаем dd, дописывая в файл | ||
+ | dd if=/dev/sda >> /tmp/data 2> / | ||
+ | |||
+ | 2. если виснет - Проверяем состояние. | ||
+ | | ||
+ | |||
+ | 3. узнаем где, | ||
+ | < | ||
+ | 116960+0 records in | ||
+ | 116960+0 records out | ||
+ | 59883520 bytes (60 MB) copied, 12.385 s, 4.8 MB/s | ||
+ | | ||
+ | #если в строке с именем диска встречатся error | ||
+ | awk '/sda/ {print($5)}' | ||
+ | |||
+ | #тогда узнаем где | ||
+ | |||
+ | # | ||
+ | sed ' | ||
+ | sed ' | ||
+ | </ | ||
+ | 4. останавливаем диск, | ||
+ | # echo 1 > / | ||
+ | |||
+ | выключаем ждем и включаем | ||
+ | wget http:// | ||
+ | |||
+ | 5. запускаем снова, \\ | ||
+ | # echo "- - -" > / | ||
+ | 6. возобновляем dd\\ | ||
+ | dd if=/dev/sda skip=blabla >> /tmp/data 2> / | ||
+ | |||
+ | |||
+ | Скрипт: | ||
+ | < | ||
+ | #!/bin/sh | ||
+ | ####################################### | ||
+ | start_pos=$1 | ||
+ | outputfile=$2 | ||
+ | flagfile=/ | ||
+ | propusk=8 | ||
+ | volume=488397168 | ||
+ | ####################################### | ||
+ | # выключаем диск и включаем назад | ||
+ | echo 1 > / | ||
+ | curl -s " | ||
+ | echo OFF | ||
+ | sleep 5 | ||
+ | curl -s " | ||
+ | echo ON | ||
+ | sleep 5 | ||
+ | echo "- - -" > / | ||
+ | |||
+ | while true | ||
+ | do | ||
+ | count=$(echo $volume - $start_pos | bc -l) | ||
+ | echo " | ||
+ | dd if=/dev/sdb skip=$start_pos count=$count >> $outputfile 2> $flagfile | ||
+ | |||
+ | if [ $(awk '/sdb/ {print($5)}' | ||
+ | then | ||
+ | # | ||
+ | echo " | ||
+ | start_pos=$(echo $(echo $(echo $(awk '/ | ||
+ | echo " | ||
+ | dd if=/ | ||
+ | |||
+ | # выключаем диск и включаем назад | ||
+ | echo 1 > / | ||
+ | curl -s " | ||
+ | echo OFF | ||
+ | sleep 5 | ||
+ | curl -s " | ||
+ | echo ON | ||
+ | sleep 5 | ||
+ | echo "- - -" > / | ||
+ | fi | ||
+ | done | ||
+ | |||
+ | </ | ||
+ | |||