Hoy abordaremos el tema de las copias de seguridad. El objetivo es montar L’objectiu d'aquest article és muntar dos tipos tipus de copiascòpies, por una parte haremos d’una banda farem backups de ficheros y directoriosfitxers i directoris, esto nos permitirá açò ens permetrà poder restaurar archivos arxius o directorios directoris de manera individual. El otro tipo L’altre tipus de copia nos permitirá còpia ens permetrà recuperar nuestro el nostre sistema en caso de urgenciacas d’urgència.
=== <br>Backup de directorios y ficheros directoris i fitxers === <br>Es tracta de fer un backup de tots els arxius del nostre usuari. Mantindrem un històric de backups, farem una còpia diària (dilluns, dimarts, dimecres, etc .), cada dilluns substituirem la còpia del dilluns anterior i així amb tots els dies. <br>El procediment és senzill, triarem els directoris i fitxers de què volem fer el backup, i els copiarem.
Se trata de hacer un backup de todos los archivos de nuestro usuario. A demás, mantendremos un histórico de backups, haremos una copia diaria (lunes, martes, miércoles, etc .), cada lunes machacaremos la copia del lunes anterior y así con todos los días.
El procedimiento es sencillo, elegiremos los directorios y ficheros de los que queremos hacer el backup, y los copiaremos.
<pre>cp -rp ~/banyut /media/sdb5/backup/domingo</pre>
Es totalmente funcional, pero la verdad es que no es eficiente, el problema está en que cada lunes nos hará una copia completa de todos los archivos que tenemos en el directorio, cuando lo que seria deseable es que solo copiara los modificados o los creados des del último backup.
És totalment funcional, però la veritat és que no és eficient, el problema està en que cada dilluns ens farà una còpia completa de tots els arxius que tenim en el directori, quan el que seria desitjable és que només copiara els modificats o els creats des de l’últim backup. <br>No hay hi ha problema, tenemos otra instrucción tenim una altra instrucció que nos ofrece ens oferix esta funcionalidadfuncionalitat.
<pre>rsync -altgvbp /home/banyut /media/sdb5/backup/domingo</pre>
Hoy no explicaré el comando rsync ni sus opciones, si alguien tiene alguna duda primero que consulte “man rsync” y después que pregunte.
Bueno, ya tenemos la instrucción que nos permite poder realizar nuestra copia. El siguiente paso es que estas se realicen de manera automática, para ello utilizaremos otra instrucción que nos ofrece el sistema crontab.
Crontab nos permite ejecutar aplicaciones en un momento determinado, una única vez o de manera recurrente. En un principio puede parecer algo liosa pero en realidad es muy fácil de usar.
<pre>crontab -e</pre>
Esta instrucción nos permite editar el archivo /etc/crontab, en el que programaremos las instrucciones que queremos ejecutar.
El següent pas és que estes es realitzen de manera automàtica, per a això utilitzarem una altra instrucció que ens oferix el sistema crontab.<br>Crontab ens permet executar aplicacions en un moment determinat, una única vegada o de manera recurrent. En un principi pot paréixer quelcom embolicadora però en realitat és molt fàcil d’usar.<pre>crontab -e</pre> Esta instrucció ens permet editar l’arxiu /etc/crontab, en el que programarem les instruccions que volem executar.<br>Cada linea de este archivo esbossa d’este arxiu esta formada por per 7 columnas columnes
<pre>Minutos (de 0 a 59
orden a ejecutar</pre>
Un asterisco en cualquiera de las primeras 5 columnas indica todos, es decir si queremos que algo se ejecute todos los meses en la columna del mes podremos un asterisco.
En realidad es un poco mas complejo pero por el momento ya nos vale así.
Como funcionan estas columnasUn asterisc en qualsevol de les primeres 5 columnes indica tots, és a dir si volem que quelcom s’execute tots els mesos en la columna del mes podrem un asterisc. <br>En realitat és un poc mas complex però de moment ja ens val així.<br>Com funcionen estes columnes.
5 * * * * se ejecutara el minuto 5 de cada hora todos los días.
0 3 * * 6 a las 03:00 horas de todos los sábados
En cada una de estas columnas podemos poner más de un valor, o incluso un rango, esto se hace separando cada valor mediante una coma o un rango mediante un guión.
Así en la columna día de la semana podemos poner 1,3,5 que indicara que se ejecute los lunes, miércoles y viernes. O en la columna mes para indicar la primera quincena podemos poner 1-15.
Esto aún podemos complicarlo En cada una d’estes columnes podem posar més d’un valor, o inclús un pelín másrang, tenemos otra operación açò es fa separant cada valor per mitjà d’una coma o un rang per mitjà d’un guió.<br>Així en la columna dia de la setmana podem posar 1,3,5 que indicara que s’execute els dilluns, dimecres i divendres. O en la columna mes per a indicar la primera quinzena podem posar 1-15.<br>Açò encara podem complicar-ho un pèl més, tenim una altra operació el símbolo símbol “/”, que indica un incrementoincrement, por ejemploper exemple, si en la columna minutos ponemos minuts posem */15 se ejecutará s’executarà cada 15 minutosminuts, o si en la columna dias ponemos dies posem 1-10/2, se ejecutará los dias s’executarà els dies 1,3,5,7 y i 9.<br>Finalment un exemple més complex.
Por último un ejemplo más complejo.
0 */2 1-15,23,28-31 * 0,6
Se ejecutara 0 */2 1-15,23,28-31 * 0,6 S’executara cada dos horas los días hores els dies 1 al 15,el 23, 28, 29, 30 y i 31 de todos los meses pero solo cuando sean sábado tots els mesos però només quan siguen dissabte o domingodiumenge.
Ala, como se os ha quedado el cuerpo!!!!
Sabiendo esto, ahora podremos conseguir que nuestros backups se ejecuten de manera automática.
Después Sabent açò, ara podrem aconseguir que els nostres backups s’executen de teclear manera automàtica.<br>Després de teclejar crontab -e añadiremos las siguientes lineasafegirem les següents esbosses.
<pre>0 1 * * 0 instrucción_lunes
0 1 * * 6 instrucción_domingo</pre>
Con esto conseguiremos que se ejecute cada día a las 01:00 horas las instrucciones indicadas. Podemos substituir “instrucción_******” por la orden rsync arriba descrita.
De todas formas lo haremos un pelín más completo, crearemos un script para cada día de la semana, además recogeremos un log.
Empezaremos creando los directorios necesariosAmb açò aconseguirem que s’execute cada dia a les 01:00 hores les instruccions indicades. Podem substituir “instrucció_******” per l’orde rsync dalt descrita.<br>De totes maneres ho farem un pèl més complet, crearem un script per a cada dia de la setmana, a més arreplegarem un log.<br>Començarem creant els directoris necessaris.
<pre>mkdir ~/.crono_bak
cd ~/.crono_bak</pre>
Dentro Dins del directorio directori que acabamos acabem de crear, crearemos siete ficheros mas llamados crearem set fitxers mes cridats lunes.sh, martes.sh, ..., domingo.sh y i en su el seu interior pondremos lo siguienteposarem el següent.
<pre>!/bin/bash
echo ----------------------------------------------------------------------- >> $pathLog</pre>
Este código es el que corresponde al script del lunes, para los otros seis haremos lo mismo pero substituyendo Lunes por el día de la semana concreto.
El script ejecuta la instrucción rsync, el resto de las lineas lo que hacen es generar un fichero log.
Este codi és el que correspon al script del dilluns, per als altres sis farem el mateix però substituint Dilluns pel dia de la setmana concret.<br>El script executa la instrucció rsync, la resta de les esbosses el que fan és generar un fitxer log.<br>Una vez creados vegada creats els set fitxers, haurem de donar-los siete ficheros, tendremos que darles permiso para permís per a poder ejecutarlosexecutar-los.
<pre>chmod +x *.sh</pre>
Para que se ejecute todos los dias Perquè s’execute tots els dies a la 1 de la mañanal’1 del matí, nuestro el nostre crontab quedará asíquedarà així.
<pre>m h dom mon dow command
0 1 * * 0 /home/banyut/.crono_back/domingo.sh >>/media/sdb5/backup/logcrono.log</pre>
Por su puesto, la ruta /media/sdb5/backup/sistema/ tiene que existir y en su interior tiene que haber 7 directorios llamados lunes, martes, etc.
bueno, ya se que el script es muy mejorable y que se podria haber hecho con un solo fichero en vez que con siete, pero creo que para empezar ya esta bien así.
Para La ruta /mitjana/sdb5/backup/sistema/ ha d’existir i en el seu interior ha d’haver-hi 7 directoris cridats dilluns, dimarts, etc.<br>Per a poder revisar nuestra programación ejecutaremosla nostra programació executarem:
<pre>crontab -l</pre>
He dado por hecho donat per fet que el demonio dimoni cron esta activadoactivat, para comprobar esto podemos ejecutarper a comprovar açò podem executar.
<pre>ps -ef | grep crontab</pre>
En caso cas que no este en marcha lo iniciaremos marxa ho iniciarem de la siguiente forma manera següent
<pre>sudo /etc/init.d/cron start</pre>
Por último para ver Finalment per a veure si se ha ejecutado bien podemos s’ha executat bé podem mirar el log que hemos creado hem creat en /mediamitja/sdb5/backup/logcrono.log podemos podem mirar los els logs del dia en concreto dentro concret dins de la carpeta /mediamitjana/sdb5/backup/*****.log,tambien podemos ver cuando se ha ejecutado nuestro també podem veure quan s’ha executat el nostre crontab consultando consultant el log del systemasistema.
<pre>cat /var/log/syslog |grep crontab</pre>
<br>
<br> fontBasat en: http://banyut.obolog.com/copias-seguridad-ubuntu-crontab-rsync-dd-65952