Menu

Proyecto Bakup

Santiago moreno

Proyecto Bakup

Existe la posibilidad de tener una ayuda extra escribiendo en consola:
$ man bakup
una vez instalado el paquete.
Este proyecto se creo para completar la practica del segundo cuatrimestre de Administración de Sistemas .
Seguramente tendrá muchos errores y muchos agujeros de seguridad y de configuración pero se esta intentando mejorar lo mas posible, si detecta algún error o mejora por favor comuníquenlo o modifíquenlo puesto que también se incluirá el código de los scripts para quien los necesite, queda completamente abierto a modificar subir y lo que se precise para que el proyecto pueda ser mejorado y para quien le resulte útil.
A continuación están los enlaces de la documentación de cada uno de los scripts:

Principal Bakup.sh

Secundario demonio.sh

Secundario bakupin.sh

Secundario bakuptot.sh

Secundario borrarBiejo.sh

Problemas

ayudas instalación y utilización

Project Admins:

Código fuente


Discussion

  • Santiago moreno

    Santiago moreno - 2012-09-06

    Bakup.sh

    Realizado por: Santiago Moreno Morales

    Licencia: LGPL

    Fecha de creación:25/03/2012

    Llamada:bakup.sh directorio_para_realizar_backup

    Interacción:
    No requiere ninguna excepto pasarle por parámetro el directorio

    Devuelve:
    Es un plan de bakup 1-3-1 los archivos se crean
    con el nombre de la fecha en el directorio que se le a indicado

    Comentarios:
    1º El programa tiene un sistema de seguridad para que no se quede con un directorio erróneo y que de no existir este directorio te permite crearlo automáticamente. En caso de haberlo escrito mal te permite corregirlo.
    2º Una vez aceptado el directorio se dispondrá a crear los demonios mediante cron, para esta opción se vale del script demonio.sh

     

    Last edit: Santiago moreno 2012-09-07
  • Santiago moreno

    Santiago moreno - 2012-09-06

    demonio.sh

    Realizado por: Santiago Moreno Morales

    Licencia: LGPL

    Fecha de creación: 25/03/2012

    Llamada: demonio.sh minutos horas día_mes mes día_semana "comando

    Detalle llamada:
    Las casillas que se desean dejar vacías se tienen que rellenar con asteriscos(*)separados
    por espacio, ejemplo [12 4 1,2 * * /usr/scripts.sh]

    Mas información sobre cron:
    man cron

    Interacción:
    No se requiere ninguna excepto pasarle por parámetro los intervalos o fechas cuando ejecutar los comandos o scripts y la ruta del script o en su defecto el comando

    Devuelve: programa un demonio cron en la fecha indicada, para el script indicado

     

    Last edit: Santiago moreno 2012-09-06
  • Santiago moreno

    Santiago moreno - 2012-09-06

    bakupin.sh

    Realizado por: Santiago Moreno

    Licencia: LGPL

    Fecha de creación:3/06/2012

    Llamada:bakupin.sh directorio_destino

    Interacción:
    No requiere ninguna excepto pasarle por parámetro el directorio

    Devuelve:
    Una copia incremental con el nombre de la fecha, en el directorio que se le a indicado

    Comentarios:
    1º La copia incremental se crea mediante Rsync
    2º Ejecuta el script que borra la copia incremental del anterior mes con borrarBiejo.sh

     

    Last edit: Santiago moreno 2012-09-06
  • Santiago moreno

    Santiago moreno - 2012-09-06

    bakuptot.sh

    Realizado por: Santiago Moreno

    Licencia: LGPL

    Fecha de creación:3/06/2012

    Llamada:bakuptot.sh directorio_destino

    Interacción:
    No requiere ninguna excepto pasarle por parámetro el directorio

    Devuelve:
    Una copia total con el nombre de la fecha, en el directorio que se le a indicado

    Comentarios:
    1º La copia total se crea mediante Rsync
    2º Ejecuta el script que borra la copia total del anterior mes con borrarBiejo.sh

     

    Last edit: Santiago moreno 2012-09-06
  • Santiago moreno

    Santiago moreno - 2012-09-06

    borrarBoejo.sh

    Realizado por: Santiago Moreno

    Licencia: LGPL

    Fecha de creación:3/06/2012

    Llamada:borrarViejo.sh directorio días <--días_a_borrar

    Interacción:
    No requiere ninguna excepto pasarle por parámetro el directorio y los días

    Devuelve:
    Borra de la carpeta indicada todas las carpetas/archivos con mas antigüedad
    de los días indicados en el segundo parámetro

    Modificación:
    Para hacer menos copias es mejor no hacer esta modificación puesto que desaparecera el bakup total

    Para dejar mas ficheros solamente añadirle 7 días por copia
    que se desee añadir, 7 días son 1 bakup incremental mas 14 días son 2 incrementales 21 días son 3 incrementales, pero 28 días sera un backup total.

     

    Last edit: Santiago moreno 2012-09-06
  • Santiago moreno

    Santiago moreno - 2012-09-06

    Problemas detectados.

    Al intentar ejecutar el script puede que de este aviso:

    You (user) are not allowed to use this program (crontab) See crontab(1) for more information

    Se soluciona:
    1º Entrando en la consola
    2º Logueandose como súper usuario ($ sudo su)
    3º Escribiendo el usuario al que queremos autorizar en el archivo cron.allow.
    Yo utilizo gedit, pero se pueden usar mas ($ gedit /etc/cron.allow)
    ....3.1º Una vez en el programa se puede añadir el usuario a la lista
    ....3.2º Guardar (Ctrl + s) o (botón guardar)
    ....3.3º Salir de gedit (pulsando el botón de cerrar)
    4º Salir del modo súper usuario en la consola ($ exit)
    5º Volver a intentar ejecutar el comando.

    Si no se introduce correctamente el nombre del directorio te puede pedir si quieres crear el que se puso, la otra opción es escribirlo correctamente o elegir otro directorio, existe la posibilidad de abortar la creación del backup.

    Tiempo de espera, e tenido que ponerle un tiempo de espera para el reinicio después de la instalación al ejecutar el fichero postin porque no tenia tiempo para que se procesaran los disparadores para man-db y eso creaba un error en las dependencias.
    La solución es fácil puesto que lo único que hay que hacer es teclear en la consola:

    $ sudo dpkg --configure -a

    y el solo soluciona el problema pero dejándole tiempo para que los configure el solo mejor.

     

    Last edit: Santiago moreno 2012-09-07
  • Santiago moreno

    Santiago moreno - 2012-09-06

    Ayudas para la instalación y utilización.

    1ºLa mejor manera de instalar el paquete es con el siguiente comando en la consola,
    $ sudo dpkg -i directorio_donde_este/Bakup.deb
    2º Una vez instalado se puede crear el plan de backup sobre el directorio que se desee, para ello lo unico que se tiene que hacer es llamar al script y decirle el directorio.
    $ bakup.sh Directorio/
    3º Se creara un plan de backup de seguridad automáticamente, para comprobarlo se puede teclear,
    $ crontab -l

     

    Last edit: Santiago moreno 2012-09-07

Log in to post a comment.