Restaurar un espacio
space restore devuelve un espacio a Confluence desde una copia de seguridad tomada con space get: las páginas y carpetas que ya no tiene, las páginas editadas desde entonces, o el espacio completo con su propia clave o con una nueva.
Compara la copia de seguridad con el espacio —la misma comparación que hace space check—, muestra el plan, pide confirmación y después restaura página a página, empezando por los padres. Cada página vuelve con su cuerpo, sus adjuntos, sus etiquetas y sus propiedades de contenido.
Disponible desde acs2md v1.0.12. space restore y page restore son los únicos comandos de acs2md que escriben en Confluence, y nunca eliminan, envían a la papelera, archivan ni mueven nada.
Restaurar por clave
acs2md space restore by-key SPACE_KEY --backup-dir DIR [flags]Aliases: key, k — el propio comando restore responde también a recover.
--backup-dir es el directorio del espacio dentro de la copia de seguridad, por ejemplo ./backups/DEVOPS.
Ejemplos
# Ve qué se recuperaría, sin cambiar nada
acs2md space restore by-key DEVOPS --backup-dir ./backups/DEVOPS --dry-run
# Recupera lo que se eliminó desde la copia de seguridad
acs2md space restore by-key DEVOPS --backup-dir ./backups/DEVOPS
# Revierte también las ediciones hechas desde la copia de seguridad, sin intervención
acs2md space restore by-key DEVOPS --backup-dir ./backups/DEVOPS --mode all --yes
# Reconstruye un espacio perdido, o cópialo con una clave nueva
acs2md space restore by-key DEVOPS2 --backup-dir ./backups/DEVOPS --create-space --mode allFlags
| Flag | Short | Predeterminado | Descripción |
|---|---|---|---|
--backup-dir | — | — | Copia de seguridad desde la que restaurar (su directorio de espacio) |
--mode | — | missing | Qué restaurar: missing, changed, all |
--create-space | — | false | Crea el espacio si no existe |
--prefer-version-restore | — | true | Revierte a la versión respaldada cuando Confluence todavía la tiene |
--overwrite-properties | — | false | Sustituye las propiedades de contenido cuyo valor difiere |
--reset-state | — | false | Olvida una restauración anterior sin terminar |
--concurrency | — | 4 | Consultas simultáneas durante la comparación |
--dry-run | — | false | Muestra el plan sin escribir nada |
--yes | -y | false | Aplica sin pedir confirmación |
Primero, el plan
♻️ Restore from ./backups/DEVOPS (manifest, storage, last updated 2026-10-31 12:00)
Into: DevOps (DEVOPS)
Mode: missing
Plan: create 1 folder, create 3 pages
┌────────┬────────┬────────────┬───────────────┬─────────┐
│ DO │ KIND │ ID │ TITLE │ WHY │
├────────┼────────┼────────────┼───────────────┼─────────┤
│ create │ page │ 3134096561 │ Release Guide │ trashed │
│ create │ folder │ 5989695572 │ Operations │ missing │
│ create │ page │ 3134096562 │ Chapter 1 │ trashed │
│ create │ page │ 3134096563 │ Runbook │ missing │
└────────┴────────┴────────────┴───────────────┴─────────┘
Left alone (1):
• page "Moved away" (3134096570): now lives in another space; restore it there with page restore if needed
Restore 4 item(s)? [y/N]En un terminal, space restore pregunta antes de escribir. En un script, pasa --yes; sin él, el comando se detiene antes de escribir nada. --dry-run muestra el plan y no escribe nada.
Restaurar por ID
acs2md space restore by-id SPACE_ID --backup-dir DIR [flags]Aliases: id
Los flags y el comportamiento son equivalentes a space restore by-key, salvo que un espacio que no existe no se puede crear por ID: usa by-key con la clave que deba tener.
Modos
--mode | Restaura |
|---|---|
missing (predeterminado) | Las páginas y carpetas que Confluence ya no tiene —en la papelera, archivadas, purgadas—, creadas de nuevo bajo su padre respaldado |
changed | Las páginas editadas o renombradas desde la copia de seguridad, devueltas a la versión respaldada (la propia versión cuando Confluence todavía la tiene) |
all | Ambas cosas, y además cada una de las demás páginas recibe los adjuntos, las etiquetas y las propiedades que le faltan |
Cómo se comporta una restauración
Primero los padres. Una página va bajo su padre respaldado: el padre tal como está en el espacio, o la nueva página o carpeta que esta restauración creó para él. Una página cuyo padre no se pudo restaurar espera por él y se reintenta junto con él en la siguiente ejecución. Las carpetas también se recuperan.
Los enlaces siguen a la restauración. Cuando ya existen todas las páginas, los enlaces entre páginas restauradas pasan a apuntar a sus nuevos ID. Los enlaces a Jira, a otros sitios y a páginas que no se volvieron a crear se quedan como están, y nunca se editan las páginas que la restauración no escribió.
Una página que ya existe se adopta. Antes de crear una página, la restauración busca en el espacio una página vigente con su título. Si la hay —devuelta a mano, o por una ejecución anterior que se interrumpió—, se toma como la página restaurada y solo se añade lo que le falta.
Las propiedades de contenido no se sobrescriben. Las aplicaciones guardan su estado en propiedades; por ejemplo, el estado de aprobación de un sistema de control documental. Las propiedades que faltan se crean; una propiedad con un valor distinto se conserva salvo que pases --overwrite-properties.
¿Se interrumpió? Vuelve a ejecutarla. El progreso se guarda después de cada página en .restore-state.json, dentro del directorio de la copia de seguridad. Una segunda ejecución del mismo comando omite lo que ya está hecho, reintenta lo que falló y coloca las páginas hijas bajo los padres que creó la primera ejecución. El directorio de la copia de seguridad debe admitir escritura. --reset-state empieza de cero; una restauración en un espacio distinto lo exige.
Lo que se deja como está, y se lista: las páginas que ahora están en otro espacio, las páginas movidas a otro padre y las páginas en vivo que la copia de seguridad no contiene. Nunca se elimina, se envía a la papelera, se archiva ni se mueve nada.
Un espacio nuevo
--create-space crea el espacio cuando no existe, con el nombre de la copia de seguridad, y vuelca la página de inicio respaldada en la página de inicio del nuevo espacio. Restaurar con otra clave crea una copia del espacio: las páginas cuyos originales siguen existiendo en el espacio de origen también se crean en la copia.
Lo que no se puede recuperar
- ID. Las páginas y carpetas restauradas son nuevas: sus ID, autores, fechas de creación e historial de versiones son nuevos. Los enlaces entre páginas restauradas se corrigen; los enlaces desde otros espacios siguen apuntando a los ID antiguos.
- Movimientos. Las páginas movidas a otro padre desde la copia de seguridad no se devuelven a su sitio. Al eliminar una carpeta en Confluence, sus páginas suben de nivel en lugar de ir a la papelera; la restauración recupera la carpeta pero deja esas páginas donde están.
- Permisos. Las restricciones de página y los permisos del espacio no forman parte de la copia de seguridad.
Permisos
Restaurar requiere los permisos de Confluence para añadir y editar páginas, carpetas, adjuntos y etiquetas en el espacio, y para crear espacios cuando se usa --create-space.
Recuperación ante desastres, de principio a fin
# 1. Cada noche: una copia de seguridad restaurable (solo se vuelven a descargar las páginas cambiadas)
acs2md space get by-key DEVOPS --output-dir /backups
# 2. En cualquier momento: ¿qué ha cambiado, se ha enviado a la papelera o se ha eliminado desde entonces?
acs2md space check by-key DEVOPS --backup-dir /backups/DEVOPS
# 3. Cuando se pierde algo: revisa el plan y después restaura
acs2md space restore by-key DEVOPS --backup-dir /backups/DEVOPS --dry-run
acs2md space restore by-key DEVOPS --backup-dir /backups/DEVOPS
# 4. Confirma: las páginas restauradas coinciden ahora con sus originales
acs2md space check by-key DEVOPS --backup-dir /backups/DEVOPSPara devolver una sola página, usa page restore; consulta Restaurar páginas en el manual de acp2md. acs2md incluye el mismo comando:
acs2md page restore --backup-dir ./backups/DEVOPS --page-id 3134096561