]> git.sur5r.net Git - bacula/rescue/blob - rescue/linux/usb/src/scripts/restore/checkraid
Add new usb rescue key code
[bacula/rescue] / rescue / linux / usb / src / scripts / restore / checkraid
1 #!/bin/sh 
2
3
4
5
6
7 if [ -f working/scripts/recreate_raid_arrays ];then
8
9 if [ ! -f lvmdisks ];then
10 touch lvmdisks
11 fi
12 cat disklist|while read LINE;do
13 disk=`echo $LINE`
14 grep $disk working/scripts/recreate_raid_arrays |while read line;do
15      
16         
17         grep $disk checkraidtemp >>/dev/null 2>&1
18                 if [ ! $? = 0 ];then
19                 echo $line>>checkraidtemp
20                 field=`echo $line|wc -w`
21                         while [ $field -ne 0 ];do
22                         a=`echo $line|awk "{ print \$ $field }"`
23                         echo $a|grep /dev |grep -v md|grep -v $disk>/dev/null 2>&1
24                                 if [ $? = 0 ];then
25                                 grep $a disklist
26                                         if [ ! $? = 0 ];then
27                                         echo $a >>added_disks
28                                         
29                                         fi
30                                 fi
31                         field=$(( field - 1 ))
32                         done
33
34
35
36                         field=`echo $line|wc -w`
37                         while [ $field -ne 0 ];do
38                         a=`echo $line|awk "{ print \$ $field }"`
39                         echo $a|grep  md|grep -v mdadm >/dev/null 2>&1
40                                 if [ $? = 0 ];then
41                                 grep $a lvmdisks
42                                         if [ ! $? = 0 ];then
43                                         echo $a >> raidisks
44                                         
45                                         fi
46                                 fi
47                         field=$(( field - 1 ))
48                         done
49
50
51
52                 fi
53         
54 done
55 done
56                 cat disklist|while read line;do
57                         if [ ! $line = "" ];then
58                         echo $line >>disklistmp
59                         fi
60                 done
61                                 cat added_disks|while read line;do
62                                         if [ ! $line = "" ];then
63                                         echo $line>>disklistmp
64                                         fi
65                                 done
66 mv disklistmp disklist
67
68 echo "" > added_disks
69 fi