[{"data":1,"prerenderedAt":539},["ShallowReactive",2],{"art-backups-servidores-linux-2026-es":3},{"id":4,"title":5,"author":6,"body":7,"date":524,"description":525,"extension":526,"image":527,"meta":528,"navigation":391,"pareja":529,"path":530,"seo":531,"stem":532,"tags":533,"__hash__":538},"blogEs\u002Fes\u002Fblog\u002Fbackups-servidores-linux-2026.md","Backups de servidores Linux en 2026: la regla 3-2-1 explicada con casos reales","Paco Cubel",{"type":8,"value":9,"toc":509},"minimark",[10,15,19,32,40,44,47,68,71,75,78,145,151,155,158,205,212,216,223,241,248,252,258,264,278,285,289,299,311,341,345,348,370,373,377,380,459,462,466,472,478,488,494,498,501],[11,12,14],"h2",{"id":13},"la-conversación-incómoda","La conversación incómoda",[16,17,18],"p",{},"La mayoría de empresas a las que entramos a hacer una auditoría tienen \"backups\". El problema empieza cuando preguntamos lo siguiente:",[20,21,22,26,29],"ul",{},[23,24,25],"li",{},"¿Cuándo se hizo el último que has restaurado de verdad?",[23,27,28],{},"¿Sabes cuánto tardarías en levantar tu web si el servidor desapareciera ahora mismo?",[23,30,31],{},"¿Tu copia de seguridad está en el mismo servidor que la base de datos?",[16,33,34,35,39],{},"La respuesta más común a la tercera es \"sí\". Y ahí ya tenemos el problema: si el servidor cae, te quedas sin web ",[36,37,38],"strong",{},"y"," sin backup.",[11,41,43],{"id":42},"la-regla-3-2-1-en-lenguaje-claro","La regla 3-2-1 en lenguaje claro",[16,45,46],{},"La regla 3-2-1 no es nueva. Lleva décadas siendo el estándar y sigue vigente en 2026 porque resuelve el 95% de los desastres reales:",[20,48,49,55,62],{},[23,50,51,54],{},[36,52,53],{},"3 copias"," de tus datos: el original más dos copias.",[23,56,57,58,61],{},"En ",[36,59,60],{},"2 medios distintos",": por ejemplo disco local del servidor + almacenamiento externo. No vale tres carpetas en el mismo disco.",[23,63,64,67],{},[36,65,66],{},"1 copia fuera de las instalaciones",": en otro datacenter, otra región o un proveedor distinto. Esta es la que te salva si arde la sala de servidores o si tu proveedor desaparece.",[16,69,70],{},"En 2026, \"fuera de las instalaciones\" suele significar un bucket de S3, Backblaze B2 o un servidor en otro proveedor cloud. Lo importante no es la tecnología, es el aislamiento.",[11,72,74],{"id":73},"qué-hay-que-copiar-exactamente","Qué hay que copiar exactamente",[16,76,77],{},"Esto es donde más metemos la pata. Un backup \"del servidor\" no significa nada si no detallas qué incluye:",[79,80,81,94],"table",{},[82,83,84],"thead",{},[85,86,87,91],"tr",{},[88,89,90],"th",{},"Capa",[88,92,93],{},"Qué hay que respaldar",[95,96,97,106,118,129,137],"tbody",{},[85,98,99,103],{},[100,101,102],"td",{},"Aplicación",[100,104,105],{},"Código fuente (si no está en git), configuración, uploads de usuarios, certificados SSL",[85,107,108,111],{},[100,109,110],{},"Base de datos",[100,112,113,114],{},"Dump SQL coherente, no copia en caliente de los ficheros ",[115,116,117],"code",{},".ibd",[85,119,120,123],{},[100,121,122],{},"Sistema",[100,124,125,128],{},[115,126,127],{},"\u002Fetc",", lista de paquetes instalados, configuración de cron, usuarios y permisos",[85,130,131,134],{},[100,132,133],{},"Datos compartidos",[100,135,136],{},"Carpetas montadas por NFS, sambas, NAS internos",[85,138,139,142],{},[100,140,141],{},"Identidades",[100,143,144],{},"Claves SSH, certificados, tokens de API, contraseñas de servicio",[16,146,147,148,150],{},"El error clásico es respaldar la web y olvidarse de ",[115,149,127],{},". El día que toca reinstalar, descubres que reconstruir manualmente nginx, fail2ban, postfix y sudoers cuesta más que perder los datos.",[11,152,154],{"id":153},"las-herramientas-que-usamos-en-2026","Las herramientas que usamos en 2026",[16,156,157],{},"No hay una \"mejor herramienta\", hay la que encaja con tu caso:",[20,159,160,166,172,182,196],{},[23,161,162,165],{},[36,163,164],{},"restic"," — Backups encriptados, deduplicados e incrementales. Soporta nativamente S3, B2, Azure, GCS, SFTP y disco local. Es nuestra primera opción en proyectos nuevos.",[23,167,168,171],{},[36,169,170],{},"borgbackup"," — Similar a restic, con compresión y deduplicación muy buenas. Idóneo si el destino es un servidor SSH con almacenamiento propio (no cloud).",[23,173,174,177,178,181],{},[36,175,176],{},"rsnapshot"," — Veterano, sencillo, basado en ",[115,179,180],{},"rsync"," y hardlinks. Bueno para copias rápidas a NAS local. No encripta, así que el destino debe ser de confianza.",[23,183,184,187,188,191,192,195],{},[36,185,186],{},"percona xtrabackup"," o ",[36,189,190],{},"mariabackup"," — Para bases de datos MySQL\u002FMariaDB grandes donde el ",[115,193,194],{},"mysqldump"," ya tarda demasiado.",[23,197,198,201,202,204],{},[36,199,200],{},"mydumper \u002F myloader"," — ",[115,203,194],{}," paralelizado. Sigue siendo lo más cómodo para bases de hasta unos cientos de GB.",[16,206,207,208,211],{},"Si tu stack incluye Docker, suma un volcado periódico de los volúmenes (",[115,209,210],{},"docker run --rm -v vol:\u002Fdata -v $(pwd):\u002Fdest alpine tar czf \u002Fdest\u002Fvol.tgz \u002Fdata",") y no des por hecho que la imagen del contenedor es suficiente.",[11,213,215],{"id":214},"el-paso-que-casi-nadie-hace-la-restauración-de-prueba","El paso que casi nadie hace: la restauración de prueba",[16,217,218,219,222],{},"Un backup que no se ha restaurado nunca ",[36,220,221],{},"no es un backup, es una esperanza",". Te lo decimos en serio: la mitad de las veces que hemos abierto una copia \"que llevaba años funcionando\" hemos encontrado uno de estos:",[20,224,225,228,231,238],{},[23,226,227],{},"Volcados de SQL truncados sin que nadie se enterase.",[23,229,230],{},"Permisos del filesystem que impiden leer la mitad de los ficheros.",[23,232,233,234,237],{},"Ficheros enormes excluidos por una regla vieja del ",[115,235,236],{},".rsync-filter",".",[23,239,240],{},"Versiones de software incompatibles entre el origen y el destino.",[16,242,243,244,247],{},"La prueba mínima razonable: ",[36,245,246],{},"una vez al trimestre",", levantar un servidor de pega, restaurar el backup más reciente y verificar que la web arranca y la base de datos se puede consultar. Si la empresa es crítica, una vez al mes.",[11,249,251],{"id":250},"encriptado-y-retención-las-dos-preguntas-que-no-se-hacen","Encriptado y retención: las dos preguntas que no se hacen",[16,253,254,257],{},[36,255,256],{},"Encriptado."," Si tu backup viaja a un proveedor externo sin encriptar, estás regalando tu base de datos a quien comprometa esa cuenta. restic, borg y duplicity encriptan por defecto; rsnapshot y rsync, no. La clave de encriptado debe guardarse en un sitio distinto al backup (un gestor de contraseñas del equipo sirve).",[16,259,260,263],{},[36,261,262],{},"Retención."," No tiene sentido guardar 100 backups diarios. Sí tiene sentido aplicar una política tipo:",[20,265,266,269,272,275],{},[23,267,268],{},"7 backups diarios.",[23,270,271],{},"4 backups semanales.",[23,273,274],{},"12 backups mensuales.",[23,276,277],{},"2 backups anuales.",[16,279,280,281,284],{},"Total: 25 puntos de restauración cubriendo dos años, con ocupación manejable. restic y borg lo hacen con un solo comando (",[115,282,283],{},"forget --keep-daily 7 --keep-weekly 4 --keep-monthly 12 --keep-yearly 2",").",[11,286,288],{"id":287},"tres-casos-reales-anonimizados","Tres casos reales (anonimizados)",[16,290,291,294,295,298],{},[36,292,293],{},"Caso 1 — La tienda online sin backup externo.","\nCliente con una tienda PrestaShop facturando bien. Backups diarios... en el mismo VPS, en ",[115,296,297],{},"\u002Fhome\u002Fbackups",". Un fallo de disco del proveedor dejó el servidor inaccesible 18 horas. El backup también. Se perdieron 6 días de pedidos porque la última copia \"que pudimos recuperar\" era de antes. Solución posterior: restic + Backblaze B2 + restauración de prueba mensual.",[16,300,301,304,305,307,308,310],{},[36,302,303],{},"Caso 2 — El backup que tardaba 14 horas en restaurarse.","\nServidor con base de datos de 80 GB. Backups con ",[115,306,194],{}," simple. El día del incidente, restaurar tardó toda la noche y media mañana. Cambiamos a ",[115,309,190],{}," + restic. Restauración bajó a 25 minutos.",[16,312,313,316,317,320,321,324,325,328,329,332,333,336,337,340],{},[36,314,315],{},"Caso 3 — Los ficheros que nadie sabía que existían.","\nMigración de un servidor antiguo. El backup que nos pasaron incluía ",[115,318,319],{},"\u002Fvar\u002Fwww"," y ",[115,322,323],{},"\u002Fetc\u002Fmysql",". Faltaban: una carpeta ",[115,326,327],{},"\u002Fdata\u002Flegacy"," con 12 GB de PDFs históricos, los certificados Let's Encrypt en ",[115,330,331],{},"\u002Fetc\u002Fletsencrypt",", y un cron que se invocaba desde otra máquina por SSH. Aprendimos a auditar la máquina viva con ",[115,334,335],{},"lsof"," + ",[115,338,339],{},"find"," antes de definir el alcance del backup.",[11,342,344],{"id":343},"cuánto-cuesta-tener-esto-bien","Cuánto cuesta tener esto bien",[16,346,347],{},"Para un VPS medio con web + base de datos pequeña:",[20,349,350,358,364],{},[23,351,352,187,354,357],{},[36,353,164],{},[36,355,356],{},"borg",": gratis.",[23,359,360,363],{},[36,361,362],{},"Backblaze B2"," o equivalente: alrededor de 6 € al mes por 1 TB almacenado.",[23,365,366,369],{},[36,367,368],{},"Un sistema automatizado y revisado",": lo configuramos en una jornada de trabajo y queda funcionando con cron + alertas por email.",[16,371,372],{},"Comparado con el coste de perder una semana de pedidos, o de tener un cliente importante caído un día, es probablemente la mejor relación coste\u002Fbeneficio de toda tu infraestructura.",[11,374,376],{"id":375},"lista-mínima-de-verificación","Lista mínima de verificación",[16,378,379],{},"Si no quieres leerte todo el artículo, este es el resumen accionable:",[20,381,384,398,408,420,430,440,450],{"className":382},[383],"contains-task-list",[23,385,388,393,394,397],{"className":386},[387],"task-list-item",[389,390],"input",{"disabled":391,"type":392},true,"checkbox"," Tienes ",[36,395,396],{},"al menos 3 copias"," de los datos críticos.",[23,399,401,403,404,407],{"className":400},[387],[389,402],{"disabled":391,"type":392}," Una copia está ",[36,405,406],{},"fuera del servidor de producción"," (otro proveedor, otra región).",[23,409,411,413,414,237],{"className":410},[387],[389,412],{"disabled":391,"type":392}," Tu backup incluye ",[36,415,416,417,419],{},"base de datos, código, ",[115,418,127],{},", claves SSH y certificados",[23,421,423,425,426,429],{"className":422},[387],[389,424],{"disabled":391,"type":392}," El backup va ",[36,427,428],{},"encriptado"," si viaja a un servicio externo.",[23,431,433,435,436,439],{"className":432},[387],[389,434],{"disabled":391,"type":392}," Tienes política de ",[36,437,438],{},"retención automática"," (diarios, semanales, mensuales).",[23,441,443,445,446,449],{"className":442},[387],[389,444],{"disabled":391,"type":392}," Has ",[36,447,448],{},"restaurado una copia de prueba"," en los últimos 3 meses.",[23,451,453,393,455,458],{"className":452},[387],[389,454],{"disabled":391,"type":392},[36,456,457],{},"alertas"," si el backup falla (no basta con cron, hace falta saberlo).",[16,460,461],{},"Si has marcado menos de 5, hay trabajo que hacer.",[11,463,465],{"id":464},"preguntas-frecuentes","Preguntas frecuentes",[16,467,468,471],{},[36,469,470],{},"¿Es suficiente con el snapshot del proveedor de cloud?","\nNo. Los snapshots viven en la misma cuenta y el mismo proveedor. Si pierdes acceso a la cuenta (factura impagada, hack, error de borrado), se van también. Sirven como capa rápida, pero no como copia única.",[16,473,474,477],{},[36,475,476],{},"¿RAID es un backup?","\nNo. RAID te protege de la rotura de un disco, no de un borrado accidental, un ransomware, un fallo de aplicación o un error humano. Son cosas distintas.",[16,479,480,487],{},[36,481,482,483,486],{},"¿Vale con ",[115,484,485],{},"git"," para el código?","\nPara el código sí, si todo está commiteado. Pero no cubre uploads de usuarios, base de datos ni configuración. Necesitas la pieza complementaria.",[16,489,490,493],{},[36,491,492],{},"¿Hace falta cifrar si el destino es un servidor mío en otro datacenter?","\nSí. Cifrar es barato y te protege en caso de que ese servidor caiga en malas manos por cualquier motivo. No se pierde nada por cifrar siempre.",[11,495,497],{"id":496},"conclusión","Conclusión",[16,499,500],{},"Tener backups buenos no es complicado, pero exige sentarse una jornada a pensar el alcance, elegir herramientas, automatizarlo y dejarlo monitorizado. Lo que sale caro es no hacerlo, y descubrirlo el peor día posible.",[16,502,503,504,237],{},"Si quieres que repasemos los backups de tu infraestructura, identifiquemos huecos y dejemos un sistema 3-2-1 funcionando, ",[505,506,508],"a",{"href":507},"\u002Fes\u002Fcontacto\u002F","hablamos sin compromiso",{"title":510,"searchDepth":511,"depth":511,"links":512},"",2,[513,514,515,516,517,518,519,520,521,522,523],{"id":13,"depth":511,"text":14},{"id":42,"depth":511,"text":43},{"id":73,"depth":511,"text":74},{"id":153,"depth":511,"text":154},{"id":214,"depth":511,"text":215},{"id":250,"depth":511,"text":251},{"id":287,"depth":511,"text":288},{"id":343,"depth":511,"text":344},{"id":375,"depth":511,"text":376},{"id":464,"depth":511,"text":465},{"id":496,"depth":511,"text":497},"2026-05-09","El día que de verdad necesitas un backup ya no hay tiempo para improvisar. Te contamos la regla 3-2-1, qué herramientas usar y los errores típicos que vemos cuando llega una llamada urgente.","md","\u002Fog\u002Fog-default.png",{},"linux-server-backups-2026","\u002Fes\u002Fblog\u002Fbackups-servidores-linux-2026",{"title":5,"description":525},"es\u002Fblog\u002Fbackups-servidores-linux-2026",[534,535,536,537],"Servidores","Linux","Backups","Seguridad","F93MyGaVlxMCCb4K0N8cqWGwMwiO8LKhJvM3bmuG3mw",1778944558452]