From 7cff1c3bf63fd8b00975a9c2266cad834595ef5f Mon Sep 17 00:00:00 2001 From: pinkfeet Date: Fri, 28 Dec 2018 16:58:43 +0100 Subject: [PATCH 01/25] =?UTF-8?q?a=C3=B1ado=20deteccion=20brand=20bhyve?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptofile.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/zonebackuptofile.sh b/zonebackuptofile.sh index d03e603..a50404c 100755 --- a/zonebackuptofile.sh +++ b/zonebackuptofile.sh @@ -60,6 +60,8 @@ snapshot $UUID if [ $BRAND = "kvm" ]; then snapshot $UUID-disk0 +elif [ $BRAND = "bhyve" ]; then + snapshot $UUID-disk0 fi /usr/sbin/zonecfg -z $UUID export > $RUTADESTINO/$UUID/$UUID.`date +%Y%m%d`.cfg From 87db388880b0e78e090f148f3d024b7d728d14b6 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Mon, 31 Dec 2018 11:23:25 +0100 Subject: [PATCH 02/25] =?UTF-8?q?a=C3=B1ado=20soporte=20para=20bhyve?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptofile.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zonebackuptofile.sh b/zonebackuptofile.sh index d03e603..234cac2 100755 --- a/zonebackuptofile.sh +++ b/zonebackuptofile.sh @@ -58,7 +58,7 @@ snapshot() snapshot $UUID -if [ $BRAND = "kvm" ]; then +if [ $BRAND = "kvm" ] || [ $BRAND = "bhyve" ] ; then snapshot $UUID-disk0 fi From 28378ec31f20bf54cce017d8d465991209adb94c Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 9 Jan 2019 18:38:05 +0100 Subject: [PATCH 03/25] =?UTF-8?q?a=C3=B1ado=20soporte=20para=20argumento?= =?UTF-8?q?=20de=20dias=20a=20borrar?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptofile.sh | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/zonebackuptofile.sh b/zonebackuptofile.sh index 234cac2..09bf391 100755 --- a/zonebackuptofile.sh +++ b/zonebackuptofile.sh @@ -2,16 +2,19 @@ usage() { - echo "Usage: $0 -z UUID" >&2 + echo "Usage: $0 -z UUID -d days" >&2 exit 1 } -while getopts "z:" opt; +while getopts "z:d:" opt; do case "$opt" in z) UUID=$OPTARG ;; + d) + DAYS=$OPTARG + ;; *) usage ;; @@ -24,6 +27,10 @@ if [ -z "${UUID}" ]; then usage fi +if [ -z "${DAYS}" ]; then + usage +fi + BRAND=`/usr/sbin/vmadm get $UUID | json brand | tr -d '\n'` RUTADESTINO="/zones/tools/mounts" @@ -47,8 +54,8 @@ if [ $? != 0 ]; then exit fi -# mantenemos los backups de los ultimos dos dias -find $RUTADESTINO/$UUID -type f -mtime +3 -delete +# mantain backups of the last N days +find $RUTADESTINO/$UUID -type f -mtime +$DAYS -delete snapshot() { From dd8fdf289a9592a85f237456c741a4f397c93c88 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 9 Jan 2019 18:59:38 +0100 Subject: [PATCH 04/25] cambio folder y server a parametros en lugar de hardcodearlos --- zonebackuptofile.sh | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/zonebackuptofile.sh b/zonebackuptofile.sh index 09bf391..85bf0a2 100755 --- a/zonebackuptofile.sh +++ b/zonebackuptofile.sh @@ -2,11 +2,11 @@ usage() { - echo "Usage: $0 -z UUID -d days" >&2 + echo "Usage: $0 -z UUID -d days -r folder -s server" >&2 exit 1 } -while getopts "z:d:" opt; +while getopts "z:d:r:s:" opt; do case "$opt" in z) @@ -15,6 +15,12 @@ do d) DAYS=$OPTARG ;; + r) + FOLDER=$OPTARG + ;; + s) + SERVER=$OPTARG + ;; *) usage ;; @@ -23,19 +29,15 @@ done shift $((OPTIND-1)) -if [ -z "${UUID}" ]; then - usage -fi - -if [ -z "${DAYS}" ]; then +if [ -z "${UUID}" ] || [ -z "${DAYS}" ] || [ -z "${FOLDER}" ] || [ -z "${SERVER}" ]; then usage fi BRAND=`/usr/sbin/vmadm get $UUID | json brand | tr -d '\n'` RUTADESTINO="/zones/tools/mounts" -RUTAORIGEN="/export/ftpbackup/ns3043697.ip-164-132-169.eu" -SERVIDOR="ftpback-rbx3-470.ovh.net" +RUTAORIGEN="/export/ftpbackup/${FOLDER}" +SERVIDOR="${SERVER}" mkdir -p $RUTADESTINO mount $SERVIDOR:$RUTAORIGEN $RUTADESTINO From 51ae92b3d90f4bf0c04d29739fb0d487821ad3f2 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 9 Jan 2019 19:48:51 +0100 Subject: [PATCH 05/25] =?UTF-8?q?a=C3=B1ado=20el=20zonemigrate.sh=20al=20r?= =?UTF-8?q?epo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonemigrate.sh | 90 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 zonemigrate.sh diff --git a/zonemigrate.sh b/zonemigrate.sh new file mode 100644 index 0000000..f566869 --- /dev/null +++ b/zonemigrate.sh @@ -0,0 +1,90 @@ +#!/usr/bin/bash + +if [ "$#" -ne 2 ]; then + echo "Illegal number of parameters" + echo "Usage: $0 {UUID} {DESTINYNODE}" + exit 1 +fi + +UUID=$1 +NODODESTINO=$2 + +KEYFILE="/usbkey/ssh/id_rsa" +DESTINYPORT="2221" +SSH="ssh -i $KEYFILE -p $DESTINYPORT" +SCP="scp -P $DESTINYPORT -i $KEYFILE" +CFG="/zones/tools/cfg" +BRAND=`/usr/sbin/vmadm get ${UUID} | json brand | tr -d '\n'` +ZONEPATH=`vmadm get ${UUID} | json zonepath | tr -d '\n' | sed 's/\///'` + +# chequeamos la existencia del archivo llave +if [ ! -f $KEYFILE ]; then + echo "ssh $KEYFILE inexistent!" + echo "Create it please" + exit 1 +fi + +snapshot() +{ + zfs snapshot $1@`date +%Y%m%d` + zfs send $1@`date +%Y%m%d` | $SSH $NODODESTINO zfs receive $1 + zfs snapshot $1@`date +%Y%m%d`.incremental + zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $NODODESTINO zfs receive $1 +} + +# capturamos el alias que vmadm usa en base64 y que da problemas con el mitico zonecfg + +ALIAS=`vmadm get ${UUID} | json alias | tr -d '\n'` +zonecfg -z ${UUID} "select attr name=alias; set value=temporal; end" + +# creamos snapshot, lo enviamos, creamos incremental y la enviamos + +snapshot ${ZONEPATH} + +# verificamos si estamos tratando con una kvm y si es asi la respaldamos +echo "verificamos filesystems (kvm) adicionales..." + +if [ $BRAND = "kvm" ]; then + FILESYSTEM=`vmadm get ${UUID} | json disks.0.zfs_filesystem | tr -d '\n'` + snapshot ${FILESYSTEM} +fi + +# verificamos si tenemos datasets adicionales y los enviamos +echo "verificamos datasets adicionales..." + +DATASET=`vmadm get ${UUID} | json datasets.0 | tr -d '\n'` + +if [ -n "${DATASET}" ]; then + snapshot ${DATASET} +fi + +# exportamos configuracion +echo "exportamos configuracion..." + +zonecfg -z ${UUID} export > $CFG/${UUID}.cfg +$SCP $CFG/${UUID}.cfg $NODODESTINO:$CFG/${UUID}.cfg + +# destino +echo "enviamos config a destino..." + +$SSH $NODODESTINO zonecfg -z ${UUID} < $CFG/${UUID}.cfg +$SSH $NODODESTINO zoneadm -z ${UUID} attach +$SSH $NODODESTINO zoneadm -z ${UUID} halt + +# reestablecemos el alias que usa vmadm + +$SSH $NODODESTINO vmadm update ${UUID} alias=${ALIAS} +vmadm update ${UUID} alias=${ALIAS} + +# detenemos la zona en local + +zoneadm -z ${UUID} halt + +# iniciamos la zona en remoto + +$SSH $NODODESTINO zoneadm -z ${UUID} boot + + +# TODO: +# - puede haber mas de un FILESYSTEM en la zona, necesitamos iterar por el array y lanzar la funcion snapshot sobre cada uno de ellos +# - puede haber mas de un DATASET en la zona, necesitamos iterar por el array y lanzar la funcion snapshot sobre cada uno From 4576d4ea5b25928ef93599667f171d9fde7db0bb Mon Sep 17 00:00:00 2001 From: pinkfeet Date: Sat, 2 Feb 2019 10:57:35 +0100 Subject: [PATCH 06/25] =?UTF-8?q?A=C3=B1ado=20soporte=20para=20bhyve=20a?= =?UTF-8?q?=20zonemigrate.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonemigrate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 zonemigrate.sh diff --git a/zonemigrate.sh b/zonemigrate.sh old mode 100644 new mode 100755 index f566869..899c724 --- a/zonemigrate.sh +++ b/zonemigrate.sh @@ -44,7 +44,7 @@ snapshot ${ZONEPATH} # verificamos si estamos tratando con una kvm y si es asi la respaldamos echo "verificamos filesystems (kvm) adicionales..." -if [ $BRAND = "kvm" ]; then +if [ $BRAND = "kvm" ] || [ $BRAND = "bhyve" ] ; then FILESYSTEM=`vmadm get ${UUID} | json disks.0.zfs_filesystem | tr -d '\n'` snapshot ${FILESYSTEM} fi From d37d862ea774d5e320a153f0db36cc02564106ca Mon Sep 17 00:00:00 2001 From: pinkfeet Date: Sat, 2 Feb 2019 12:42:34 +0100 Subject: [PATCH 07/25] =?UTF-8?q?a=C3=B1ado=20getopt=20al=20control=20de?= =?UTF-8?q?=20parametros=20de=20entrada?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonemigrate.sh | 46 ++++++++++++++++++++++++++++++++-------------- 1 file changed, 32 insertions(+), 14 deletions(-) diff --git a/zonemigrate.sh b/zonemigrate.sh index 899c724..b60f214 100755 --- a/zonemigrate.sh +++ b/zonemigrate.sh @@ -1,13 +1,31 @@ #!/usr/bin/bash -if [ "$#" -ne 2 ]; then - echo "Illegal number of parameters" - echo "Usage: $0 {UUID} {DESTINYNODE}" +usage() +{ + echo "Usage: $0 -z UUID -h hostname" >&2 exit 1 -fi +} -UUID=$1 -NODODESTINO=$2 +while getopts "z:h:" opt; +do + case "$opt" in + z) + UUID=$OPTARG + ;; + h) + HOSTNAME=$OPTARG + ;; + *) + usage + ;; + esac +done + +shift $((OPTIND-1)) + +if [ -z "${UUID}" ] || [ -h "${HOSTNAME}" ]; then + usage +fi KEYFILE="/usbkey/ssh/id_rsa" DESTINYPORT="2221" @@ -27,9 +45,9 @@ fi snapshot() { zfs snapshot $1@`date +%Y%m%d` - zfs send $1@`date +%Y%m%d` | $SSH $NODODESTINO zfs receive $1 + zfs send $1@`date +%Y%m%d` | $SSH $HOSTNAME zfs receive $1 zfs snapshot $1@`date +%Y%m%d`.incremental - zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $NODODESTINO zfs receive $1 + zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $HOSTNAME zfs receive $1 } # capturamos el alias que vmadm usa en base64 y que da problemas con el mitico zonecfg @@ -62,18 +80,18 @@ fi echo "exportamos configuracion..." zonecfg -z ${UUID} export > $CFG/${UUID}.cfg -$SCP $CFG/${UUID}.cfg $NODODESTINO:$CFG/${UUID}.cfg +$SCP $CFG/${UUID}.cfg $HOSTNAME:$CFG/${UUID}.cfg # destino echo "enviamos config a destino..." -$SSH $NODODESTINO zonecfg -z ${UUID} < $CFG/${UUID}.cfg -$SSH $NODODESTINO zoneadm -z ${UUID} attach -$SSH $NODODESTINO zoneadm -z ${UUID} halt +$SSH $HOSTNAME zonecfg -z ${UUID} < $CFG/${UUID}.cfg +$SSH $HOSTNAME zoneadm -z ${UUID} attach +$SSH $HOSTNAME zoneadm -z ${UUID} halt # reestablecemos el alias que usa vmadm -$SSH $NODODESTINO vmadm update ${UUID} alias=${ALIAS} +$SSH $HOSTNAME vmadm update ${UUID} alias=${ALIAS} vmadm update ${UUID} alias=${ALIAS} # detenemos la zona en local @@ -82,7 +100,7 @@ zoneadm -z ${UUID} halt # iniciamos la zona en remoto -$SSH $NODODESTINO zoneadm -z ${UUID} boot +$SSH $HOSTNAME zoneadm -z ${UUID} boot # TODO: From eb51ee8d97e05b0bdb57fb7eef187b54af278ec2 Mon Sep 17 00:00:00 2001 From: pinkfeet Date: Fri, 8 Feb 2019 13:01:04 +0100 Subject: [PATCH 08/25] =?UTF-8?q?a=C3=B1ado=20debug=20de=20comandos=20y=20?= =?UTF-8?q?control=20de=20valores=20de=20retorno?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonemigrate.sh | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) diff --git a/zonemigrate.sh b/zonemigrate.sh index b60f214..a0151e2 100755 --- a/zonemigrate.sh +++ b/zonemigrate.sh @@ -42,12 +42,29 @@ if [ ! -f $KEYFILE ]; then exit 1 fi +check() +{ + if [ $1 != 0 ]; then + echo "exiting ... $1" + exit $1 + else echo "done." + fi +} + snapshot() { + echo "creando snapshot de $1 ..." zfs snapshot $1@`date +%Y%m%d` + check $? + echo "enviando snapshot de $1 a $HOSTNAME ..." zfs send $1@`date +%Y%m%d` | $SSH $HOSTNAME zfs receive $1 + check $? + echo "creando snapshot incremental de $1 ..." zfs snapshot $1@`date +%Y%m%d`.incremental + check $? + echo "enviando snapshot incremental de $1 a $HOSTNAME ..." zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $HOSTNAME zfs receive $1 + check $? } # capturamos el alias que vmadm usa en base64 y que da problemas con el mitico zonecfg @@ -59,8 +76,8 @@ zonecfg -z ${UUID} "select attr name=alias; set value=temporal; end" snapshot ${ZONEPATH} -# verificamos si estamos tratando con una kvm y si es asi la respaldamos -echo "verificamos filesystems (kvm) adicionales..." +# verificamos si estamos tratando con una bhyve/kvm y si es asi la respaldamos +echo "verificamos filesystems (bhyve|kvm) adicionales..." if [ $BRAND = "kvm" ] || [ $BRAND = "bhyve" ] ; then FILESYSTEM=`vmadm get ${UUID} | json disks.0.zfs_filesystem | tr -d '\n'` @@ -102,7 +119,6 @@ zoneadm -z ${UUID} halt $SSH $HOSTNAME zoneadm -z ${UUID} boot - # TODO: # - puede haber mas de un FILESYSTEM en la zona, necesitamos iterar por el array y lanzar la funcion snapshot sobre cada uno de ellos # - puede haber mas de un DATASET en la zona, necesitamos iterar por el array y lanzar la funcion snapshot sobre cada uno From ed2e7883101a60213b595fde2649e2615218c52f Mon Sep 17 00:00:00 2001 From: pinkfeet Date: Fri, 8 Feb 2019 13:17:49 +0100 Subject: [PATCH 09/25] reemplazo variable HOSTNAME por SERVER para no tener problemas con esa variable del entorno --- zonemigrate.sh | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/zonemigrate.sh b/zonemigrate.sh index a0151e2..42bc1a7 100755 --- a/zonemigrate.sh +++ b/zonemigrate.sh @@ -13,7 +13,7 @@ do UUID=$OPTARG ;; h) - HOSTNAME=$OPTARG + SERVER=$OPTARG ;; *) usage @@ -23,7 +23,7 @@ done shift $((OPTIND-1)) -if [ -z "${UUID}" ] || [ -h "${HOSTNAME}" ]; then +if [ -z "${UUID}" ] || [ -h "${SERVER}" ]; then usage fi @@ -56,14 +56,14 @@ snapshot() echo "creando snapshot de $1 ..." zfs snapshot $1@`date +%Y%m%d` check $? - echo "enviando snapshot de $1 a $HOSTNAME ..." - zfs send $1@`date +%Y%m%d` | $SSH $HOSTNAME zfs receive $1 + echo "enviando snapshot de $1 a $SERVER ..." + zfs send $1@`date +%Y%m%d` | $SSH $SERVER zfs receive $1 check $? echo "creando snapshot incremental de $1 ..." zfs snapshot $1@`date +%Y%m%d`.incremental check $? - echo "enviando snapshot incremental de $1 a $HOSTNAME ..." - zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $HOSTNAME zfs receive $1 + echo "enviando snapshot incremental de $1 a $SERVER ..." + zfs send -i $1@`date +%Y%m%d` $1@`date +%Y%m%d`.incremental | $SSH $SERVER zfs receive $1 check $? } @@ -97,18 +97,18 @@ fi echo "exportamos configuracion..." zonecfg -z ${UUID} export > $CFG/${UUID}.cfg -$SCP $CFG/${UUID}.cfg $HOSTNAME:$CFG/${UUID}.cfg +$SCP $CFG/${UUID}.cfg $SERVER:$CFG/${UUID}.cfg # destino echo "enviamos config a destino..." -$SSH $HOSTNAME zonecfg -z ${UUID} < $CFG/${UUID}.cfg -$SSH $HOSTNAME zoneadm -z ${UUID} attach -$SSH $HOSTNAME zoneadm -z ${UUID} halt +$SSH $SERVER zonecfg -z ${UUID} < $CFG/${UUID}.cfg +$SSH $SERVER zoneadm -z ${UUID} attach +$SSH $SERVER zoneadm -z ${UUID} halt # reestablecemos el alias que usa vmadm -$SSH $HOSTNAME vmadm update ${UUID} alias=${ALIAS} +$SSH $SERVER vmadm update ${UUID} alias=${ALIAS} vmadm update ${UUID} alias=${ALIAS} # detenemos la zona en local @@ -117,7 +117,7 @@ zoneadm -z ${UUID} halt # iniciamos la zona en remoto -$SSH $HOSTNAME zoneadm -z ${UUID} boot +$SSH $SERVER zoneadm -z ${UUID} boot # TODO: # - puede haber mas de un FILESYSTEM en la zona, necesitamos iterar por el array y lanzar la funcion snapshot sobre cada uno de ellos From 87edcf26cf0674927f3d02c7541c3744b703597d Mon Sep 17 00:00:00 2001 From: pinkfeet Date: Fri, 8 Feb 2019 13:23:32 +0100 Subject: [PATCH 10/25] =?UTF-8?q?modifico=20el=20control=20de=20par=C3=A1m?= =?UTF-8?q?etros=20de=20-h=20a=20-z=20que=20es=20el=20correcto?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonemigrate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zonemigrate.sh b/zonemigrate.sh index 42bc1a7..1a9b69d 100755 --- a/zonemigrate.sh +++ b/zonemigrate.sh @@ -23,7 +23,7 @@ done shift $((OPTIND-1)) -if [ -z "${UUID}" ] || [ -h "${SERVER}" ]; then +if [ -z "${UUID}" ] || [ -z "${SERVER}" ]; then usage fi From 5d0946cd908a707d13f887f5aeb16ed128163e2b Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Fri, 16 Aug 2019 12:23:51 +0200 Subject: [PATCH 11/25] =?UTF-8?q?a=C3=B1ado=20el=20manifest=20del=20gestor?= =?UTF-8?q?=20de=20procesos=20fastcgi=20para=20catalyst?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- perl_fastcgi.xml | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 perl_fastcgi.xml diff --git a/perl_fastcgi.xml b/perl_fastcgi.xml new file mode 100644 index 0000000..968a968 --- /dev/null +++ b/perl_fastcgi.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 0f338108d7fb00ece18c35a6c4fcbb27d719d331 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Tue, 27 Aug 2019 22:21:03 +0200 Subject: [PATCH 12/25] =?UTF-8?q?modifico=20soporte=20bhyve,=20a=C3=B1ado?= =?UTF-8?q?=20soporte=20nfs=20y=20smb?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptofile.sh | 73 +++++++++++++++++++++++++++++---------------- 1 file changed, 48 insertions(+), 25 deletions(-) diff --git a/zonebackuptofile.sh b/zonebackuptofile.sh index 8d3b107..6221199 100755 --- a/zonebackuptofile.sh +++ b/zonebackuptofile.sh @@ -2,11 +2,12 @@ usage() { - echo "Usage: $0 -z UUID -d days -r folder -s server" >&2 + echo "Usage: $0 -z UUID -d days -r remote_folder -l local_folder -s server -t type" >&2 + echo "ex: $o -z bbba5ecb-5bda-47a5-e103-a6bfa368bf68 -d 1 -r remote_folder -l /zone/tools/nfsshare -s 192.168.5.243 -t nfs" >&2 exit 1 } -while getopts "z:d:r:s:" opt; +while getopts "z:d:r:l:s:t:" opt; do case "$opt" in z) @@ -16,11 +17,17 @@ do DAYS=$OPTARG ;; r) - FOLDER=$OPTARG + RFOLDER=$OPTARG + ;; + l) + LFOLDER=$OPTARG ;; s) SERVER=$OPTARG ;; + t) + TYPE=$OPTARG + ;; *) usage ;; @@ -29,50 +36,66 @@ done shift $((OPTIND-1)) -if [ -z "${UUID}" ] || [ -z "${DAYS}" ] || [ -z "${FOLDER}" ] || [ -z "${SERVER}" ]; then +if [ -z "${UUID}" || -z "${DAYS}" || -z "${RFOLDER}" || -z "${LFOLDER}" || -z "${SERVER}" && -z "${TYPE}" ]; then usage fi BRAND=`/usr/sbin/vmadm get $UUID | json brand | tr -d '\n'` -RUTADESTINO="/zones/tools/mounts" -RUTAORIGEN="/export/ftpbackup/${FOLDER}" -SERVIDOR="${SERVER}" - -mkdir -p $RUTADESTINO -mount $SERVIDOR:$RUTAORIGEN $RUTADESTINO - -if [ $? != 0 ]; then - echo "MOUNT FAILED." - umount $RUTADESTINO - exit +mkdir -p $LFOLDER + +if [ $TYPE = "nfs" ]; then + OVH="/export/ftpbackup/${RFOLDER}" + + mount $SERVER:$OVH $LFOLDER + + if [ $? != 0 ]; then + echo "MOUNT FAILED." + umount $LFOLDER + exit + fi +elif [ $TYPE = "smb" ]; then + mount -F smbfs //o6h.smartos5:c0c0l1s0@${SERVER}/${RFOLDER} $LFOLDER + + if [ $? != 0 ]; then + echo "MOUNT FAILED." + exit + fi fi -mkdir -p $RUTADESTINO/$UUID +mkdir -p $LFOLDER/$UUID if [ $? != 0 ]; then echo "FAIL TO CREATE FOLDER $UUID." - umount $RUTADESTINO + umount $LFOLDER exit fi # mantain backups of the last N days -find $RUTADESTINO/$UUID -type f -mtime +$DAYS -delete +find $LFOLDER/$UUID -type f -mtime +$DAYS -delete snapshot() { /usr/sbin/zfs snapshot zones/$1@`date +%Y%m%d` - /usr/sbin/zfs send zones/$1@`date +%Y%m%d` > $RUTADESTINO/$UUID/$1@`date +%Y%m%d` + /usr/sbin/zfs send zones/$1@`date +%Y%m%d` > $LFOLDER/$UUID/$1@`date +%Y%m%d` } snapshot $UUID -if [ $BRAND = "kvm" ] || [ $BRAND = "bhyve" ] ; then - snapshot $UUID-disk0 -elif [ $BRAND = "bhyve" ]; then - snapshot $UUID-disk0 +if [ $BRAND = "kvm" ] +then + snapshot ${UUID}-disk0 +elif [ $BRAND = "bhyve" ] +then + snapshot ${UUID}/disk0 fi -/usr/sbin/zonecfg -z $UUID export > $RUTADESTINO/$UUID/$UUID.`date +%Y%m%d`.cfg +/usr/sbin/zonecfg -z $UUID export > $LFOLDER/$UUID/$UUID.`date +%Y%m%d`.cfg + +if [ $TYPE = "nfs" ]; then + umount $LFOLDER +fi -umount $RUTADESTINO +## TODO +# smb: query for username +# smb: query for password From 47cb0671e770b8fd889cc13fd4cc97bb7bd0a8c0 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Tue, 27 Aug 2019 22:36:28 +0200 Subject: [PATCH 13/25] me he cargado el nodo con este comando, posiblemente el find lo hizo --- zonebackuptofile.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/zonebackuptofile.sh b/zonebackuptofile.sh index 6221199..e3a8e98 100755 --- a/zonebackuptofile.sh +++ b/zonebackuptofile.sh @@ -3,7 +3,7 @@ usage() { echo "Usage: $0 -z UUID -d days -r remote_folder -l local_folder -s server -t type" >&2 - echo "ex: $o -z bbba5ecb-5bda-47a5-e103-a6bfa368bf68 -d 1 -r remote_folder -l /zone/tools/nfsshare -s 192.168.5.243 -t nfs" >&2 + echo "ex: $0 -z bbba5ecb-5bda-47a5-e103-a6bfa368bf68 -d 1 -r remote_folder -l /zone/tools/nfsshare -s 192.168.5.243 -t nfs" >&2 exit 1 } @@ -72,7 +72,7 @@ if [ $? != 0 ]; then fi # mantain backups of the last N days -find $LFOLDER/$UUID -type f -mtime +$DAYS -delete +#find $LFOLDER/$UUID -type f -mtime +$DAYS -delete snapshot() { From e4cd4e5dc0d1b913a54f16d6618282606f16502e Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 4 Mar 2020 18:01:12 +0100 Subject: [PATCH 14/25] =?UTF-8?q?a=C3=B1ado=20zonebackuptozone.sh?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptozone.sh | 85 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 zonebackuptozone.sh diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh new file mode 100644 index 0000000..652ea02 --- /dev/null +++ b/zonebackuptozone.sh @@ -0,0 +1,85 @@ +#!/usr/bin/bash + +usage() +{ + echo "Usage: $0 [ -s hostname ] [ -z UUID ] [ -b backupzone ] [ -i idbackupzone ]" >&2 + exit 1 +} + +check_err() +{ + STATUS=$? + if [ ${STATUS} -ne 0 ]; then + echo "Unexpected error: ${STATUS}" + exit ${STATUS} + fi +} + +check_snap() +{ + ZONE=$1 + zfs list -t snapshot zones/${ZONE}@`date +%Y%m%d` 2&>/dev/null 1>&2 +} + +create_snap() +{ + ZONE=$1 + echo "Creating snapshot of ${ZONE}..." + zfs snapshot zones/${ZONE}@`date +%Y%m%d` + check_err + echo "done." +} + +while getopts ":s:z:b:i:" opt; +do + case "$opt" in + s) + SOURCEGZ=$OPTARG + ;; + z) + UUID=$OPTARG + ;; + b) + BACKUPZ=$OPTARG + ;; + i) + IDBACKUPZ=$OPTARG + ;; + \?) + echo "Error: Invalid Option: -${OPTARG}" >&2 + usage + ;; + :) + echo "Error: -${OPTARG} requires an argument." + usage + ;; + *) + usage + ;; + esac +done + +shift $((OPTIND -1 )) + +if [ -z ${SOURCEGZ} ] || [ -z "${UUID}" ] || [ -z ${BACKUPZ} ] || [ -z ${IDBACKUPZ} ]; then + usage +fi + +echo "Checking for snapshot of ${UUID}" +check_snap ${UUID} +if [ $? -ne 0 ]; then + create_snap ${UUID} +else + echo "Snapshot of ${UUID} already available..." + echo "done." +fi + +echo "Sending snapshot to ${BACKUPZ}..." +zfs send zones/${UUID}@`date +%Y%m%d` | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs receive zones/${IDBACKUPZ}/data/${SOURCEGZ}/${UUID} +check_err +echo "done." + +echo "Sending config to ${BACKUPZ}..." +zonecfg -z ${UUID} export | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ "cat >/data/${SOURCEGZ}/${UUID}.cfg" +check_err +echo "done." From 2f1ebcf834509d041b44e4dffc17fbd350ab991b Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 4 Mar 2020 18:27:31 +0100 Subject: [PATCH 15/25] =?UTF-8?q?1=20en=20la=20funcion=20create=5Fsnap=20c?= =?UTF-8?q?ambio=20la=20variable=20ZONE=20por=20DS=202=20a=C3=B1ado=20func?= =?UTF-8?q?ion=20para=20enviar=20dataset=203=20a=C3=B1ado=20verificacion?= =?UTF-8?q?=20de=20datasets=20adicionales=20y=20los=20copiamos=20tambien?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptozone.sh | 88 ++++++++++++++++++++++++++++++--------------- 1 file changed, 60 insertions(+), 28 deletions(-) mode change 100644 => 100755 zonebackuptozone.sh diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh old mode 100644 new mode 100755 index 652ea02..5bb5b8a --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -6,29 +6,6 @@ usage() exit 1 } -check_err() -{ - STATUS=$? - if [ ${STATUS} -ne 0 ]; then - echo "Unexpected error: ${STATUS}" - exit ${STATUS} - fi -} - -check_snap() -{ - ZONE=$1 - zfs list -t snapshot zones/${ZONE}@`date +%Y%m%d` 2&>/dev/null 1>&2 -} - -create_snap() -{ - ZONE=$1 - echo "Creating snapshot of ${ZONE}..." - zfs snapshot zones/${ZONE}@`date +%Y%m%d` - check_err - echo "done." -} while getopts ":s:z:b:i:" opt; do @@ -65,8 +42,46 @@ if [ -z ${SOURCEGZ} ] || [ -z "${UUID}" ] || [ -z ${BACKUPZ} ] || [ -z ${IDBACKU usage fi -echo "Checking for snapshot of ${UUID}" +# functions + +check_err() +{ + STATUS=$? + if [ ${STATUS} -ne 0 ]; then + echo "Unexpected error: ${STATUS}" + exit ${STATUS} + fi +} + +check_snap() +{ + ZONE=$1 + echo "Checking for snapshot of ${UUID}" + zfs list -t snapshot zones/${ZONE}@`date +%Y%m%d` 2&>/dev/null 1>&2 +} + +create_snap() +{ + DS=$1 + echo "Creating snapshot of ${DS}..." + zfs snapshot zones/${DS}@`date +%Y%m%d` + check_err + echo "done." +} + +send_snap () +{ + DATASET=$1 + echo "Sending snapshot to ${BACKUPZ}..." + zfs send zones/${DATASET}@`date +%Y%m%d` | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs receive zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET} + check_err + echo "done." +} + +# main + check_snap ${UUID} + if [ $? -ne 0 ]; then create_snap ${UUID} else @@ -74,10 +89,27 @@ else echo "done." fi -echo "Sending snapshot to ${BACKUPZ}..." -zfs send zones/${UUID}@`date +%Y%m%d` | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs receive zones/${IDBACKUPZ}/data/${SOURCEGZ}/${UUID} -check_err -echo "done." +send_snap ${UUID} + +# we check this UUID for additional datasets + +echo "Look for addtional datasets..." +DATASET=`vmadm get ${UUID} | json datasets.0 | tr -d '\n'` + +if [ -n "${DATASET}" ]; then + check_snap ${DATASET} +fi + +if [ $? -ne 0 ]; then + create_snap ${DATASET} +else + echo "Snapshot of ${DATASET} already available..." + echo "done." +fi + +send_snap ${DATASET} + +# we send the config echo "Sending config to ${BACKUPZ}..." zonecfg -z ${UUID} export | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ "cat >/data/${SOURCEGZ}/${UUID}.cfg" From df4ecadcfa6acec593ad6962b4dd946b8f113bdf Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 4 Mar 2020 18:57:44 +0100 Subject: [PATCH 16/25] =?UTF-8?q?1=20en=20check=5Fsnap=20modifico=20UUID?= =?UTF-8?q?=20por=20zone=20en=20un=20echo=202=20a=C3=B1ado=20sed=20al=20co?= =?UTF-8?q?mando=20para=20obtener=20el=20dataset=20adicional=20ya=20que=20?= =?UTF-8?q?inclue=20'zones/'=20y=20esto=20colisiona=20con=20mis=20funcione?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptozone.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 5bb5b8a..20e5cf3 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -56,8 +56,8 @@ check_err() check_snap() { ZONE=$1 - echo "Checking for snapshot of ${UUID}" - zfs list -t snapshot zones/${ZONE}@`date +%Y%m%d` 2&>/dev/null 1>&2 + echo "Checking for snapshot of ${ZONE}" + zfs list -t snapshot zones/${ZONE}@`date +%Y%m%d` 2>/dev/null 1>&2 } create_snap() @@ -94,7 +94,7 @@ send_snap ${UUID} # we check this UUID for additional datasets echo "Look for addtional datasets..." -DATASET=`vmadm get ${UUID} | json datasets.0 | tr -d '\n'` +DATASET=`vmadm get ${UUID} | json datasets.0 | sed 's/zones\///' | tr -d '\n'` if [ -n "${DATASET}" ]; then check_snap ${DATASET} From 4a1a6b9fe83d554fdbd08db6d7e2edfa7a1960b7 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Wed, 4 Mar 2020 20:03:39 +0100 Subject: [PATCH 17/25] =?UTF-8?q?a=C3=B1adoinformacion=20a=20la=20salida?= =?UTF-8?q?=20del=20comando?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptozone.sh | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 20e5cf3..86c2719 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -80,12 +80,18 @@ send_snap () # main +echo "--- +BACKUP_ZONE: ${IDBACKUPZ} +BACKUP_ZONE_IP: ${BACKUPZ} +UUID to backup: ${UUID} +---" + check_snap ${UUID} if [ $? -ne 0 ]; then create_snap ${UUID} else - echo "Snapshot of ${UUID} already available..." + echo "Snapshot of ${UUID} already available" echo "done." fi @@ -93,7 +99,7 @@ send_snap ${UUID} # we check this UUID for additional datasets -echo "Look for addtional datasets..." +echo "Look for addtional datasets" DATASET=`vmadm get ${UUID} | json datasets.0 | sed 's/zones\///' | tr -d '\n'` if [ -n "${DATASET}" ]; then @@ -103,7 +109,7 @@ fi if [ $? -ne 0 ]; then create_snap ${DATASET} else - echo "Snapshot of ${DATASET} already available..." + echo "Snapshot of ${DATASET} already available" echo "done." fi From 31d052b371f98657a515db054a06ff16ea96f27f Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Thu, 5 Mar 2020 16:45:51 +0100 Subject: [PATCH 18/25] =?UTF-8?q?corregido=20error=20en=20flujo=20de=20con?= =?UTF-8?q?trol=20e=20informacion=20cambio=20comparacion=20-n=20por=20-z,?= =?UTF-8?q?=20el=20-n=20no=20verifica=20la=20asignacion=20de=20la=20variab?= =?UTF-8?q?le=20a=C3=B1ado=20puntos=20suspensitos=20para=20dar=20sensacion?= =?UTF-8?q?=20de=20trabajo?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptozone.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 86c2719..bf6bebb 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -56,7 +56,7 @@ check_err() check_snap() { ZONE=$1 - echo "Checking for snapshot of ${ZONE}" + echo "Checking for snapshot of ${ZONE}..." zfs list -t snapshot zones/${ZONE}@`date +%Y%m%d` 2>/dev/null 1>&2 } @@ -99,10 +99,11 @@ send_snap ${UUID} # we check this UUID for additional datasets -echo "Look for addtional datasets" +echo "Looking for addtional datasets in ${UUID}..." DATASET=`vmadm get ${UUID} | json datasets.0 | sed 's/zones\///' | tr -d '\n'` +echo "done." -if [ -n "${DATASET}" ]; then +if [ -z "${DATASET}" ]; then check_snap ${DATASET} fi @@ -110,7 +111,7 @@ if [ $? -ne 0 ]; then create_snap ${DATASET} else echo "Snapshot of ${DATASET} already available" - echo "done." + echo "Skipping create snapshot..." fi send_snap ${DATASET} From 9afb4a4f35253d02eceb6520235b6907877cfdcd Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Fri, 6 Mar 2020 14:55:08 +0100 Subject: [PATCH 19/25] Arreglamos sentencia de control y bucle El -z necesita negarse para entrar en el bucle de chequeo, creacion y envio del snapshot. Incluye el resto de sentencias de control if dentro de la sentencia de control if inicial para que tenga sentido el resto de acciones --- zonebackuptozone.sh | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index bf6bebb..6d0573c 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -103,18 +103,18 @@ echo "Looking for addtional datasets in ${UUID}..." DATASET=`vmadm get ${UUID} | json datasets.0 | sed 's/zones\///' | tr -d '\n'` echo "done." -if [ -z "${DATASET}" ]; then +if [ ! -z "${DATASET}" ]; then check_snap ${DATASET} -fi -if [ $? -ne 0 ]; then - create_snap ${DATASET} -else - echo "Snapshot of ${DATASET} already available" - echo "Skipping create snapshot..." -fi + if [ $? -ne 0 ]; then + create_snap ${DATASET} + else + echo "Snapshot of ${DATASET} already available" + echo "Skipping create snapshot..." + fi -send_snap ${DATASET} + send_snap ${DATASET} +fi # we send the config From 4ea77cb0d16bbfdea5b632b7200a80386cc212c5 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Sat, 7 Mar 2020 10:48:03 +0100 Subject: [PATCH 20/25] zfs send requiere -F para reemplazar dataset previo --- zonebackuptozone.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 6d0573c..5a5abc4 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -73,7 +73,7 @@ send_snap () { DATASET=$1 echo "Sending snapshot to ${BACKUPZ}..." - zfs send zones/${DATASET}@`date +%Y%m%d` | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs receive zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET} + zfs send zones/${DATASET}@`date +%Y%m%d` | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs receive -F zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET} check_err echo "done." } From af3dab7c54c45d0321ec254ccd6c6ac60c5ac585 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Mon, 9 Mar 2020 18:54:35 +0100 Subject: [PATCH 21/25] Elimino snapshot en destino Al hacerlo asi podremos enviar los nuevos snapshots. Esta por ver si usar -R al enviar, zfs send podemos evitar tener que borrar los snapshots existentes en el destino. --- zonebackuptozone.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 5a5abc4..3ffa6c1 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -76,6 +76,10 @@ send_snap () zfs send zones/${DATASET}@`date +%Y%m%d` | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs receive -F zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET} check_err echo "done." + echo "Deleting snapshot on ${BACKUPZ}..." + ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs destroy zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET}@`date +%Y%m%d` + check_err + echo "done." } # main From ef255d79b25ae5018867a008f6ad8731cdee1938 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Thu, 12 Mar 2020 13:54:49 +0100 Subject: [PATCH 22/25] =?UTF-8?q?A=C3=B1adoinformacion=20sobre=20children?= =?UTF-8?q?=20datasets,=20encontrados=20o=20no.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zonebackuptozone.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 3ffa6c1..bafab02 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -103,11 +103,12 @@ send_snap ${UUID} # we check this UUID for additional datasets -echo "Looking for addtional datasets in ${UUID}..." +echo "Looking for addtional children datasets in ${UUID}..." DATASET=`vmadm get ${UUID} | json datasets.0 | sed 's/zones\///' | tr -d '\n'` echo "done." if [ ! -z "${DATASET}" ]; then + echo "Finded children dataset: ${DATASET}" check_snap ${DATASET} if [ $? -ne 0 ]; then @@ -118,6 +119,8 @@ if [ ! -z "${DATASET}" ]; then fi send_snap ${DATASET} +else + echo "No children datasets finded." fi # we send the config From b7864728a9a871e76bfa08f0ceaf91b6ed0a2e9a Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Sun, 5 Apr 2020 12:23:53 +0200 Subject: [PATCH 23/25] We must delete local snapshots --- zonebackuptozone.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index bafab02..b5f849e 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -80,6 +80,10 @@ send_snap () ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs destroy zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET}@`date +%Y%m%d` check_err echo "done." + echo "deleting local snapshot zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET}@`date +%Y%m%d`..." + zfs destroy zones/${DATASET}@`date +%Y%m%d` + check_err + echo "done." } # main From 82f0cb16ae33fff69a576ac51b1f5182e40cee9e Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Sun, 5 Apr 2020 12:27:42 +0200 Subject: [PATCH 24/25] Fix bad dataset information in echo --- zonebackuptozone.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index b5f849e..8b12704 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -80,7 +80,7 @@ send_snap () ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ zfs destroy zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET}@`date +%Y%m%d` check_err echo "done." - echo "deleting local snapshot zones/${IDBACKUPZ}/data/${SOURCEGZ}/${DATASET}@`date +%Y%m%d`..." + echo "deleting local snapshot zones/${DATASET}@`date +%Y%m%d`..." zfs destroy zones/${DATASET}@`date +%Y%m%d` check_err echo "done." From 954920c7d02a51122e13044e2a1c7bdf83687dc6 Mon Sep 17 00:00:00 2001 From: Pablo Sarria Date: Mon, 16 Nov 2020 14:04:48 +0100 Subject: [PATCH 25/25] muevo el .cfg dentro del backup de la zona --- zonebackuptozone.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/zonebackuptozone.sh b/zonebackuptozone.sh index 8b12704..523effa 100755 --- a/zonebackuptozone.sh +++ b/zonebackuptozone.sh @@ -130,6 +130,6 @@ fi # we send the config echo "Sending config to ${BACKUPZ}..." -zonecfg -z ${UUID} export | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ "cat >/data/${SOURCEGZ}/${UUID}.cfg" +zonecfg -z ${UUID} export | ssh -i /usbkey/ssh/id_rsa -p 2221 $BACKUPZ "cat >/data/${SOURCEGZ}/${UUID}/${UUID}.cfg" check_err echo "done."