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