root / bin / check-coherence-zvol-dev
Historique | Voir | Annoter | Télécharger (1,89 ko)
1 | 1 | kreverch | #!/bin/bash |
---|---|---|---|
2 | 39 | ltaulell | # $Id$ |
3 | 51 | ltaulell | # Copyright (C) 2013 Kevin Reverchon, Loïs Taulelle |
4 | 51 | ltaulell | # This file/program is part of gZFS free software |
5 | 51 | ltaulell | # See COPYING file for details |
6 | 51 | ltaulell | # |
7 | 1 | kreverch | |
8 | 50 | kreverch | BINZFS="/sbin/zfs" |
9 | 50 | kreverch | BINZPOOL="/sbin/zpool" |
10 | 1 | kreverch | |
11 | 1 | kreverch | echo "*****************************************" |
12 | 1 | kreverch | echo "* CHECK COHERENCE ZVOL/DEVICE *" |
13 | 1 | kreverch | echo "*****************************************" |
14 | 1 | kreverch | echo "" |
15 | 1 | kreverch | |
16 | 50 | kreverch | for line in $($BINZFS list |awk '{ print $1}') |
17 | 1 | kreverch | do |
18 | 1 | kreverch | if [ "$line" != "NAME" ] |
19 | 1 | kreverch | then |
20 | 1 | kreverch | |
21 | 50 | kreverch | SIZE_ZVOL=$($BINZFS get volsize $line | grep $line |awk '{ print $3}') |
22 | 1 | kreverch | if [ "$SIZE_ZVOL" != "-" ] |
23 | 1 | kreverch | then |
24 | 40 | ltaulell | echo "*** zvol $line. Size: $SIZE_ZVOL" |
25 | 1 | kreverch | if [ -e /dev/zvol/$line ] |
26 | 1 | kreverch | then |
27 | 1 | kreverch | echo "Check Coherence ZVOL/DEVICE for $line : [OK]" |
28 | 1 | kreverch | else |
29 | 1 | kreverch | echo "Check Coherence ZVOL/DEVICE for $line : [ERROR]" |
30 | 40 | ltaulell | echo "Trying to resolv the problem... " |
31 | 50 | kreverch | $BINZFS rename $line $line-rn |
32 | 50 | kreverch | $BINZFS rename $line-rn $line |
33 | 1 | kreverch | if [ -e /dev/zvol/$line ] |
34 | 1 | kreverch | then |
35 | 1 | kreverch | echo "Check Coherence ZVOL/DEVICE for $line : [OK]" |
36 | 1 | kreverch | fi |
37 | 1 | kreverch | fi |
38 | 1 | kreverch | echo "" |
39 | 1 | kreverch | fi |
40 | 1 | kreverch | |
41 | 1 | kreverch | fi |
42 | 1 | kreverch | |
43 | 1 | kreverch | done |
44 | 1 | kreverch | |
45 | 1 | kreverch | echo "" |
46 | 1 | kreverch | echo "*****************************************" |
47 | 1 | kreverch | echo "* CHECK COHERENCE SNAPSHOT/DEVICE *" |
48 | 1 | kreverch | echo "*****************************************" |
49 | 1 | kreverch | |
50 | 50 | kreverch | for line in $($BINZFS list -t snapshot |awk '{ print $1}') |
51 | 1 | kreverch | do |
52 | 1 | kreverch | if [ "$line" != "NAME" ] |
53 | 1 | kreverch | then |
54 | 1 | kreverch | echo "*** zvol $line" |
55 | 1 | kreverch | if [ -e /dev/zvol/$line ] |
56 | 1 | kreverch | then |
57 | 1 | kreverch | echo "Check Coherence SNAPSHOT/DEVICE for $line : [OK]" |
58 | 1 | kreverch | else |
59 | 1 | kreverch | echo "Check Coherence SNAPSHOT/DEVICE for $line : [ERROR]" |
60 | 40 | ltaulell | echo "Trying to resolv the problem... " |
61 | 50 | kreverch | $BINZFS rename $line $line-rn |
62 | 50 | kreverch | $BINZFS rename $line-rn $line |
63 | 1 | kreverch | if [ -e /dev/zvol/$line ] |
64 | 1 | kreverch | then |
65 | 1 | kreverch | echo "Check Coherence ZVOL/DEVICE for $line : [OK]" |
66 | 1 | kreverch | fi |
67 | 1 | kreverch | fi |
68 | 1 | kreverch | echo "" |
69 | 1 | kreverch | fi |
70 | 1 | kreverch | done |