Còpia de seguretat de la web

Còpia de seguretat de la web

En aquest esborrany només vull comentar alguns aspectes relacionats amb una còpia de seguretat d'una web.

Per començar, anem a exposar els riscos, que poden derivar en la pèrdua de la informació més recent de la web o, fins i tot, de la web sencera.

Riscos:

  • Que falli els disc dur del servidor a on tenim hostatjada la web, i no es pugui recuperar la informació
  • Que durant el procés d'actualització del servidor hi hagi algun problema (BBDD corrupta) i acabem perdent la informació.
  • Que l'empresa que hostatja la web (que no te perquè ser el nostre proveïdor de serveis webs), sinó més aviat la propietària dels datacenters, revenedors, etc. faci fallida, desaparegui
  • Que l'empresa / tècnic que ens dona el servei de (creació i) manteniment de la web desaparegui
  • Etc.

Per evitar mals majors (la pèrdua total de la web, i per tant de la inversió que hem fet) podem prendre una sèrie de mesures preventives... Anem a veure algunes d'elles, o alguns enfocs... Amb temps i una canya aniré completant aquesta informació :-)

Software lliure

Per començar, la primera recomanació, utilitza software lliure... Tria un tècnic / empresa que treballi amb software lliure, i que sigui transparent. La idea és que sàpigues quin software estàs usant... Drupal, Wordpress, Joomla... Només aquests tres engloven la major part de les webs que veiem... Per webs molt complexes o requisits molt específics podria ser apropiat l'ús d'algun framework (que sigui també de software lliure ;-) ), però és un cas molt minoritàri...

Que trobem a l'altra cara de la moneda? Serveis "tancats" que ofereixen webs boi sense cost, però amb un lloguer mensual (en el model anterior pagues la web de cop, al començament, i llestos...). Son sistemes opacs a on no sabrem quin gestor de continguts s'ha utilitzat, i estem lligats de mans i peus a l'empresa que ens l'ofereix. Si aquesta empresa se'n va a l'aigua, o no fa bé la seva feina, no podrem portar la SEVA web a un altre empresa o professional, com si que podem fer amb una web de drupal, SI TENIM UNA CÒPIA DE SEGURETAT.

Còpies de seguretat

Normalment el nostre servidor farà còpies de seguretat, però en general només tenen unes setmanes d'antiguitat i es desen per defecte en els sistemes de la mateixa empresa: això no evita que, si aquesta empresa desapareix, o fins i tot si el disc dur a on estan emmagatzemades les còpies de seguretat, si és el mateix que a on hi ha l'original, poguem perdre tota la informació. CAL FER CÒPIES DE SEGURETAT EN UN ALTRE EMPLAÇAMENT, AL QUE TINGUEM ACCÉS NOSALTRES, DE MANERA INDEPENDENT DEL PROVEÏDOR WEB / SERVIDOR.

A drupal, com a molts altres gestors de continguts, les webs tenen la informació dividida entre la base de dades i els fitxers de codi. També podriem parlar dels fitxers de configuració del servidor, però això ja seria filar massa prim. Per tant hem de fer còpia de seguretat de tots dos blocs...

Hi ha serveis comercials que ofereixen l'opció de guardar còpies de servidors concrets, d'aquestes empreses, a la que tindrem accés naltros. Possiblement son una bona opció, però depén de per a qui, massa cara...

Una altra opció és que ens descarreguem la còpia de seguretat al nostre ordinador personal / al servidor de l'empresa.

Per fer-ho, caldria tenir en compte que, si volem garantir la privacitat de les dades que ens descarreguem al nostre ordinador, ho hauriem de fer usant una connexió segura (per exemple, sftp)

Un altre apunt de les còpies de seguretat: la política de retenció. Política de retenció vol dir quines còpies conservo: no és recomanable guardar només la darrera còpia de seguretat, o les de les darreres setmanes, posem per cas.

Per què?

Imaginem que hem introduit un error a la web, que no hem detectat fins que han passat uns mesos, però que ha esborrat part del contingut que no s'havia d'esborrar/alterar. O que la BBDD se'ns ha corromput: la web funciona, però pot fer difícil/molt costós el recarregar la còpia en un escenari de, per exemple, actualització del servidor. Si només guardem les còpies del darrer més, no podrem rescatar la informació perduda.

Una política de retenció vàlida, al meu entendre, per moltes webs amb pocs canvis, seria el conservar una còpia de cada més dels darrers 12 mesos, i només una per any dels anys precedents. En una web de fa 5 anys, per exemple, com a màxim tindriem 16-17 còpies guardades...

¿Que hay de mi libro?

Si teniu una web en drupal, aquí podeu consultar el nostre servei de còpies de seguretat: http://www.calbasi.net/web/copia-seguretat

 

joan

Còpia de la base de dades de drupal amb Backup and Migrate

Còpia de la base de dades de drupal amb Backup and Migrate joan

Si el vostre gestor web ha instal·lat el mòdul Backup and Migrate i ha configurat els permisos adequadament per a què pogueu fer còpies de seguretat manuals (diferents a les periòdiques, que es guarden al servidor, perquè les manuals les podeu descarregar al vostre disc dur), els passos per fer una còpia son els següents:

  1. Aneu a Configuració > Sistema > Backup and Migrate (admin/config/system/backup_migrate)
  2. Allà només heu d'assegurar-vos de triar l'opció "Download" al camp "to"

Així de senzill ;-)

Pd.: amb la còpia de la BBDD teniu el més important, però per restablir el sistema us caldria també tenir la còpia dels fitxers... La major part d'ells son els fitxers estàndard de Drupal i els seus mòduls, que podrieu descarregar d'internet, però hi ha alguns fitxers que no us podrieu inventar, en restaurar el sistema, com els fitxers pujats a la web des dels camps de fitxer pels usuaris, la configuració dels estils (aspecte), si l'heu personalitzat, etc. Així que per complementar la còpia de la BBDD també us caldria una còpia del directori "sites" de la web.

Drupal backup system

Drupal backup system

Hi,
I want to offer my customers the option of backup their drupal locally. I developed a system based in Backup and Migrate module and some work at server side... I'd like to share with you my work, to receive your feedback, opinions, improvements... if you think it could be useful ;-)

Install Backup and Migrate drupal module

Schedule suggestion: weekly and 3 month copies, keeping last 12 in both categories.
Thus, we are going to keep copies from last 3 years.

In Cpanel, add a new ftp account with these details:

  • user: web_backup
  • password: (your choice)
  • Directory: DRUPAL_BASE_DIRECTORY/web_backup
  • quote: your choice (ex 200MB)

At server DRUPAL_BASE_DIRECTORY, as root:

# chmod 700 web_backup
# nano web_backup_info.txt

Put here any useful info and save the file

# nano web_backup.sh

And, there:

Drupal_Path="/home/calbasi/www/web"
tar cf $Drupal_Path"/web_backup/web_backup_sites.tar" $Drupal_Path"/sites/default/settings.php"
gzip -f $Drupal_Path"/web_backup/web_backup_sites.tar"
_now=$(date +"%Y_%m_%d")
cat $Drupal_Path"/web_backup_info.txt" > $Drupal_Path"/web_backup/LastBackupDate_$_now.txt"
mail -s "EMAIL_SUBJECT" "EMAIL_TO_ADDRESS" <<EOF
EMAIL_BODY (IN SEVERAL LINES)
...
EOF

Then, we add a cron task:

# crontab -e

There, insert a line like this:

0 4 23 * * DRUPAL_BASE_DIRECTORY/web_backup.sh

In the example, you get a backup monthly, the 23th day, at 04:00

TODO:

  • force ftp secure connexions
  • solve tar warning "/"
joan