#!/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
No hay comentarios:
Publicar un comentario