Statistiques
| Révision :

root / bin / disable-replica @ 38

Historique | Voir | Annoter | Télécharger (2,42 ko)

1 18 kreverch
#!/bin/bash
2 18 kreverch
3 18 kreverch
DIR_CRON="/etc/cron.d/"
4 18 kreverch
DIR_CONF_REPLICA="/opt/gZFS/replicas/"
5 18 kreverch
BIN_ZFS_REPLICA="/sbin/zfs-replica"
6 18 kreverch
7 18 kreverch
8 18 kreverch
9 18 kreverch
10 18 kreverch
11 18 kreverch
12 18 kreverch
function usage {
13 18 kreverch
  echo "Usage :" 1>&2
14 18 kreverch
  echo "disable-replica [OPTIONS]" 1>&2
15 18 kreverch
  echo " -h display this message" 1>&2
16 18 kreverch
  echo " -i interactive mode" 1>&2
17 18 kreverch
  echo " -N Specify the name ZFS Volume/Filesystem" 1>&2
18 18 kreverch
19 18 kreverch
}
20 18 kreverch
21 18 kreverch
function nointeractive {
22 20 ltaulell
FILE_NAME=$(echo "replica-"${NAMEZFS//\//-})
23 18 kreverch
   /bin/rm -f $DIR_CONF_REPLICA$FILE_NAME.conf
24 18 kreverch
   if [ -e $DIR_CONF_REPLICA$FILE_NAME.conf ]
25 18 kreverch
   then
26 18 kreverch
      echo "Error : cannot delete $DIR_CONF_REPLICA$FILE_NAME.conf"
27 18 kreverch
   fi
28 18 kreverch
29 18 kreverch
   /bin/rm $DIR_CRON$FILE_NAME
30 18 kreverch
   if [ -e $DIR_CRON$FILE_NAME ]
31 18 kreverch
   then
32 18 kreverch
      echo "Error : cannot delete $DIR_CRON$FILE_NAME"
33 18 kreverch
   fi
34 18 kreverch
35 18 kreverch
}
36 18 kreverch
37 18 kreverch
function interactive {
38 18 kreverch
39 18 kreverch
/sbin/zfs list
40 18 kreverch
echo "*** Nom du volume pour desactiver la replication :"
41 18 kreverch
while read inputline
42 18 kreverch
do
43 18 kreverch
   if [ "$inputline" != "" ]
44 18 kreverch
   then
45 18 kreverch
       /sbin/zfs list $inputline
46 18 kreverch
      if [ $? -eq 0 ]
47 18 kreverch
      then
48 20 ltaulell
         FILE_NAME=$(echo "replica-"${inputline//\//-})
49 18 kreverch
         if [ -e $DIR_CONF_REPLICA$FILE_NAME.conf ]
50 18 kreverch
         then
51 18 kreverch
            /bin/rm -f $DIR_CONF_REPLICA$FILE_NAME.conf
52 18 kreverch
            if [ $? -eq 0 ]
53 18 kreverch
            then
54 18 kreverch
               echo "*** Suppression du fichier conf $DIR_CONF_REPLICA$FILE_NAME.conf [OK]"
55 18 kreverch
            else
56 18 kreverch
               echo "/!\\ Suppression du fichier $DIR_CONF_REPLICA$FILE_NAME.conf [ERROR] /!\\"
57 18 kreverch
               exit
58 18 kreverch
            fi
59 18 kreverch
         else
60 18 kreverch
            echo "*** Le fichier de conf $DIR_CONF_REPLICA$FILE_NAME.conf n'existe pas"
61 18 kreverch
         fi
62 18 kreverch
63 18 kreverch
         if [ -e $DIR_CRON$FILE_NAME ]
64 18 kreverch
         then
65 18 kreverch
            /bin/rm $DIR_CRON$FILE_NAME
66 18 kreverch
            if [ $? -eq 0 ]
67 18 kreverch
            then
68 18 kreverch
               echo "*** Suppression du fichier de cron $DIR_CRON$FILE_NAME [OK]"
69 18 kreverch
               break
70 18 kreverch
            else
71 18 kreverch
               echo "/!\\ Suppression du fichier de cron $DIR_CRON$FILE_NAME /!\\"
72 18 kreverch
               exit
73 18 kreverch
            fi
74 18 kreverch
         else
75 18 kreverch
            echo "*** Le fichier cron $DIR_CRON$FILE_NAME n'existe pas"
76 18 kreverch
            break
77 18 kreverch
         fi
78 18 kreverch
      fi
79 18 kreverch
   fi
80 18 kreverch
   echo "*** Nom du volume pour desactiver la replication :"
81 18 kreverch
done
82 18 kreverch
exit 0
83 18 kreverch
}
84 18 kreverch
85 18 kreverch
while getopts "iN:h" OPTION
86 18 kreverch
do
87 18 kreverch
     case $OPTION in
88 18 kreverch
         h)
89 18 kreverch
             usage
90 18 kreverch
             exit 1
91 18 kreverch
             ;;
92 18 kreverch
         i)
93 18 kreverch
             interactive
94 18 kreverch
             ;;
95 18 kreverch
         N)
96 18 kreverch
             NAMEZFS=$OPTARG
97 18 kreverch
             ;;
98 18 kreverch
         *)
99 18 kreverch
             usage
100 18 kreverch
             exit 1
101 18 kreverch
             ;;
102 18 kreverch
     esac
103 18 kreverch
done
104 18 kreverch
if [[ -z $NAMEZFS ]]
105 18 kreverch
then
106 18 kreverch
     usage
107 18 kreverch
     exit 1
108 18 kreverch
fi
109 18 kreverch
nointeractive