Révision 46
bin/create-filesystem (revision 46) | ||
---|---|---|
22 | 22 |
|
23 | 23 |
function interactive { |
24 | 24 |
/sbin/zfs list |
25 |
# FIXME: c'est pas clair ta formulation |
|
26 |
echo "*** Choose a pool for the filesystem to create: ***" |
|
25 |
echo "*** Select the parent zpool : ***" |
|
27 | 26 |
|
28 | 27 |
while read inputline |
29 | 28 |
do |
... | ... | |
32 | 31 |
/sbin/zfs list |grep -i $inputline |
33 | 32 |
if [ $? -eq 1 ] |
34 | 33 |
then |
35 |
# FIXME: c'est pas clair ta formulation |
|
36 |
echo "*** Choose a pool for the filesystem to create: ***" |
|
34 |
echo "*** Select the parent zpool : ***" |
|
37 | 35 |
else |
38 | 36 |
|
39 | 37 |
echo "*** Are you sure: $inputline ? (y/n) ***" |
... | ... | |
86 | 84 |
break |
87 | 85 |
fi |
88 | 86 |
else |
89 |
# FIXME: c'est pas clair ta formulation |
|
90 |
echo "*** Choose a pool for the filesystem to create: ***" |
|
87 |
echo "*** Select the parent zpool : ***" |
|
91 | 88 |
fi |
92 | 89 |
done |
93 | 90 |
} |
bin/enable-replica (revision 46) | ||
---|---|---|
44 | 44 |
|
45 | 45 |
function interactive { |
46 | 46 |
zfs list |
47 |
echo "*** Choix du volume pour l'activation de la replication : ***"
|
|
47 |
echo "*** Select the ZFS volume/filesystem to replicate : ***"
|
|
48 | 48 |
|
49 | 49 |
while read inputline |
50 | 50 |
do |
51 | 51 |
volfs=$inputline |
52 | 52 |
if [ "$volfs" = "" ] |
53 | 53 |
then |
54 |
echo "*** Choix du volume pour l'activation de la replication : ***"
|
|
54 |
echo "*** Select the ZFS volume/filesystem to replicate : ***"
|
|
55 | 55 |
else |
56 | 56 |
|
57 |
echo "*** Etes-vous sur du nom : $inputline ? (y/n) ***"
|
|
57 |
echo "*** Are you sur : $inputline ? (y/n) ***"
|
|
58 | 58 |
|
59 | 59 |
|
60 | 60 |
while read inputConfirm |
... | ... | |
63 | 63 |
then |
64 | 64 |
break |
65 | 65 |
fi |
66 |
echo "*** Etes-vous sur du nom : $inputline ? (y/n) ***"
|
|
66 |
echo "*** Are you sur : $inputline ? (y/n) ***"
|
|
67 | 67 |
done |
68 | 68 |
if [ "$inputConfirm" = "y" ] |
69 | 69 |
then |
70 | 70 |
zfs list $volfs |
71 | 71 |
if [ $? -eq 0 ] |
72 | 72 |
then |
73 |
echo "*** Le volume saisi $volfs existe ***"
|
|
73 |
echo "*** The ZFS volume/filesystem selected $volfs exists ***"
|
|
74 | 74 |
break |
75 | 75 |
else |
76 |
echo "*** Le volume saisi $volfs n'existe pas ***"
|
|
77 |
echo "*** Choix du volume pour l'activation de la replication : ***"
|
|
76 |
echo "*** The ZFS volume/filesystem selected $volfs does not exist ***"
|
|
77 |
echo "*** Select the ZFS volume/filesystem to replicate : ***"
|
|
78 | 78 |
fi |
79 | 79 |
fi |
80 | 80 |
if [ "$inputConfirm" != "y" ] |
81 | 81 |
then |
82 |
echo "*** Choix du volume pour l'activation de la replication : ***"
|
|
82 |
echo "*** Select the ZFS volume/filesystem to replicate : ***"
|
|
83 | 83 |
fi |
84 | 84 |
fi |
85 | 85 |
done |
86 | 86 |
|
87 |
echo "*** Nom du replica (syntax pool_name/replica_name, exemple zpfront/monvolume) ***"
|
|
88 |
echo "*** /!\ Le programme ne verifiera pas la validite de votre saisie /!\***"
|
|
87 |
echo "*** Enter replica name (syntax pool_name/replica_name, example zpfront/monvolume) ***"
|
|
88 |
echo "*** /!\ This program does not check if the replica name is valid /!\***"
|
|
89 | 89 |
while read inputline |
90 | 90 |
do |
91 | 91 |
volfsdestination=$inputline |
92 | 92 |
if [ "$volfsdestination" = "" ] |
93 | 93 |
then |
94 |
echo "*** Nom du replica (syntax pool_name/replica_name, exemple zpfront/monvolume) ***"
|
|
95 |
echo "*** /!\ Le programme ne verifiera pas la validite de votre saisie /!\***"
|
|
94 |
echo "*** Enter replica name (syntax pool_name/replica_name, example zpfront/monvolume) ***"
|
|
95 |
echo "*** /!\ This program does not check if the replica name is valid /!\***"
|
|
96 | 96 |
else |
97 | 97 |
|
98 |
echo "*** Etes-vous sur du nom du replica: $inputline ? (y/n) ***"
|
|
98 |
echo "*** Are you sur : $inputline ? (y/n) ***"
|
|
99 | 99 |
|
100 | 100 |
|
101 | 101 |
while read inputConfirm |
... | ... | |
104 | 104 |
then |
105 | 105 |
break |
106 | 106 |
fi |
107 |
echo "*** Etes-vous sur du nom : $inputline ? (y/n) ***"
|
|
107 |
echo "*** Are you sur : $inputline ? (y/n) ***"
|
|
108 | 108 |
done |
109 | 109 |
if [ "$inputConfirm" != "y" ] |
110 | 110 |
then |
111 |
echo "*** Nom du replica (syntax pool_name/replica_name, exemple zpfront/monvolume) ***"
|
|
112 |
echo "*** /!\ Le programme ne verifiera pas la validite de votre saisie /!\***"
|
|
111 |
echo "*** Enter replica name (syntax pool_name/replica_name, example zpfront/monvolume) ***"
|
|
112 |
echo "*** /!\ This program does not check if the replica name is valid /!\***"
|
|
113 | 113 |
else |
114 | 114 |
break |
115 | 115 |
fi |
116 | 116 |
fi |
117 | 117 |
done |
118 | 118 |
|
119 |
echo "*** La replica est-elle sur un serveur distant (y/n)?"
|
|
119 |
echo "*** Replicate to a remote server (y/n)?"
|
|
120 | 120 |
while read inputConfirm |
121 | 121 |
do |
122 | 122 |
if [ "$inputConfirm" = "y" ]||[ "$inputConfirm" = "n" ] |
123 | 123 |
then |
124 | 124 |
break |
125 | 125 |
fi |
126 |
echo "*** Etes-vous sur du nom : $inputline ? (y/n) ***"
|
|
126 |
echo "*** Are you sur : $inputline ? (y/n) ***"
|
|
127 | 127 |
done |
128 | 128 |
if [ "$inputConfirm" = "y" ] |
129 | 129 |
then |
130 |
echo "*** Saisir le nom du server : "
|
|
130 |
echo "*** Enter server name : "
|
|
131 | 131 |
while read inputserver |
132 | 132 |
do |
133 | 133 |
if [ "$inputserver" != "" ] |
... | ... | |
135 | 135 |
server=$inputserver |
136 | 136 |
break |
137 | 137 |
fi |
138 |
echo "*** Saisir le nom du server : "
|
|
138 |
echo "*** Enter server name : "
|
|
139 | 139 |
done |
140 | 140 |
else |
141 | 141 |
server="" |
142 | 142 |
fi |
143 | 143 |
|
144 |
echo "*** Nombre de replica a garder : ***"
|
|
144 |
echo "*** Enter the replica number to keep : ***"
|
|
145 | 145 |
while read inputline |
146 | 146 |
do |
147 | 147 |
nbreplica=$inputline |
148 | 148 |
if [ "$nbreplica" = "" ] |
149 | 149 |
then |
150 |
echo "*** Nombre de snapshot a garder : ***"
|
|
150 |
echo "*** Enter the replica number to keep : ***"
|
|
151 | 151 |
else |
152 |
echo "*** Creation du fichier de configuration ***"
|
|
152 |
echo "*** Creation of configuration file ***"
|
|
153 | 153 |
FILE_NAME=$(echo "replica-"${volfs//\//-}) |
154 | 154 |
>$DIR_CONF_REPLICA$FILE_NAME.conf |
155 | 155 |
echo "name=$volfs" >> $DIR_CONF_REPLICA$FILE_NAME.conf |
bin/create-volume (revision 46) | ||
---|---|---|
30 | 30 |
|
31 | 31 |
function interactive { |
32 | 32 |
/sbin/zfs list |
33 |
# FIXME: c'est pas clair ta formulation |
|
34 |
echo "*** Choose a pool for the ZFS volume to create: ***" |
|
33 |
echo "*** Select the parent zpool : ***" |
|
35 | 34 |
|
36 | 35 |
while read inputline |
37 | 36 |
do |
... | ... | |
40 | 39 |
/sbin/zfs list |grep -i $inputline |
41 | 40 |
if [ $? -eq 1 ] |
42 | 41 |
then |
43 |
# FIXME: c'est pas clair ta formulation |
|
44 |
echo "*** Choose a pool for the ZFS volume to create: ***" |
|
42 |
echo "*** Select the parent zpool ***" |
|
45 | 43 |
else |
46 | 44 |
|
47 | 45 |
echo "*** Are you sure: $inputline ? (y/n) ***" |
... | ... | |
110 | 108 |
break |
111 | 109 |
fi |
112 | 110 |
else |
113 |
# FIXME: c'est pas clair ta formulation |
|
114 |
echo "*** Choose a pool for the ZFS volume to create: ***" |
|
111 |
echo "*** Select the parent zpool : ***" |
|
115 | 112 |
fi |
116 | 113 |
done |
117 | 114 |
} |
bin/zfs-replica (revision 46) | ||
---|---|---|
80 | 80 |
then |
81 | 81 |
echo "" |
82 | 82 |
CPT_SNAP=$(/sbin/zfs list -t snapshot -r $namereplica |cut -d" " -f1 |grep -i $namereplica\@ |wc -l) |
83 |
echo "*** Le nombre de snapshot pour $namereplica est : $CPT_SNAP"
|
|
83 |
echo "*** Number of snapshots for $namereplica is : $CPT_SNAP"
|
|
84 | 84 |
/sbin/zfs list -t snapshot -r $namereplica |
85 | 85 |
|
86 | 86 |
if [ $CPT_SNAP -gt $nbreplica ] |
87 | 87 |
then |
88 |
echo "*** Detection du snapshot le plus ancien"
|
|
88 |
echo "*** Detection of the oldest snapshot"
|
|
89 | 89 |
for ID_SNAP_OLDER in $(/sbin/zfs list -t snapshot -r $namereplica |cut -d" " -f1 |grep -i $namereplica\@) |
90 | 90 |
do |
91 |
echo "*** Le snapshot le plus ancien est : $ID_SNAP_OLDER"
|
|
91 |
echo "*** The oldest snapshot is : $ID_SNAP_OLDER"
|
|
92 | 92 |
break |
93 | 93 |
done |
94 | 94 |
/sbin/zfs destroy $ID_SNAP_OLDER |
95 | 95 |
if [ $? -eq 0 ] |
96 | 96 |
then |
97 |
echo "*** Suppression du snapshot $ID_SNAP_OLDER [OK]"
|
|
97 |
echo "*** Remove the snapshot $ID_SNAP_OLDER [OK]"
|
|
98 | 98 |
else |
99 |
echo "/!\\ Suppression du snapshot $ID_SNAP_OLDER [ERROR]."
|
|
99 |
echo "/!\\ Remove the snapshot $ID_SNAP_OLDER [ERROR]."
|
|
100 | 100 |
fi |
101 | 101 |
fi |
102 | 102 |
|
103 | 103 |
else |
104 | 104 |
echo "" |
105 | 105 |
CPT_SNAP=$(ssh -o BatchMode=yes root@$server /sbin/zfs list -t snapshot -r $namereplica |cut -d" " -f1 |grep -i $namereplica\@ |wc -l) |
106 |
echo "*** Le nombre de snapshot pour $namereplica est : $CPT_SNAP"
|
|
106 |
echo "*** Number of snapshots for $namereplica is : $CPT_SNAP"
|
|
107 | 107 |
ssh -o BatchMode=yes root@$server /sbin/zfs list -t snapshot -r $namereplica |
108 | 108 |
|
109 | 109 |
if [ $CPT_SNAP -gt $nbreplica ] |
110 | 110 |
then |
111 |
echo "*** Detection du snapshot le plus ancien"
|
|
111 |
echo "*** Detection of the oldest snapshot"
|
|
112 | 112 |
for ID_SNAP_OLDER in $(ssh -o BatchMode=yes root@$server /sbin/zfs list -t snapshot -r $namereplica |cut -d" " -f1 |grep -i $namereplica\@) |
113 | 113 |
do |
114 |
echo "*** Le snapshot le plus ancien est : $ID_SNAP_OLDER"
|
|
114 |
echo "*** The oldest snapshot is : $ID_SNAP_OLDER"
|
|
115 | 115 |
break |
116 | 116 |
done |
117 | 117 |
ssh -o BatchMode=yes root@$server /sbin/zfs destroy $ID_SNAP_OLDER |
118 | 118 |
if [ $? -eq 0 ] |
119 | 119 |
then |
120 |
echo "*** Suppression du snapshot $ID_SNAP_OLDER [OK]"
|
|
120 |
echo "*** Remove the snapshot $ID_SNAP_OLDER [OK]"
|
|
121 | 121 |
else |
122 |
echo "/!\\ Suppression du snapshot $ID_SNAP_OLDER [ERROR]."
|
|
122 |
echo "/!\\ Remove the snapshot $ID_SNAP_OLDER [ERROR]."
|
|
123 | 123 |
fi |
124 | 124 |
fi |
125 | 125 |
|
bin/disable-replica (revision 46) | ||
---|---|---|
35 | 35 |
function interactive { |
36 | 36 |
|
37 | 37 |
/sbin/zfs list |
38 |
echo "*** Nom du volume pour desactiver la replication :"
|
|
38 |
echo "*** Select the ZFS volume/filesystem Name to replicate :"
|
|
39 | 39 |
while read inputline |
40 | 40 |
do |
41 | 41 |
if [ "$inputline" != "" ] |
... | ... | |
49 | 49 |
/bin/rm -f $DIR_CONF_REPLICA$FILE_NAME.conf |
50 | 50 |
if [ $? -eq 0 ] |
51 | 51 |
then |
52 |
echo "*** Suppression du fichier conf $DIR_CONF_REPLICA$FILE_NAME.conf [OK]"
|
|
52 |
echo "*** Remove configuration file $DIR_CONF_REPLICA$FILE_NAME.conf [OK]"
|
|
53 | 53 |
else |
54 |
echo "/!\\ Suppression du fichier $DIR_CONF_REPLICA$FILE_NAME.conf [ERROR] /!\\"
|
|
54 |
echo "/!\\ Remove configuration file $DIR_CONF_REPLICA$FILE_NAME.conf [ERROR] /!\\"
|
|
55 | 55 |
exit |
56 | 56 |
fi |
57 | 57 |
else |
58 |
echo "*** Le fichier de conf $DIR_CONF_REPLICA$FILE_NAME.conf n'existe pas"
|
|
58 |
echo "*** The configuration file $DIR_CONF_REPLICA$FILE_NAME.conf does not exist"
|
|
59 | 59 |
fi |
60 | 60 |
|
61 | 61 |
if [ -e $DIR_CRON$FILE_NAME ] |
... | ... | |
63 | 63 |
/bin/rm $DIR_CRON$FILE_NAME |
64 | 64 |
if [ $? -eq 0 ] |
65 | 65 |
then |
66 |
echo "*** Suppression du fichier de cron $DIR_CRON$FILE_NAME [OK]"
|
|
66 |
echo "*** Remove cron file $DIR_CRON$FILE_NAME [OK]"
|
|
67 | 67 |
break |
68 | 68 |
else |
69 |
echo "/!\\ Suppression du fichier de cron $DIR_CRON$FILE_NAME /!\\"
|
|
69 |
echo "/!\\ Remove cron file $DIR_CRON$FILE_NAME [ERROR] /!\\"
|
|
70 | 70 |
exit |
71 | 71 |
fi |
72 | 72 |
else |
73 |
echo "*** Le fichier cron $DIR_CRON$FILE_NAME n'existe pas"
|
|
73 |
echo "*** The cron file $DIR_CRON$FILE_NAME does not exist"
|
|
74 | 74 |
break |
75 | 75 |
fi |
76 | 76 |
fi |
77 | 77 |
fi |
78 |
echo "*** Nom du volume pour desactiver la replication :"
|
|
78 |
echo "*** Select the ZFS volume/filesystem Name to replicate :"
|
|
79 | 79 |
done |
80 | 80 |
exit 0 |
81 | 81 |
} |
Formats disponibles : Unified diff