Backup y Recovery (contingencia)

Victor Vargas -

Este procedimiento es una traducción del documento oficial en https://wiki.samba.org/index.php/Backup_and_Recovery y resume las tareas que debemos hacer para mantener un respaldo de la configuración de Samba4 y como restaurarlo en caso de emergencia.

Respaldo

1) Samba4 incluye una herramienta que funciona out-of-the-box para realizar los respaldos, el problema es que debemos copiarla manualmente desde el tarball. 

 

# cp ..../source4/scripting/bin/samba_backup /usr/sbin
# chown root:root /usr/sbin/samba_backup
# chmod 750 /usr/sbin/samba_backup

2) Editar los siguientes campos del script según las necesidades, donde los campos
FROMWHERE=es la ruta donde esta instalado samba
WHERE=donde se almacenarán los respaldos
DAYS=la cantidad de respaldos que se guardarán en la ruta anterior

FROMWHERE=/usr/local/samba
WHERE=/usr/local/backups
DAYS=90

3) Crear el directorio de respaldos y asignar permisos:

# mkdir /usr/local/backups
# chmod 750 /usr/local/backups

4) Ejecutar el script para generar el primer respaldo:

# /usr/sbin/samba_backup

Si todo resulta correctamente veremos en el directorio "/usr/local/backups" los siguientes archivos:

etc.300514.tar.bz2  samba4_private.300514.tar.bz2  sysvol.300514.tar.bz2


Restauración


El procedimiento de restauración asume que se ha utilizado el script provisto por samba (samba_backup).

Notas muy importantes:
  • Nunca hagas una restauración y un cambio de versión al mismo tiempo. Siempre restaura el sistema con la misma versión de samba que estabas utilizando al momento de fallar.
  • Restaura en un sistema que tenga la misma dirección IP y Hostname, de lo contrario tendras problemas con DNS y Kerberos.
  • Recomendado: Restaurar en el mismo sistema donde se ha creado el backup.

Si todo el sistema esta roto, primero se debe preparar una máquina igual a la que estaba en producción.


Borrar las carpetas que vamos a restaurar (SAMBA NO DEBE ESTAR EN EJECUCION):

# rm -rf /usr/local/samba/etc
# rm -rf /usr/local/samba/private
# rm -rf /usr/local/samba/var/locks/sysvol

Ahora descomprimir el último backup disponible en la ubicación original:

# cd /usr/local/backups
# tar -jxf etc.{Timestamp}.tar.bz2 -C /usr/local/samba/
# tar -jxf samba4_private.{Timestamp}.tar.bz2 -C /usr/local/samba/
# tar -jxf sysvol.{Timestamp}.tar.bz2 -C /usr/local/samba/

Renombrar los archivos *.ldb.bak en el directorio 'private' a *.ldb, se puede hacer así:

# find /usr/local/samba/private/ -type f -name '*.ldb.bak' -print0 | while read -d $'\0' f ; do mv "$f" "${f%.bak}" ; done


Si el respaldo no tiene ACL Extendidas, se debe ejecutar:

# samba-tool ntacl sysvolreset

Si se estaba usando BIND como Backend DNS (Debería estarlo), se debe ejecutar el siguiente comando:

# samba_upgradedns --dns-backend=BIND9_DLZ


Ahora se puede reiniciar el servidor y comprobar que todos los servicios suban correctamente.
 

 

¿Tiene más preguntas? Enviar una solicitud

0 Comentarios

Inicie sesión para dejar un comentario.
Tecnología de Zendesk