Advertisement
Guest User

climbo

a guest
Jul 28th, 2009
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 4.02 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. ############################################################
  4. #                                                          #
  5. # Parámetros de configuración. Modificar según necesidades #
  6. #                                                          #
  7. ############################################################
  8.  
  9. maquina=el nombre de tu máquina                  
  10. origen="/home/usuario"              
  11. destino="/media/pendrive/Backups" #donde se monte el pendrive            
  12. fecha="`date +%d-%m-%Y`"
  13. fecha2="`date +%d-%m`"
  14. dow=`date +%w`
  15. dowl=`date +%a`
  16. dom=`date +%d`
  17. dm=`date +%d%m`
  18. timedir="/media/pendrive/Backups/Completos"  
  19. tar="/bin/tar"
  20. excluidos="/media/pendrive/excluidos.lst"
  21.  
  22. clear
  23. sleep 1
  24. echo
  25. echo "*****************************************************************************"
  26. echo "*                                                                           *"
  27. echo "* Script de backup incremental en un Dispositivo USB >> GLXBACKUP <<        *"
  28. echo "*                                                                           *"
  29. echo "* Fecha y hora de la copia de seguridad                                     *"
  30. echo "* `date +%d-%m-%Y`   -   `date +%H:%M:%S`                                                 *"
  31. echo "*                                                                           *"
  32. echo "* Puedes modificarlo y/o distribuirlo bajo los términos de la licencia GPL  *"
  33. echo "*                                                                           *"
  34. echo "* Autor: Gerardo Seguín Giráldez (galux) galux_at_esdebian.org - Dic. '08   *"
  35. echo "*                                                                           *"
  36. echo "*****************************************************************************"
  37. sleep 2
  38. echo
  39. echo " >> Introduzca ahora su Pendrive en el puerto USB"
  40. sleep 4
  41. echo
  42. echo " >> Se va a iniciar la copia de seguridad en unos segundos. Presione Ctrl + C si desea cancelarla"
  43. sleep 2
  44. echo
  45. printf " >> Iniciando script de backup GLXBACKUP"
  46. sleep 2
  47. echo
  48. echo
  49. printf " >> Comprobando si el dispositivo USB está montado, si no es así, se montará."
  50. echo
  51. sleep 1
  52. printf "    ."
  53. sleep 1
  54. printf "."
  55. sleep 1
  56. printf "."
  57. sleep 1
  58. printf "."
  59. echo
  60. echo " >> correcto"
  61. sleep 1
  62. echo
  63. sleep 2
  64. echo " >> Se va a montar el dispositivo USB en /media/pendrive."
  65. sleep 1
  66. cmount=`mount | grep /dev/sdb`
  67. if [[ -z $cmount ]];then
  68.   mount -v /dev/sdb1
  69. sleep 2
  70. echo
  71. echo " >> Dispositivo USB montado correctamente"
  72. fi
  73. sleep 2
  74. echo
  75. echo " >> La copia de seguridad de $origen va a ser archivada en su dispositivo USB con el nombre $maquina-$fecha.tar.bz2"
  76. sleep 2
  77. echo
  78. echo " >> Iniciando el proceso de copia de seguridad de $origen"
  79. sleep 2
  80. echo
  81. echo " >> Por favor aguarde, se está realizando la copia de seguridad; que tardará más o menos, en función de los archivos a copiar"
  82. sleep 4
  83. echo
  84. # comienza la copia de seguridad...
  85. # backup entero mensual
  86.         if [ $dom = "01" ]; then
  87.         $tar --exclude-from=$excluidos -jcvf $destino/$maquina-$dm.$fecha2.tar.bz2 $origen
  88. chmod 770 $destino/$maquina-$dm.$fecha2.tar.bz2
  89. fi
  90.  
  91. # Backup total semanal
  92. if [ $dow = "0" ]; then
  93.         ahora=`date +%d-%b`
  94.         echo $ahora > $timedir/$maquina-Completos
  95.         $tar --exclude-from=$excluidos -jcvf $destino/$maquina-$dowl.$fecha2.tar.bz2 $origen
  96. chmod 770 $destino/$maquina-$dowl.$fecha2.tar.bz2
  97.  
  98. # Backup incremental que sobreescribe el de la semana pasada
  99. else
  100.        NEWER="--newer `cat $timedir/$maquina-Completos`"
  101.        $tar --exclude-from=$excluidos -jcvf $destino/$maquina-$dowl.$fecha2.tar.bz2 $origen
  102.        chmod 770 $destino/$maquina-$dowl.$fecha2.tar.bz2
  103. echo
  104. sleep 2
  105. echo
  106. echo " >> Copia de seguridad realizada con éxito. Hora de finalización: `date +%H:%M:%S`"
  107. sleep 2
  108. echo
  109. echo " >> Ahora se desmontará el dispositivo USB"
  110. sleep 2
  111. echo
  112. umount -v /dev/sdb1
  113. sleep 2
  114. echo
  115. echo " >> El dispositivo USB se ha desmontado correctamente"
  116. sleep 2
  117. echo
  118. echo " >> Gracias por utilizar este script. Recuerde hacer copias de seguridad periódicas. Hasta pronto!"
  119.  
  120. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement