Bienvenidos

Todos estos pasos descriptos fueron probados en ambientes productivos
Mostrando entradas con la etiqueta zfs snapshot remoto. Mostrar todas las entradas
Mostrando entradas con la etiqueta zfs snapshot remoto. Mostrar todas las entradas

jueves, 4 de febrero de 2016

zfs snapshot remoto para backup de Sistema Operativo

La finalidad es backupear en forma remota a un equipo que montamos por nfs, un backup de sistema operativo, con zfs
#!/usr/bin/ksh -x
## Script de resguardo de Sistema Operativo Solaris
### Monto por NFS
mount 10.xx.33.114:/BACKUPS /mnt
MONTO=$?
UBICA=/mnt/`uname -n`
cd $UBICA
LOGerr="/export/home/backup/LOGS/backup_SO_Zonas_`date +%d_%m_%y.err`"
LOG="/export/home/backup/LOGS/backup_SO_Zonas_`date +%d_%m_%y`"
MAILTO="root tecnico.solaris@gmail.com  "
###Variables agregadas para zfs
RPOOL=rpool

#
### FIN DE ASIGNACION DE VARIABLES ESPECIFICAS
#
if [ "$MONTO" -eq 0 ]
then
        :       echo "# El FS por NFS fue montado OK"
else
        echo "error NO se pudo montar por NFS el ERROR fue $MONTO"
        echo "################################"
        echo "################################"
        exit 1
fi
backup_FS_to_NFS()     {
      echo

        if zpool status $RPOOL
        then
                echo backupZFS
                ### DATOS ZFS
                zpool list $RPOOL > $UBICA/zpool.list.$RPOOL.cfg
                zpool get all $RPOOL > $UBICA/zpool.getall.$RPOOL.cfg
                zfs get -r all $RPOOL > $UBICA/zfs.getall.$RPOOL.cfg
                zpool status $RPOOL > $UBICA/zpool.status.$RPOOL.cfg
                DISK=`zpool status $RPOOL | grep c.d.s. | awk '{ print $1 }'`
                for k in $DISK
                do
                k=`echo $k | sed "s/\/dev\/rdsk\///" `
                prtvtoc /dev/rdsk/$k > $UBICA/prtvtoc.$RPOOL.$k.lst
                done
                ifconfig -a > $UBICA/ifconfig-a.cfg
                zfs snapshot -r ${RPOOL}@archive
                zfs destroy ${RPOOL}/swap@archive
                zfs destroy ${RPOOL}/dump@archive
                date >> $UBICA/backup_LOG.log
                zfs send -Rv ${RPOOL}@archive  | cat > $UBICA/${RPOOL}.zfs
                zfs destroy -r ${RPOOL}@archive
        else
                ###echo ":::: Montando fsssnap"
                #fssnap -F ufs -o backing-store=/snaps/root.backup.dmp /
                echo ":::: Efectuando DUMP de / (`date +%d_%m-%T`)"
                ufsdump 0uf $UBICA/BARRA.DMP /
                echo ":::: BACKUP: FIN backup fs /  (`date +%d_%m-%T`)"
        fi
} 1>>$LOG 2>>$LOGerr
backup_NFS
################################
cp $LOG $UBICA
cp $LOG.err $UBICA
cp $EXPLORER/explorer*gz $UBICA
cd /
umount /mnt
echo $?

### Notificar Resultados via email
cat $LOGerr|mailx -s "Backup `uname -n`" $MAILTO