Copias de seguridad en Ubuntu Server

Como hacer copias de seguridad en ubuntu. Lo podemos hacer con tar por ejemplo. Para ello vamos a crear un script sh en nuestro home.

Creación del fichero respaldo.sh

En la primera linea especificamos al interprete que es un sh.

La segunda linea indica que cambie de directorio

La tercera linea especificamos el tar(empaquetador) con los modiricadores, luego va el destino en este caso que guarde el resultado en media/copias/carpetaFecha_hoy, que me excluya la carpeta /var/www/micarpeta/nocopiar y ademas va a copiar la carpeta1 y la carpeta2. Si todo ha salido bien deberemos tener un tar (que lo podemos abrir con winrar en windows) cuyo nombre es carpeta_230913_2103 con estas dos carpetas en su interior.

#!/bin/sh
cd /var/www
tar -cvf /media/copias/carpeta_$(date +%d%m%y_%H%M).tar --exclude=micarpeta/nocopiar carpeta2 carpeta2

Para ejecutarlo simplemente hacemos sudo sh nombre_fichero.sh

Hacer una copia de seguridad automática o programada

Lo podemos hacer de dos maneras.

La primera es en el directorio /etc, donde muy seguramente encontrarás los siguientes directorios:

  • cron.hourly
  • cron.daily
  • cron.weekly
  • cron.monthly

Si se coloca un archivo tipo script en cualquiera de estos directorios, entonces el script se ejecutará cada hora, cada día, cada semana o cada mes, dependiendo del directorio.

Como segundo modo de ejecutar o usar cron es a través de manipular directamente el archivo/etc/crontab. En la instalación por defecto de varias distribuciones Linux, este archivo se verá a algo como lo siguiente:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
# Minuto  Hora  DiaDelMes  Mes  DiaDeLaSemana  Usuario  Comando
15 8 * * * root /home/juan/respaldo.sh ###A las 8:15 a.m. de cada día se ejecuta el fichero respaldo.sh
17 * * * * root cd / && run-parts --report /etc/cron.hourly
 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

SHELL es el ‘shell’ bajo el cual se ejecuta el cron. Si no se especifica, se tomará por defecto el indicado en la línea /etc/passwd correspondiente al usuario que este ejecutando cron.

PATH contiene o indica la ruta a los directorios en los cuales cron buscará el comando a ejecutar. Este path es distinto al path global del sistema o del usuario.

Después de lo anterior vienen las líneas que ejecutan las tareas programadas propiamente. No hay límites de cuantas tareas pueda haber, una por renglón. Los campos (son 7) que forman estas líneas están formados de la siguiente manera:

Minuto Controla el minuto de la hora en que el comando será ejecutado, este valor debe de estar entre 0 y 59.
Hora Controla la hora en que el comando será ejecutado, se especifica en un formato de 24 horas, los valores deben estar entre 0 y 23, 0 es medianoche.
Día del Mes Día del mes en que se quiere ejecutar el comando. Por ejemplo se indicaría 20, para ejecutar el comando el día 20 del mes.
Mes Mes en que el comando se ejecutará, puede ser indicado numéricamente (1-12), o por el nombre del mes en inglés, solo las tres primeras letras.
Día de la semana Día en la semana en que se ejecutará el comando, puede ser numérico (0-7) o por el nombre del día en inglés, solo las tres primeras letras. (0 y 7 = domingo)
Usuario Usuario que ejecuta el comando.
Comando Comando, script o programa que se desea ejecutar. Este campo puede contener múltiples palabras y espacios.

En la primer linea de mi fichero se puede ver la siguiente linea, lo que indica que a las 8:15 a.m. de cada día se ejecuta el fichero respaldo.sh. De acuerdo con esto tendremos que agregar tantas lineas como tareas programadas queremos ejecutar con sus pertinentes configuraciones.

15 8 * * * root /home/juan/respaldo.sh

Enlaces interesantes con la configuración de ubuntu server

Anuncios

7 pensamientos en “Copias de seguridad en Ubuntu Server

  1. Pingback: Configurar resolución gráfica en Ubuntu Server 12.04 | jcsis

  2. Pingback: Copia seguridad mysql a través de consola | jcsis

  3. Pingback: Como hacer un virtual hosting en red con Apache y Bind en Ubuntu. | jcsis

  4. Pingback: Instalar jvm en ubuntu 11.04 | jcsis

  5. Pingback: Configurar red ubuntu 11.04 | jcsis

  6. Pingback: Notas sobre el ubuntu server 10.04 | jcsis

  7. Pingback: Como hacer copias de seguridad de carpetas en windows | jcsis

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s