restowbackup

← Volver a la visión general

Hoja de ruta

Lo que Restow hace hoy, lo que está previsto a continuación y más adelante y lo que queda fuera de alcance. La línea de tiempo empieza en la versión actual y avanza al desplazarse; las versiones anteriores están debajo. Los elementos previstos no llevan números de versión ni fechas, y una función cuenta como publicada solo cuando está en una versión publicada, no antes.

Ir a las versiones anteriores ↓

  1. Publicado, línea de versiones actual

    0.4.0 a 0.4.7

    Recursos compartidos, copias inmutables, detección de ransomware, SharePoint, captura del archivo desde el buzón, grupos de Microsoft 365, periodo de actualizaciones de las claves de licencia, objetos que ya no se copian, recordatorios de caducidad

    Actualizar a la 0.4.0 ejecuta diecisiete migraciones de la base de datos. Los recursos compartidos de archivos y el traslado de la base de datos necesitan el docker-compose.yml de la 0.4.0, así que vuelva a ejecutar el instalador de la 0.4.0 tras la actualización; SharePoint necesita un permiso añadido y un nuevo consentimiento de administrador por inquilino. Lea primero las notas de actualización de la 0.4.0. Actualizar a la 0.4.4 ejecuta cuatro migraciones más (0059 a 0062); crean índices en las tablas más grandes, así que planifique la actualización de una instalación grande fuera de la ventana de copias. Los trabajos de correo que ya archivaban antes de la 0.4.4 siguen haciendo exactamente lo mismo: no arranca nada nuevo por sí solo. Actualizar a la 0.4.5 ejecuta tres migraciones más (0063 a 0065); ninguna reescribe una tabla. A partir de entonces, una imagen que se arranca a mano con una clave de Business o Service Provider que no la cubre se detiene antes de sus migraciones (todas las claves emitidas hasta ahora son licencias beta y cubren todas las versiones 0.x y 1.x). Los grupos de Microsoft 365 son opcionales: tras la actualización no se copia ningún grupo hasta que las reglas de protección lo activen. Actualizar a la 0.4.6 no ejecuta ninguna migración; actualice restow-pve en cada nodo de Proxmox VE antes de fiarse de las restauraciones de contenedores o de las pruebas de arranque. Actualizar a la 0.4.7 ejecuta cuatro migraciones más (0066 a 0069); ninguna reescribe una tabla, y restow-pve no necesita actualización. La actualización no excluye ningún invitado de Proxmox VE ni fija ningún precio. Los objetos que ya estaban huérfanos cuentan como confirmados. Los buzones desactivados y sin licencia y los OneDrive y sitios bloqueados que fallaban cada noche los reconoce la primera sincronización del directorio o la primera copia tras la actualización (un sitio bloqueado, por su primera copia): espere un aviso por cada uno (un usuario sin licencia suele tener dos, buzón y OneDrive), o una advertencia para un inquilino con muchos, y confírmelos en los objetos protegidos cuando sean intencionados. Las fuentes conectadas mediante una aplicación propia antes de la 0.4.7 no tienen fecha de caducidad y, por tanto, ningún recordatorio hasta que se anote en la página de la fuente, y una aplicación central cuyo secreto viene del entorno necesita ENTRA_CLIENT_SECRET_EXPIRES_AT. Los webhooks y los destinatarios de notificaciones reciben los eventos nuevos solo cuando están marcados en la matriz de notificaciones. Volver atrás tras las migraciones de la 0.4.5 (a la 0.4.4) o de la 0.4.7 (a la 0.4.6) no se probó: haga una copia de seguridad de la base de datos antes de actualizar.

    • Recursos compartidos de archivos (SMB y NFS)

    • Copia y restauración de recursos compartidos de archivos

      Copia de un recurso compartido SMB (Windows Server, Samba, un NAS) o de una exportación NFS desde el servidor, sin agente en el servidor de archivos. Restow lo monta en solo lectura durante una ejecución, en un contenedor ejecutor temporal que arranca el montador, y conserva los permisos NTFS (las ACL de NFSv4 y POSIX, en la medida de lo posible) en cada punto de restauración. Los archivos abiertos, ilegibles o sin conexión se omiten y se listan, y la ejecución termina con advertencias. Restauración como ZIP, en una carpeta nueva, en la ubicación original (sobrescribir, conservar ambos, omitir) o en otro recurso compartido, con permisos cuando el destino lo permite. SMB 2.1 a 3.1.1; se rechazan SMB1 y NTLMv1. Las instalaciones nuevas arrancan el montador por defecto; una existente lo obtiene con «Activar recursos de red». Probado contra Samba en la prueba de humo de la versión, no contra Windows Server, un recurso de Synology o TrueNAS, exportaciones NFS reales ni un host con SELinux en modo enforcing. Sin VSS sobre SMB: los archivos abiertos con bloqueo exclusivo se omiten.

      0.4.0 Todas las ediciones

    • Recursos compartidos: comprobaciones de restauración, trabajos de copia y presupuestos

      Cada punto de restauración nuevo se comprueba releyendo hasta 20 archivos de muestra y comparándolos, el repositorio recibe cada semana una comprobación de restic del 5 por ciento de sus datos y la preparación para restaurar valora un recurso compartido por su punto de restauración más reciente. Los trabajos de copia escriben el punto de restauración comprobado más reciente de un recurso en una carpeta de otro, en modo sobrescribir o espejo; un trabajo de copia no guarda versiones y se marca como que no es una copia de seguridad. Los presupuestos por recurso, por inquilino y como valor por defecto (desactivados por defecto, los fijan los administradores del proveedor) avisan al 80 por ciento y rechazan copias nuevas al 100 por ciento. Los recursos cuentan en el estado, la página de inicio, la preparación para restaurar, las advertencias, el historial, las estadísticas y la vista del proveedor. Todavía no: repositorios distintos del principal, restauración autoservicio para usuarios del inquilino y un bloque de recursos compartidos en los informes programados.

      0.4.0 Todas las ediciones

    • Protección frente a ransomware y abusos

    • Copias inmutables

      Inmutabilidad por repositorio, desactivada hasta que un administrador la activa (Repositorios, «Cambiar la inmutabilidad»). En S3, Object Lock (compliance o governance, de 1 a 3650 días) bloquea los paquetes, los manifiestos y las claves envueltas del almacén de fragmentos (Microsoft 365, IMAP, discos de Proxmox VE) y los objetos de cada repositorio de restic (equipos, recursos compartidos, contenedores de Proxmox VE). Restow comprueba primero el bucket, renueva el bloqueo de los datos que aún se usan, trata un borrado que el almacenamiento rechaza como «todavía no» y nunca envía la cabecera de omisión de governance. En los directorios (el volumen de Docker, un recurso NFS) un retraso de borrado hace que el propio código de Restow se niegue a borrar o sobrescribir un archivo hasta que pase el plazo; protege frente al mal uso de Restow, no frente a alguien con acceso al servidor, y la interfaz dice que no es inmutabilidad. Los puntos de restauración muestran «Inmutable hasta <fecha>», en verde solo con una retención compliance que el propio almacenamiento ha comunicado; los resultados de la verificación y las advertencias aparecen en la tarjeta del repositorio, el panel y la vista del proveedor. Reducir la protección exige al propietario del proveedor con un inicio de sesión reciente. Probado contra un S3 simulado con Object Lock, todavía no contra un servicio real; el repositorio predeterminado de la instalación no puede hacerse inmutable.

      0.4.0 Todas las ediciones

    • Detección de ransomware con retención en pausa

      Cada punto de restauración nuevo de un equipo, recurso compartido, invitado de Proxmox VE, buzón, OneDrive, sitio de SharePoint o cuenta IMAP se juzga en busca de señales de ransomware con datos que la copia ya tiene: la cantidad de cambios frente al historial del propio objeto, borrados masivos, extensiones renombradas, extensiones de ransomware conocidas y notas de rescate, la entropía de una muestra de archivos nuevos y la relación de compresión y deduplicación de los datos nuevos. Un punto de restauración sospechoso recibe una insignia y las vistas de restauración ofrecen el más reciente sin hallazgos. Mientras no se resuelve, una retención en pausa detiene la retención y la poda de ese objeto, para que no se poden puntos de restauración antiguos y limpios mientras se acumulan los cifrados; solo un administrador pone fin a la pausa (falsa alarma o liberación, auditado). Nunca lee los datos una segunda vez, nunca bloquea una copia y no es un antivirus. Algunas señales necesitan el agente 0.4.0 en los equipos o restow-pve 0.4.0 en el nodo, y una señal sin datos dice «no disponible», nunca limpia. Activada tras la actualización, con sus umbrales e interruptores en Instalación, Detección de ransomware. Probada con ataques simulados, no con ransomware real.

      0.4.0 Todas las ediciones

    • Los endpoints de S3 exigen HTTPS

      Se rechaza un endpoint de S3 nuevo o modificado por http:// sin cifrar, también para los administradores del proveedor y el valor por defecto de la instalación, salvo hacia localhost, 127.0.0.1 y [::1]. Los endpoints guardados antes siguen funcionando y avisan en rojo de que deberían pasar a HTTPS; S3_ALLOW_INSECURE=true admite HTTP sin cifrar solo en entornos de prueba y desarrollo.

      0.4.0 Todas las ediciones

    • Notificaciones

    • Matriz de notificaciones

      En Integraciones, Notificaciones los eventos son las filas, agrupadas y marcadas por gravedad, y la campana, cada webhook y cada destinatario de notificaciones son las columnas, cada una con las opciones rápidas «Solo errores», «Errores y advertencias» y «Todo». Guardar queda auditado. La actualización rellena cada columna con exactamente lo que el canal recibía antes, de modo que al principio nada cambia; un webhook creado después empieza con los valores por defecto de su formato, y una regla de alerta ya no envía un evento a un canal cuya columna lo tiene desactivado. Eventos nuevos: backup.succeeded y verify.completed para el correo y la campana, backup.suspicious y backup.suspicious_hold, boot_test.failed y boot_test.unproven, e installation.disk_low para los administradores del proveedor.

      0.4.0 Todas las ediciones

    • Proxmox VE (vista previa)

    • Proxmox VE: progreso de una copia en curso

      VMs y contenedores, el inventario y la página del invitado muestran una barra de progreso («34% · 3,2 GB de 9,4 GB · 85 MB/s»), y las líneas del propio asistente (el id de la ejecución, lo que restic añadió, lo que no pudo leer) llegan al registro de la ejecución; una copia correcta con lagunas nombra los primeros 20 elementos ilegibles. Las copias de contenedores dejan ahora que restic escanee primero, de modo que hay un total frente al que mostrar el progreso. Necesita restow-pve 0.4.0 en el nodo. Probado con el nodo simulado de las suites de pruebas, no con un nodo real de Proxmox VE.

      0.4.0 Todas las ediciones

    • Proxmox VE: pruebas de arranque de puntos de restauración

      Un trabajo de Proxmox VE puede arrancar el punto de restauración más reciente de cada invitado cada semana o tras cada copia (desactivado por defecto; por defecto un límite de memoria de 8 GiB y cinco minutos de espera al agente invitado), y «Probar el arranque ahora» pide una a mano. El nodo lo restaura como un invitado nuevo en el pool restow-restore, lo aísla antes del arranque (enlaces de red desactivados, dispositivos passthrough, puertos serie, montajes bind y el script de hook eliminados), espera al agente invitado de QEMU y lo destruye en cualquier caso. Verde cuando el agente invitado respondió, amarillo cuando la VM solo arrancó, rojo cuando falló la restauración, el arranque o el inicio; la preparación para restaurar valora el punto de restauración más reciente por su prueba de arranque. Una prueba por nodo a la vez, nunca junto a una copia. Necesita restow-pve 0.4.0; probado con el nodo simulado, no con un clúster real de Proxmox VE.

      0.4.0 Todas las ediciones

    • Proxmox VE: restauración de archivos de contenedores y VMs (vista previa)

      En Servidores y equipos, Restauración de archivos, cada contenedor con un punto de restauración aparece en el grupo «Contenedores de Proxmox VE» y cada VM en «VMs de Proxmox VE», marcados como vista previa: se explora un punto de restauración y se descargan archivos y carpetas como un solo ZIP, leídos por el servidor desde el repositorio del invitado; las lecturas y descargas quedan auditadas. En las VMs, cada sistema de archivos legible de los discos es una carpeta (particiones GPT y MBR y volúmenes LVM lineales con ext2, ext3, ext4, XFS, NTFS o FAT), leída en un proceso hijo restringido, sin montar nada en el servidor ni en el nodo. No se pueden leer: btrfs, ZFS, ReFS, LVM thin, RAID, BitLocker y LUKS, archivos comprimidos con NTFS y EFS; los registros de XFS y NTFS no se reproducen, así que compare un archivo importante con el original antes de fiarse de él. Restaurar archivos sueltos en un invitado en ejecución no está construido.

      0.4.0 Todas las ediciones

    • Trabajos de Proxmox VE en Servidores y equipos

      Los trabajos de Proxmox VE aparecen en Servidores y equipos, Trabajos junto a los trabajos de equipos, con una columna Tipo, los invitados por trabajo, la programación, la última y la próxima ejecución y «2 de 5 invitados listos» mientras se ejecuta una ronda; una copia iniciada a mano aparece como una fila hasta que termina. Nuevo trabajo es un menú con una entrada por tipo, y el formulario del trabajo de Proxmox VE lista las VMs y los contenedores que entran en el trabajo. La página de un invitado muestra lo que añade de media una copia posterior.

      0.4.0 Todas las ediciones

    • Servidores y equipos

    • Políticas de agentes

      Reglas para los agentes de servidores y equipos en tres niveles: la instalación (Instalación, política de agentes), el inquilino y el trabajo de copia. Cada nivel puede sustituir un ajuste salvo que la instalación lo bloquee, y cada vista dice de dónde viene un valor. Los ajustes: una ventana de copia (días de la semana y un intervalo horario) en la que pueden empezar las copias programadas, las recuperaciones y los reintentos; recuperar las copias perdidas en cuanto el equipo vuelve a estar encendido o en la próxima ventana, opcionalmente solo hasta una antigüedad máxima; un límite de subida para los trabajos que no tienen uno propio; solo con corriente; y el número de reintentos automáticos (de 0 a 10). La página de un equipo muestra la política que le afecta y por qué espera una copia pendiente. La ventana, la recuperación, los reintentos y el motivo de la espera necesitan el agente 0.4.0; el límite de subida y la corriente llegan también a agentes más antiguos. Probado solo con servicios simulados.

      0.4.0 Todas las ediciones

    • Restauración de archivos para el rol de restauración

      Los operadores de restauración (el rol de restauración de un inquilino) abren Servidores y equipos, Restauración de archivos: listan los equipos, leen sus puntos de restauración y su inmutabilidad, los exploran, descargan archivos como ZIP y restauran archivos en el equipo. En Proxmox VE leen el resumen y los puntos de restauración de un invitado y exploran y descargan archivos de los puntos de restauración de contenedores y VMs. Los ajustes, los tokens, los trabajos, copiar, verificar y las pruebas de arranque, restaurar un invitado entero y revocar o eliminar siguen siendo de los administradores. Cada lectura, descarga y restauración queda auditada con el operador como actor.

      0.4.0 Todas las ediciones

    • Carpetas de datos que un trabajo deja fuera y cómo funciona un equipo

      El agente 0.4.0 informa de cuáles de una lista fija de carpetas de datos de Linux (/opt, /usr/local, /srv, /var/www, los volúmenes de Docker y Podman, las carpetas de PostgreSQL, MySQL y MongoDB bajo /var/lib) existen y contienen archivos, solo los nombres. El editor de trabajos nombra las carpetas que los equipos del trabajo tienen de verdad y el trabajo deja fuera, y la página de un equipo ofrece «Añadir esta carpeta al trabajo». La página de un equipo dice cómo funciona (contenedor, máquina virtual, físico, con o sin escritorio), y un equipo Linux en un contenedor o una máquina virtual sin escritorio recibe el perfil de servidor; el explorador de archivos de un punto de restauración dice qué carpetas contiene.

      0.4.0 Todas las ediciones

    • Trabajos, vista en vivo y panel

    • Crear el trabajo recomendado

      Junto a cada aviso de «sin trabajo» (trabajos, inventario, fuentes, directorio, VMs y contenedores) y como «Proteger todo lo que no tiene trabajo» en la tarjeta de preparación del panel: una vista previa de lo que crea o amplía el clic y después un trabajo por tipo (correo cada 8 horas; equipos por sistema y perfil; un trabajo de Proxmox VE, a diario a las 22:00 en modo instantánea). Un segundo clic amplía el mismo trabajo en lugar de crear otro. Solo administradores, anotado en el registro de auditoría.

      0.4.0 Todas las ediciones

    • Copias en curso en la barra lateral y un panel de ejecución más vivo

      Las entradas Trabajos y VMs y contenedores muestran un indicador con el número de copias en curso y en espera; el tooltip las lista y un clic abre la ejecución. En el panel de la ejecución los gráficos avanzan con el tiempo entre mediciones, los números cuentan hacia arriba, el tiempo restante cuenta hacia abajo y una línea dice cuándo informó la ejecución por última vez (o que Microsoft Graph la limita). La primera copia de un buzón grande muestra «Primera copia: X de Y elementos» sobre todos los intentos, con una estimación del tiempo restante; un OneDrive muestra «X elementos hasta ahora» hasta que está listado por completo.

      0.4.0 Todas las ediciones

    • Todos los inquilinos en Trabajos

      En «Todos los inquilinos», Trabajos de Mail & SaaS y de Servidores y equipos lista cada inquilino con sus trabajos por tipo, lo que se ejecuta y espera, cómo terminaron las copias más recientes y la próxima ejecución, con filtros y ordenación; una fila abre los trabajos del inquilino en solo lectura. La vista sigue siendo rápida en instalaciones grandes porque lee mediante un índice y conserva las cifras de cada inquilino durante 30 segundos.

      0.4.0 Service Provider

    • Crecimiento del almacenamiento en el panel

      El panel muestra cómo creció el almacenamiento de un inquilino en 1 semana, 1 mes, 3 meses o 1 año; a partir de 3 meses la estimación es una banda entre el crecimiento más lento y el más rápido, y donde se conoce el espacio libre dice cuándo se llena el repositorio con este crecimiento.

      0.4.0 Todas las ediciones

    • Microsoft 365

    • SharePoint Online: copia y restauración de sitios

      Cada sincronización del directorio encuentra los sitios de SharePoint del inquilino (incluidos los sitios de grupos de Microsoft 365 y de Teams; los sitios personales se dejan al OneDrive de su propietario), y cada sitio es un objeto protegido propio, en los trabajos de correo como los buzones y los OneDrive; las reglas de protección tienen un modo de sitios, todos o los elegidos. Una copia contiene cada biblioteca de documentos (opcionalmente con versiones), cada lista con sus columnas y los valores de los campos de cada elemento como JSON, y la descripción del sitio. Restauración en el explorador: descarga como ZIP; archivos y carpetas en la biblioteca original o en otra de un sitio copiado (conservar ambos, sobrescribir con SharePoint guardando el archivo antiguo como versión, u omitir los existentes); elementos de lista como elementos nuevos en su lista original, solo campos editables. No se copian ni se restauran: los chats de Teams, los adjuntos de los elementos de lista, el diseño del sitio, la navegación y los flujos de trabajo; los permisos se conservan como información y nunca se restauran; un sitio o una biblioteca eliminados no se recrean. Necesita el permiso de aplicación Sites.ReadWrite.All (Sites.Read.All basta para copiar) y un nuevo consentimiento de administrador por inquilino. Probado contra un Microsoft Graph simulado, no contra un inquilino real de Microsoft 365.

      0.4.0 Todas las ediciones

    • Actualizaciones, base de datos y almacenamiento

    • Ejecuciones en curso durante una actualización

      El diálogo de instalación cuenta lo que se ejecuta y espera en cada inquilino y pregunta qué hacer: «Detenerlas limpiamente» (el valor por defecto: las ejecuciones de Microsoft 365 y correo guardan un punto de control y se detienen; se espera a las ejecuciones de agentes y de recursos compartidos, 30 minutos como máximo), «Esperar a que terminen» (dos horas como máximo) o «No esperar». Desde la confirmación hasta que termina la actualización no empieza ninguna ejecución nueva, y las programaciones que vencen entretanto se ejecutan después; todos los usuarios conectados ven un aviso. Los agentes 0.4.0 retienen sus propias programaciones y esperan; los anteriores a la 0.4.0 no, así que una copia que un equipo así inicia por sí mismo durante una actualización puede fallar si la API se reinicia debajo. Una copia de Proxmox VE que se ejecuta mientras Restow se actualiza ya no falla: el nodo sigue intentándolo durante cinco minutos.

      0.4.0 Todas las ediciones

    • Mover la base de datos a otro disco

      Instalación, Base de datos muestra dónde guarda la base de datos sus datos, su tamaño, el espacio libre debajo y bajo el repositorio local predeterminado, y lo que necesita la próxima actualización. Con el actualizador opcional, el propietario del proveedor traslada la base de datos a un directorio de otro disco: primero se comprueba (otro sistema de archivos local, ext4, XFS, Btrfs o ZFS, espacio para los datos), después se copia, se compara archivo por archivo, se arranca de prueba y se conmuta, con reversión automática ante cualquier fallo; la copia antigua se conserva y se impide que arranque hasta que se elimine. La comprobación previa del actualizador suma ahora lo que escribe una actualización y rechaza la que no cabe, y la pestaña Actualizaciones lista los volcados previos (el propietario puede descargar o eliminar uno). El traslado no se probó con un actualizador real y su contenedor auxiliar de Docker antes de publicar la versión.

      0.4.0 Todas las ediciones

    • Aviso de poco espacio en disco

      Cada 15 minutos la API comprueba el disco bajo la base de datos (a través del actualizador) y bajo el repositorio local predeterminado. Con menos de una décima parte libre, y siempre por debajo de 5 GiB, los administradores del proveedor reciben un aviso en la campana, y las reglas de alerta que incluyen «Poco espacio en disco» lo envían, una vez por episodio.

      0.4.0 Todas las ediciones

    • Rendimiento en instalaciones grandes

      La memoria sigue acotada sea cual sea el tamaño: el primer catálogo de un recurso compartido se transmite a la base de datos en lotes de 5.000 archivos, la reutilización de los permisos SMB mantiene un índice compacto para que los recursos con millones de archivos no se queden sin memoria, los sitios de SharePoint con miles de listas ya no tardan un tiempo cuadrático, los mapas de bloques de los discos de VM explorados se guardan en caché por tamaño, y la renovación de Object Lock envía 32 solicitudes a la vez y continúa un recorrido interrumpido donde se detuvo. El juicio de ransomware y la vista Todos los inquilinos de Trabajos leen mediante índices.

      0.4.0 Todas las ediciones

    • 0.4.1

    • Los datos almacenados cuentan los repositorios de restic

      Repositorios, Uso, el mosaico «Almacenado» del panel, las estadísticas y la API contaban solo los paquetes del almacén de fragmentos: un inquilino con 10 GB de copias de contenedores veía «Almacenado 10,9 kB». «Almacenado» suma ahora los repositorios de restic de equipos, recursos compartidos y contenedores de Proxmox VE, y la tarjeta de uso muestra cuánto está en el almacén de fragmentos y cuánto en repositorios de restic. El tamaño del repositorio de un contenedor se mide una vez en su primera subida tras la actualización, después se cuenta por subida y borrado y se mide de nuevo tras una poda. El ahorro por deduplicación, el crecimiento y el gráfico siguen siendo cifras del almacén de fragmentos y lo dicen; el tamaño de un repositorio no tiene historial, y «Datos protegidos» sigue contando solo las fuentes del almacén de fragmentos.

      0.4.1 Todas las ediciones

    • Proxmox VE: se nombra un asistente de nodo antiguo

      Una copia de contenedor en curso en un nodo con restow-pve anterior a la 0.4.0 mostraba «Aún no se ha informado del progreso» durante toda su ejecución. Ahora dice que el progreso necesita restow-pve 0.4.0, qué versión ejecuta el nodo y que hay que actualizarlo. restow-pve pide ahora una actualización dos minutos después de arrancar y luego cada seis horas, en lugar de solo tras seis horas; la actualización sigue esperando a que no haya ninguna copia ni restauración en curso.

      0.4.1 Todas las ediciones

    • 0.4.2

    • Detener una copia desde la aplicación web

      Proxmox VE: «Detener copia» en la tabla VMs y contenedores, en la página del invitado y en el panel de ejecución detiene una copia en curso (el nodo termina la tarea de vzdump mediante la API de Proxmox VE, también si la copia se inició en el propio Proxmox VE) y «Retirar» saca al instante una copia en cola. Por nodo, «Pausar la cola» y «Cancelar todas las pendientes», también para todo el inquilino. Servidores y equipos: «Detener copia» en la página del equipo y en el panel de ejecución; el agente detiene restic de forma limpia en su siguiente contacto, en aproximadamente un minuto. Las ejecuciones de recursos compartidos también se pueden cancelar desde el panel de ejecución (las de Microsoft 365 e IMAP ya se podían). Una ejecución detenida termina como cancelada, no como fallida: sin alerta de fallo, y no cuenta como la última copia. Cada parada pregunta antes y queda en el registro de auditoría. Necesita restow-pve desde la 0.4.2 en el nodo y el agente desde la 0.4.2 en el equipo; un nodo anterior termina una copia cancelada en su siguiente subida, un agente anterior la termina.

      0.4.2 Todas las ediciones

    • Los nodos y agentes siguen una actualización del servidor

      Cuando el servidor ejecuta la nueva versión, las ejecuciones nuevas siguen en pausa mientras los nodos de Proxmox VE y los agentes la instalan (entonces están libres), hasta que todos los alcanzables la notifican o pasan 15 minutos. Instalación › Actualizaciones muestra su progreso y, para los que no se alcanzaron, el comando para actualizar a mano. «Actualizar a <versión>» en la página de un nodo y de un equipo pide la actualización en cualquier momento. `restow-agent update` en un equipo instala la versión ofrecida al instante, como `restow-pve update` en un nodo, con la misma descarga firmada que la autoactualización automática; mientras se ejecuta una copia se niega, y el agente se actualiza solo cuando queda libre.

      0.4.2 Todas las ediciones

    • Actualizaciones planificadas y una zona horaria de la instalación

      Una actualización se puede planificar para una fecha y hora elegidas, hasta con 30 días de antelación, además de los plazos desde ahora: antes no se pausa nada, y todos los usuarios conectados ven un aviso desde un día antes. La hora se lee en la zona horaria de la instalación, que se elige en el asistente de configuración (con la zona del navegador preseleccionada) y que un propietario cambia en Instalación › Servidor y operación › Servidor; un inquilino nuevo empieza con ella. Una instalación configurada antes de la 0.4.2 sigue usando RESTOW_TIME_ZONE, después TZ y después Europe/Berlin hasta que un propietario elija una. Cuando hay una actualización disponible, la versión de la barra lateral pasa a ser un «Actualizar a <versión> disponible» resaltado que lleva a Instalación › Actualizaciones, para quienes pueden instalar actualizaciones.

      0.4.2 Todas las ediciones

    • Proxmox VE: cada punto de restauración nuevo se comprueba en minutos

      Un punto de restauración nuevo de una VM o un contenedor se relee en minutos tras su copia (una muestra de sus bloques, en un contenedor una comprobación de restic de un subconjunto), un número acotado por pasada, además de la comprobación semanal de cada invitado. El ajuste «Comprobar cada punto de restauración nuevo justo después de la copia» (Instalación › Proxmox VE, propietario) viene activado; desactivado, un punto nuevo espera a la comprobación semanal. En Preparación de recuperación hay «Comprobar ahora» por invitado y «Comprobar todos los no verificados». Una comprobación en rojo muestra el error que encontró, por ejemplo el de restic, en lugar de solo «los bloques no coincidían o no se pudieron leer». Es la relectura por muestras, no una prueba de arranque; las pruebas de arranque siguen como en la 0.4.0.

      0.4.2 Todas las ediciones

    • Proxmox VE: una cadena de copias nueva para un contenedor cuyo repositorio ha desaparecido

      Tras cambiar el repositorio principal con «Mantener las copias existentes donde están», todos los contenedores con un repositorio existente fallaban con «repository does not exist». Antes de que una copia reciba su credencial, el servidor comprueba ahora una vez por ejecución que el repositorio está en el principal. Si falta en todas partes, empiezan un repositorio nuevo y una cadena de copias nueva, visibles en la página del invitado («Nueva cadena de copias iniciada el <fecha>») y en el registro de auditoría; los puntos de restauración anteriores pasan a «No disponible» (sin restauración, sin comprobación, no cuentan para la preparación, la retención los omite). Si sigue en un destino retirado, la copia se rechaza con un mensaje claro. «Restablecer repositorio» (la zona de peligro de la página del invitado, solo contenedores) hace lo mismo a petición: se escribe el nombre del invitado, hace falta un inicio de sesión reciente y queda auditado. Un recurso compartido cuyo repositorio ha desaparecido todavía no se repara así; está previsto.

      0.4.2 Todas las ediciones

    • Proxmox VE: cadencias de los trabajos, la VM del propio servidor de Restow y copias con avisos

      Los trabajos de copia de Proxmox VE admiten las cadencias de un trabajo de correo: cada pocas horas, a diario, en los días de la semana elegidos, cada mes o con una expresión cron, no más a menudo que cada hora. La VM en la que se ejecuta el propio Restow se reconoce por su UUID de SMBIOS (restow-pve desde la 0.4.2 lo notifica) o la marca un administrador; ningún trabajo la copia, y «Copiar ahora» o incluirla en un trabajo exige una confirmación que nombra el riesgo de copiarla con el propio Restow. Una copia que vzdump termina con «TASK WARNINGS» después de confirmar su punto de restauración cuenta como «Correcta con avisos» en lugar de fallida.

      0.4.2 Todas las ediciones

    • Se muestra dónde acaban las copias

      El repositorio principal efectivo del inquilino se nombra en la página de un invitado y en su nuevo diálogo «Copiar ahora», en los diálogos de trabajos y de conexión de Proxmox VE, en la página de un equipo y de un recurso compartido y en los editores de trabajos, con el valor por defecto de la instalación en el disco local del servidor resaltado. La sección Repositorios y los diálogos que añaden nodos de Proxmox VE, equipos y recursos compartidos avisan «Las copias acaban en el propio disco del servidor» cuando el repositorio principal es un directorio en un disco del propio servidor (no un recurso de red).

      0.4.2 Todas las ediciones

    • Un traslado de almacenamiento se lleva los repositorios de restic

      Un «traslado» del repositorio principal copia ahora también los repositorios de restic de contenedores, equipos y recursos compartidos, verificados por tamaño y por SHA-256 como los packs. Espera a las copias de contenedores y las ejecuciones de recursos compartidos en curso antes de cambiar, y copia los manifiestos de los puntos de restauración de VM y contenedores. «Mantener las copias existentes donde están» y promover una copia se rechazan mientras haya contenedores o recursos compartidos con repositorios de restic, que solo el «traslado» se lleva. Un cambio del repositorio principal se sigue rechazando mientras un equipo del inquilino esté activo.

      0.4.2 Todas las ediciones

    • Comprobación del almacenamiento: temporalmente ilegible no es dañado

      La comprobación del almacenamiento ya no califica de dañado un pack que no pudo leer en ese momento (una descarga cortada a mitad de transferencia, una conexión restablecida, un tiempo de espera agotado, S3 pidiendo ir más despacio, acceso denegado). Lee ese pack de nuevo, hasta tres veces, y enumera lo que sigue ilegible como «temporalmente ilegible» en Preparación de recuperación › Integridad del almacenamiento, con el error, en cuántas comprobaciones seguidas no se pudo leer y cuándo; cada comprobación posterior lo lee primero, y «Volver a comprobar estos packs» lee de nuevo solo los packs marcados. Los objetos que lo usan reciben «Atención»; pasan a «No restaurable» solo cuando un pack está demostradamente dañado (falta, tamaño o suma de comprobación incorrectos) o no se pudo leer en 3 comprobaciones seguidas a lo largo de al menos 24 horas. Las lecturas de S3, también las restauraciones y las comprobaciones de restauración, reanudan una descarga que se corta. El valor storageIntegrity.state de la API de integración tiene el nuevo valor unreadable (contrato 1.5.0, aditivo).

      0.4.2 Todas las ediciones

    • Explorador de restauración: una entrada por persona y un calendario por meses

      El explorador de restauración muestra una entrada por persona: buzón, OneDrive y una cuenta IMAP asociada se agrupan, y la segunda columna muestra Correo, Calendario, Contactos y OneDrive, cada uno con sus propios puntos de restauración. Los sitios de SharePoint y Teams tienen una sección propia, y un OneDrive huérfano aparece bajo el nombre de su propietario como «Cuenta eliminada». La lista llega por páginas, con búsqueda por nombres, direcciones e ID de cuenta y un filtro por tipo en la base de datos; va bien hasta unas 10.000 personas por inquilino y es más lenta por encima. El calendario de un buzón tiene una vista mensual, día a día en todos sus calendarios o en uno, y una serie se abre en sus apariciones, calculadas a partir del patrón guardado con las apariciones modificadas en su sitio; los eventos se ordenan por el momento en que empiezan.

      0.4.2 Todas las ediciones

    • Editor de trabajos de correo: copiar, archivar o ambos

      La primera pregunta del editor de trabajos de correo es qué debe hacer el trabajo: copiar, archivar o ambos (ambos es el valor por defecto de un trabajo nuevo). Mientras archiva, el editor nombra cómo llega el correo al archivo (journaling de Exchange, que se configura una vez por inquilino) con el camino a su configuración, y sugiere copiar cada 8 horas; solo copiar nombra el hueco entre dos ejecuciones, en el que un correo que llega y se borra no está en ninguna copia. Un trabajo que solo archiva no hace copias programadas. Desde la 0.4.4 el editor ofrece además las vías de captura que encajan con cada tipo de buzón (véase la 0.4.4).

      0.4.2 Todas las ediciones

    • 0.4.3

    • Proxmox VE: VMs y contenedores en pestañas, con búsqueda, filtros y un panel de detalle

      VMs y contenedores tiene tres pestañas con recuentos: Invitados, Trabajos de copia y Nodos. La tabla de invitados tiene una búsqueda por ID y nombre, filtros por nodo, tipo (VM o contenedor), trabajo de copia (también «Sin trabajo de copia») y estado, un botón «Solo problemas», columnas ordenables, páginas de 25 a 250 y el estado en la dirección, de modo que un enlace abre la misma vista. Cada fila muestra una insignia de estado elegida por prioridad, con una pequeña barra de progreso mientras se ejecuta su copia o «+N» si hay más problemas. Un clic abre un panel de detalle con todos los estados, el error completo y los avisos de la última ejecución en un bloque que se puede copiar, la comprobación de restauración, los tamaños, el trabajo, las ejecuciones más recientes y las acciones (copiar ahora, detener, retirar, comprobar ahora, abrir la página del invitado). La columna «Copia» dice «Primera: 32 GB el 3 oct · Última: +210 MB», y el panel muestra los datos nuevos de las últimas 30 copias como barras pequeñas. La pestaña Nodos muestra el latido de cada nodo, su versión de restow-pve con «Actualizar a …» si va retrasada, su versión de Proxmox VE, su número de invitados, su cola y sus problemas. Las tablas mantienen anchos de columna fijos y una sola altura de fila, así que ya no saltan mientras se ejecutan copias. Probado con pruebas del DOM, no visualmente en un navegador con miles de invitados.

      0.4.3 Todas las ediciones

    • Proxmox VE: un repositorio bloqueado ya no hace fallar una comprobación de restauración

      Justo después de una copia de contenedor, la nueva comprobación de restauración fallaba a menudo en rojo con un mensaje de restic sobre bloqueos obsoletos, aunque la comprobación nunca se ejecutó: otra ejecución, normalmente la propia copia del invitado, mantenía el bloqueo del repositorio. Una comprobación que un bloqueo deja fuera se pospone ahora y se reintenta tras diez minutos, y el resultado anterior se mantiene. Tras dos horas dice «No se pudo comprobar: repositorio bloqueado» en amarillo (Atención en Preparación de recuperación), nunca en rojo ni en verde, con quién mantiene el bloqueo. Los bloqueos obsoletos de restic se eliminan antes de la comprobación y antes de la retención, un invitado no se comprueba mientras se ejecuta algo suyo, y un punto de restauración nuevo se comprueba dos minutos después de su confirmación como pronto. restow-pve espera hasta 15 minutos el bloqueo durante una copia de contenedor. Las comprobaciones que fallaron en rojo por un bloqueo antes de la actualización siguen en rojo hasta «Comprobar ahora». Probado con una API de Proxmox VE y un almacén S3 simulados, no con un clúster real.

      0.4.3 Todas las ediciones

    • Actualizar nodos y agentes ahora

      En la tarjeta de nodos y agentes de Instalación › Actualizaciones, «Actualizar nodos y agentes ahora» inicia el paso en el que siguen al servidor cuando ninguna actualización llevó a él: el servidor se actualizó a mano, o se perdió la respuesta a una actualización anunciada. Lo inicia un administrador con todos los inquilinos; las ejecuciones nuevas se pausan como máximo 15 minutos mientras los nodos y agentes alcanzables que van por detrás instalan la versión cuando están libres, y la pausa termina cuando acaban (auditado como update.fleet_started con manual: true). Fuera de una actualización, los nodos y agentes que van por detrás figuran como «Actualización disponible». Los nodos con restow-pve 0.4.1 no reaccionan y necesitan una actualización a mano.

      0.4.3 Todas las ediciones

    • Proxmox VE: restow-pve reinicia los demonios de Proxmox VE tras actualizarse a sí mismo

      Tras una autoactualización, los demonios de Proxmox VE seguían con el complemento de almacenamiento antiguo cargado hasta que se reiniciaban. restow-pve reinicia ahora pvedaemon, pveproxy, pvestatd y pvescheduler como hace el instalador, y restow-pve update reinicia también el servicio restow-pve en marcha, de modo que el nodo notifica la nueva versión con su siguiente latido. Un nodo que un restow-pve anterior actualizó reinicia los demonios una vez por sí mismo. Los nodos con restow-pve 0.4.1 necesitan una actualización a mano: /opt/restow-pve/bin/restow-pve update, después systemctl restart restow-pve pvedaemon pvestatd pveproxy pvescheduler.

      0.4.3 Todas las ediciones

    • Actualizaciones: sin el falso «El actualizador no está en ejecución»

      Al anunciar una actualización se podía mostrar «El actualizador no está en ejecución» aunque el actualizador la aceptara unos segundos después. La api esperaba 5 segundos una respuesta mientras el actualizador comprueba primero Docker, la configuración de Compose, el espacio en disco y la versión en ejecución (de 5 a 12 segundos en instalaciones reales); la actualización se ejecutaba entonces sin la pausa de las ejecuciones nuevas, sin la entrada de auditoría update.scheduled y sin el paso en el que los nodos de Proxmox VE y los agentes siguen al servidor. La api espera ahora hasta un minuto y, si la respuesta sigue perdida, vuelve a leer el estado del actualizador y da la actualización por aceptada si el actualizador la muestra; la pestaña Actualizaciones dice que está comprobando si se aceptó. La pestaña tampoco dice ya «no está en ejecución» durante unos segundos de vez en cuando: el actualizador responde al instante con su última comprobación y vuelve a comprobar en segundo plano.

      0.4.3 Todas las ediciones

    • 0.4.4

    • Captura del archivo: Microsoft 365 por notificaciones de cambios de Graph

      Restow archiva los buzones de Microsoft 365 sin journaling. Para cada buzón archivado se suscribe a las notificaciones de cambios de Microsoft Graph y obtiene cada correo nuevo en pocos minutos tras la entrega (los borradores se omiten, y los identificadores inmutables de mensaje evitan que un correo movido se archive dos veces). Una puesta al día de todas las carpetas y de las eliminaciones recuperables se ejecuta por defecto cada seis horas y al instante tras una notificación perdida, y el correo existente del buzón se asume una sola vez, por páginas reanudables, marcado como capturado después. No hace falta ningún permiso nuevo de Microsoft. Las notificaciones solo llegan si la URL pública de la instalación es https en el puerto 443 y Microsoft puede alcanzarla; si no, cada buzón se consulta, por defecto cada 15 minutos, y el estado de la captura dice por qué. Es una captura cercana al momento y no es completa: un correo eliminado definitivamente antes de que Restow lo obtuviera puede faltar, y de los elementos recuperables solo se lee la carpeta de eliminaciones. Graph no puede exportar correo de más de unos 150 MB; ese correo se registra, no se archiva. Restow no puede ver si el inquilino conserva el correo eliminado (una directiva de retención o una retención por litigio, Litigation Hold), porque Graph v1.0 no ofrece forma de leerlo: un administrador lo confirma por fuente en la página del archivo, que muestra los comandos de PowerShell de Exchange Online que lo comprueban. Probado contra una API de Graph simulada, no contra un inquilino real de Microsoft 365.

      0.4.4 BusinessService Provider

    • Captura del archivo: IMAP y Google Workspace por sincronización IMAP con IDLE

      Las cuentas IMAP y de Google Workspace se archivan con una sincronización continua. La activación anota dónde está cada carpeta, el correo existente se asume una sola vez (reanudable, marcado como capturado después) y cada pasada posterior lee solo el correo nuevo: una consulta de estado por carpeta, primero los metadatos, y el origen solo del correo que el archivo aún no tiene para la cuenta. Se leen todas las carpetas salvo Borradores; en Gmail y Google Workspace solo Todos los mensajes, Spam y Papelera, que contienen cada correo una sola vez. Cuando el servidor ofrece IMAP IDLE, Restow mantiene una conexión abierta por cuenta (por defecto hasta 300 cuentas por worker) y archiva el correo nuevo en instantes, con una comprobación de las demás carpetas por defecto cada cinco minutos; las demás cuentas se consultan por defecto cada diez minutos. Una fuente puede ajustarse a «solo comprobar a intervalos», para proveedores con un límite de conexiones ajustado. Si cambia UIDVALIDITY, la carpeta se lee de nuevo sin archivar nada dos veces. Es una aproximación y se marca como tal: un correo movido o eliminado justo tras la entrega puede perderse, e IMAP no tiene nada parecido a una retención. Probado contra un servidor IMAP simulado y el Dovecot de la prueba de humo de la versión, no contra un inquilino real de Google Workspace ni un proveedor de alojamiento. Las fuentes IMAP con OAuth2 siguen sin poder crearse, así que una cuenta de Google Workspace se reconoce por su host o su lista de carpetas.

      0.4.4 BusinessService Provider

    • Copias reenviadas al archivo

      Para sistemas de correo sin journaling de Exchange, el proveedor envía a Restow una copia de cada correo entrante y saliente mientras el correo está en su transporte: una regla BCC en Postfix o mailcow, un redirect :copy de Sieve o la regla de enrutamiento «Añadir más destinatarios» de Google Workspace. El receptor de journaling acepta estas copias simples igual que los informes de journaling de Exchange. Cada cuenta IMAP puede tener una dirección de archivo propia (emitida a petición, renovable, auditada): una copia enviada a ella pertenece exactamente a esa cuenta, mientras que una copia enviada a la dirección de journaling del inquilino se asigna por sus cabeceras y el remitente SMTP. Una copia reenviada no tiene un sobre como el de un informe de journaling, así que un destinatario en copia oculta solo aparece si el proveedor lo escribe en una cabecera. La copia se crea en el transporte del proveedor, antes de que el usuario pueda tocar el correo. La página del archivo muestra para cada cuenta cómo configurar la regla (Postfix, mailcow, Sieve, Google Workspace) y si llegan copias. Probado contra el propio receptor, nunca contra un Postfix, mailcow, proveedor de alojamiento o Google Workspace reales. El receptor no comprueba el remitente (SPF).

      0.4.4 BusinessService Provider

    • Un elemento archivado por correo, sin importar por cuántas vías se capturó

      El correo que llega al archivo por más de una vía se reconoce por su Message-ID y su contenido (los bytes exactos o un hash del cuerpo) y se conserva una sola vez. Una captura que no es más fuerte que lo que el archivo ya tiene pasa a ser una anotación de captura de ese elemento; una más fuerte (por ejemplo una copia reenviada tras una sincronización IMAP) pasa a ser el elemento y nombra el anterior al que sustituye, que queda sin cambios en la cadena. El mismo Message-ID con otro cuerpo se conserva dos veces y se marca. Los informes de journaling y los mensajes importados siguen siendo elementos propios. La búsqueda y el detalle del elemento nombran las copias reenviadas, el correo capturado después y las demás vías que capturaron el mismo correo de nuevo; las capturas sustituidas se ocultan salvo que se pidan, y la exportación de una búsqueda lo sigue. Todos los escritores del archivo anexan ahora por una vía común y suben el original antes de tomar el bloqueo de la cadena del inquilino, de modo que un informe grande ya no retiene las demás entregas del inquilino.

      0.4.4 BusinessService Provider

    • Editor de trabajos de correo: solo las vías de captura que encajan con el buzón

      El editor de un trabajo de correo reconoce el tipo de buzón (Microsoft 365, IMAP, Google Workspace por IMAP, IMAP en un host de Microsoft) y ofrece solo las vías de captura que le corresponden: Microsoft Graph y el journaling de Exchange para Microsoft 365, el archivado IMAP y el reenvío para IMAP y Google Workspace. Cada vía se marca como captura en el transporte o cercana al momento, se bloquea con la edición que la incluye y se exige al menos una por tipo. Los valores por defecto de un trabajo nuevo, y de un trabajo que activa el archivado, son Graph y la sincronización IMAP, cada una con una asunción única del correo que ya está en el buzón. Las cuentas IMAP en un host de Microsoft reciben el consejo de conectar en su lugar una fuente de Microsoft 365. Desactivar el archivado o una vía pregunta antes: el correo nuevo deja de archivarse desde entonces y el archivo conservado hasta ahora se mantiene. Una dirección de journaling solo se solicita mientras está elegido el journaling de Exchange. Los trabajos que ya archivaban antes de la actualización conservan solo el journaling para Microsoft 365 y aún no tienen vía para las cuentas IMAP y de Google Workspace, así que no arranca nada nuevo por sí solo: un administrador activa Graph o el archivado IMAP en el trabajo. Pausar un trabajo solo detiene sus copias programadas; el archivado continúa.

      0.4.4 Todas las ediciones

    • Página del archivo: estado de la captura, confirmación de retención, comandos de PowerShell y direcciones de reenvío

      La página del archivo muestra la captura desde los buzones (flujos, cómo se detecta el correo y por qué un buzón se comprueba a intervalos, recuentos de 24 horas y 7 días, la asunción del correo existente), la captura por buzón con una puesta al día a petición y, por fuente de Microsoft 365, la confirmación de la retención con los comandos de solo lectura de PowerShell de Exchange Online que la comprueban. El journaling de Exchange viene como comandos de PowerShell ya preparados (conector, buzón para informes de journaling no entregables, regla de journaling) y una espera del primer informe que comprueba cada 5 segundos. El reenvío tiene una dirección por cuenta IMAP (creada, copiada, renovada tras una pregunta), su estado e instrucciones para Postfix, mailcow, Sieve y Google Workspace. Un aviso que se puede ocultar nombra los trabajos de correo en los que se podría activar Graph o el archivado IMAP, y el estado de la captura lista los trabajos que esperan una vía.

      0.4.4 BusinessService Provider

    • Alertas cuando la captura del archivo se detiene

      La alerta archive.failed (campana, reglas, correo) informa ahora también de un buzón cuya captura lleva más de una hora en error, de una cuenta IMAP cuyas copias reenviadas llevan 24 horas sin llegar aunque su trabajo las quiere, y de una dirección de journaling sin informes desde hace 24 horas, en cada caso solo después de haber recibido antes y una vez por periodo de fallo. La campana y el correo dicen de cuál se trata y llevan a su sección de la página del archivo.

      0.4.4 BusinessService Provider

    • Límites del receptor de journaling y una cadena del archivo que ya no se bifurca

      Una transacción SMTP entrega en el archivo de un solo inquilino; un destinatario de un segundo inquilino recibe 452 y el remitente lo entrega por separado. El límite por IP emisora sube de 60 a 600 conexiones por minuto, y un nuevo límite por dirección de archivo (300 por minuto) responde 451. El correo dirigido a la dirección de journaling que no es un informe de journaling se archiva como copia reenviada en lugar de como informe incompleto. Corregido: la cadena del archivo podía bifurcarse cuando dos escritores de un inquilino marcaban sus elementos con la misma hora. Los escritores toman ahora el último elemento en el orden que recorre la comprobación de la cadena (hora, luego id) y marcan el suyo estrictamente más tarde.

      0.4.4 BusinessService Provider

    • Explorador de restauración: los buzones y OneDrives grandes se abren en milisegundos

      Abrir un buzón o un OneDrive grande en el explorador de restauración ya no tarda de segundos a minutos. Antes, cada listado de carpeta leía dos veces por solicitud todas las entradas del punto de restauración y comparaba con ellas las carpetas de debajo sin índice; ahora lee los hijos de la carpeta y las carpetas de debajo desde dos índices nuevos. En una prueba con 120.000 mensajes y 200.000 archivos, la lista de carpetas de correo pasó de 2,5 s a 15 ms, la raíz del buzón y del OneDrive de más de un minuto a 15 ms, y cada carpeta de OneDrive de 1,5 a 2,5 s a unos 10 ms; una carpeta de 50.000 mensajes muestra su primera página en unos 0,5 s (antes 1,9 s). Las versiones que OneDrive conservó de un archivo y la vista mensual del calendario leen los mismos índices, y la vista previa del correo y la descarga de adjuntos leen exactamente los bytes de un fragmento con una solicitud de rango, en lugar de descargar todo su pack de hasta 64 MiB. Los puntos de restauración de la 0.3.4 y anteriores que el worker aún no ha convertido se listan como antes. Los índices se construyen mientras se ejecuta la actualización, lo que tarda más en una instalación grande (véanse las notas de actualización).

      0.4.4 Todas las ediciones

    • Proxmox VE: el diálogo de trabajos cabe en una pantalla de escritorio

      El diálogo de trabajos de Proxmox VE es el doble de ancho y distribuye sus ajustes en dos columnas a partir del ancho de una tableta (nombre y programación con las próximas ejecuciones a la izquierda; alcance, puntos de restauración, comprobación de restauración, prueba de arranque e invitados a la derecha), de modo que los ajustes de un trabajo caben en una pantalla de escritorio sin desplazarse. En un teléfono sigue siendo una columna a todo el ancho.

      0.4.4 Todas las ediciones

    • 0.4.5

    • Claves de licencia con periodo de actualizaciones

      Una clave de licencia puede llevar las condiciones de sus actualizaciones: un periodo de actualizaciones (updates_until) y una serie. Una clave con periodo de actualizaciones cubre todas las versiones creadas hasta el final de ese día (UTC), sea cual sea su número de versión. Una clave sin él cubre una serie entera: el formato de clave restow-license-v1 la nombra, y una clave sin serie cuenta como la serie 1, que también cubre todas las versiones 0.x. Todas las claves emitidas hasta ahora son licencias beta: no llevan ninguno de los dos miembros y cubren de forma permanente todas las versiones 0.x y 1.x. El formato acepta los miembros nuevos como opcionales e ignora los que no conoce, de modo que las claves que emita más adelante el servidor de licencias siguen verificándose; los seis miembros de hoy siguen siendo obligatorios y conservan sus reglas. Una clave también puede nombrar la clave de firma del fabricante con la que se firmó (kid), para poder rotar una clave de firma sin romper las claves emitidas. Las claves con los miembros nuevos solo se verifican a partir de la 0.4.5. Las claves se siguen verificando sin conexión: Restow no contacta con ningún servidor de licencias y nada se detiene mientras funciona, porque una clave no caduca; solo hay versiones que cubre y versiones que no.

      0.4.5 BusinessService Provider

    • La imagen lleva su fecha de publicación

      Cada imagen lleva la fecha de su versión (RESTOW_RELEASED_AT, la fecha de la confirmación de la etiqueta de la versión), y GET /api/v1/status la devuelve como releasedAt. Las notas de la versión publican la misma fecha en una línea released: junto a los digests de las imágenes, y así la comprobación de actualizaciones conoce la fecha de una versión antes de instalar nada. Las claves de licencia con periodo de actualizaciones se miden con esta fecha.

      0.4.5 Todas las ediciones

    • La comprobación de actualizaciones y el arranque respetan el periodo de actualizaciones

      La comprobación de actualizaciones marca las versiones que la clave de Business o Service Provider instalada no cubre y lo dice con calma en la página Actualizaciones: la versión instalada sigue funcionando y la versión cubierta más reciente se instala como siempre. Restow se niega a instalar o planificar una versión no cubierta (409 update-not-covered), y la campana y las reglas de alerta update.available anuncian solo la versión cubierta más reciente. Una versión que se arranca a mano, sin pasar por la comprobación de actualizaciones, y que la clave instalada no cubre se detiene antes de sus migraciones de la base de datos, con una línea de registro que nombra la versión, el final del periodo de actualizaciones y la fecha de la última versión cubierta; para volver atrás no hay que restaurar nada, y el actualizador opcional repone la versión anterior por sí mismo. Con RESTOW_RUN_AS_COMMUNITY=1 arranca en su lugar como Community: los módulos siguen apagados y no se cambia ningún dato. Nada de esto vale para licencias beta, compilaciones de desarrollo, instalaciones sin clave ni la demo pública.

      0.4.5 BusinessService Provider

    • Página de licencia: condiciones de actualización, un aviso antes del final y la renovación

      La página de licencia muestra qué actualizaciones incluye la clave instalada («Actualizaciones: todas las 1.x (licencia beta)» o «Actualizaciones: hasta» con la fecha) y, desde 30 días antes del final del periodo y después de él, un aviso breve en la misma página; no se envía ningún correo. Una clave nueva sustituye a la activa aunque esta esté en vigor, y así se instala una renovación: las claves anteriores quedan en el historial, y cada instalación o sustitución se anota en el registro de auditoría con las condiciones de actualización de la clave y si cubren la versión en ejecución. Se rechaza una clave que no cubre la versión en ejecución (outside_update_period), y también una firmada con una clave de firma del fabricante que esta versión aún no conoce (unknown_signing_key): primero actualice y después instálela.

      0.4.5 BusinessService Provider

    • Demo pública: un reinicio nocturno rápido

      La demo pública se reinicia desde una plantilla guardada en lugar de volver a rellenarse. Tras un relleno completo, deploy/demo/reset.sh guarda una plantilla (un volcado de la base de datos de la demo, sus roles y una copia de cada volumen que escribe el relleno) ligada a la versión, los identificadores de las imágenes y el .env, y la restaura en las noches siguientes, de modo que la demo queda fuera de línea unos 15 a 25 segundos en lugar de muchos minutos. Al restaurar, cada hora del sistema avanza la antigüedad de la plantilla, así que el historial sigue terminando hoy y «última copia hace 12 minutos» sigue siendo cierto; el registro de auditoría, el archivo de correo y las propias horas de las instantáneas de restic conservan sus horas reales, y se eliminan los inicios de sesión. Una plantilla de más de 7 días (configurable), una versión nueva, imágenes nuevas, un .env modificado o una restauración fallida conducen a un relleno completo. Las comprobaciones de estado de los servicios de la demo se ejecutan cada 2 a 5 segundos en lugar de cada 10 a 15, de modo que un reinicio espera menos a servicios que ya están listos. Afecta solo a la demo pública, no a una instalación.

      0.4.5 Todas las ediciones

    • Quitar un equipo revocado de Restow, con o sin sus copias

      Un equipo revocado se puede quitar de Restow. «Quitar de Restow» en su zona de peligro ofrece «Quitar de la lista y conservar las copias hasta que caduquen» (la copia más reciente más la regla más larga de la retención del equipo, leída como tiempo) o «Eliminar el equipo y sus copias», con el nombre de host escrito y un inicio de sesión reciente. El equipo desaparece de cada lista, selector, panel y recuento y de su trabajo de copia; sus ejecuciones, informes y entradas de auditoría permanecen. El worker elimina el repositorio de restic del equipo en cada destino que contiene archivos suyos: el principal, sus copias y los principales retirados. Eliminar al instante se rechaza mientras una retención legal sobre el inquilino o un punto de restauración sospechoso sin resolver retenga las copias, y el worker espera esa retención cuando las copias caducan. Los objetos que el almacenamiento aún bloquea (S3 Object Lock, el retraso de borrado de un directorio) se aplazan hasta que su bloqueo termina, y se anotan como una depuración rechazada. La página de equipos lista las eliminaciones aún pendientes, con la fecha, la retención o el bloqueo. Cada paso se audita. La migración 0064 añade el estado de eliminación a los equipos.

      0.4.5 Todas las ediciones

    • Revocar un equipo que ya no existe, y una sugerencia para hacerlo

      Una desinstalación que espera a un equipo apagado ofrece ahora «Revocar ahora», y un equipo sin contacto durante más de un número configurable de días (30 por defecto, en Alertas del equipo) sugiere revocarlo, en su página y entre lo que requiere atención. El panel de detalle del equipo en el inventario muestra la sugerencia como un estado y ofrece «Revocar ahora» y, una vez revocado el equipo, también «Quitar de Restow».

      0.4.5 Todas las ediciones

    • Aviso cuando un repositorio de directorio está en el disco del sistema

      Restow avisa cuando un repositorio de directorio está en el disco del sistema del servidor de Restow, el disco bajo el sistema operativo, Docker y la base de datos: un disco del sistema lleno detiene todo, no solo las copias. La api lo reconoce desde dentro de su contenedor por el dispositivo y el dispositivo de bloques de la ruta, incluidos el valor por defecto de la instalación y los recursos del montador. El aviso aparece en la página Repositorios, en la línea «Las copias van a:» de los editores de trabajos y en el mosaico de almacenamiento del panel, donde los administradores del proveedor ven además el espacio libre, su tendencia de la última semana y cuándo se llenaría el disco. La api también vigila ahora el disco del sistema por poco espacio. No se bloquea nada.

      0.4.5 Todas las ediciones

    • Grupos de Microsoft 365 como objetos protegidos: calendario y conversaciones

      El calendario y las conversaciones de los grupos de Microsoft 365, y de los grupos que hay detrás de Teams, son objetos protegidos de un tipo propio, group. La sincronización del directorio lee groups/delta como un segundo flujo delta junto a los usuarios (una enumeración completa en la primera y en cada sincronización completa, solo cambios entre medias), conserva solo los grupos de Microsoft 365 (los grupos de seguridad y de distribución no tienen buzón de grupo) y deja huérfanos los eliminados, cuyos puntos de restauración permanecen. Los grupos son opcionales: las reglas de protección tienen un interruptor «Proteger todos los grupos de Microsoft 365» (por defecto solo los grupos seleccionados, es decir, ninguno mientras no los incluya en la lista de objetos protegidos), y los grupos sueltos se pueden incluir ahí. Un trabajo de correo con alcance «todos» cubre cada grupo protegido, como los sitios. Los buzones de grupo nunca cuentan como buzones protegidos. La migración 0065 añade el tipo de objeto. Tras la actualización no se copia ningún grupo hasta que las reglas de protección lo activen o se incluyan grupos; la primera sincronización del directorio lee una vez completos los grupos de cada fuente de Microsoft 365.

      0.4.5 Todas las ediciones

    • Calendario y conversaciones de grupo: qué contiene una copia

      La copia de un grupo contiene su calendario, leído por el mismo código de calendario que el de un usuario (series maestras con sus excepciones), y cada publicación de cada conversación, guardada como mensaje RFC 5322 en mail/Conversations con sus archivos adjuntos cuando Graph los entrega (si no, se anota su ausencia). Si Graph niega a la aplicación el listado de eventos de un calendario de grupo, Restow recurre a calendarView del grupo y a una lectura por serie maestra; un calendario que Graph niega por completo es una advertencia de la ejecución, no un fallo. Solo se vuelven a leer los hilos con publicaciones nuevas. Un grupo que ya no existe falla con la causa nueva graph.group_unavailable. No hace falta ningún permiso nuevo de Microsoft: Group.Read.All y Calendars.ReadWrite siempre fueron necesarios. Probado contra una API de Graph simulada, nunca contra un inquilino real de Microsoft 365: las lecturas de calendario que Graph permite a una aplicación sobre un grupo pueden variar según el inquilino, y la copia informa de lo que no pudo leer.

      0.4.5 Todas las ediciones

    • Calendario y conversaciones de grupo: restauración, descarga y exportación

      El explorador de restauración lista los grupos en la sección «SharePoint y Teams» con las áreas «Calendario del grupo» y «Conversaciones»; la descarga (EML, JSON) y la exportación (EML, MBOX, PST) funcionan como en los buzones. Una restauración en el buzón de un usuario recupera eventos y conversaciones, las conversaciones como correo en una carpeta Conversations. Una restauración en el propio grupo recupera solo eventos de calendario, porque Microsoft Graph no permite a ninguna aplicación publicar en una conversación de grupo: cada publicación se informa como no restaurable, con las vías que funcionan. Restaurar un grupo no es una suplantación, porque un grupo no pertenece a ninguna persona. La API de integración informa de lastSuccess.groups y ObjectKind incluye group (contrato 1.6.0, aditivo: los clientes que tratan los tipos de objeto de forma exhaustiva deberían aceptar el valor nuevo), y el panel lista los calendarios y las conversaciones de grupo entre las últimas copias.

      0.4.5 Todas las ediciones

    • Iniciar ahora y Detener en cada trabajo

      Las dos listas de trabajos, Servidores y equipos y Mail & SaaS, tienen «Iniciar ahora» y «Detener» en cada fila y en el menú «…» de la fila: un botón de tamaño fijo que dice «Iniciar ahora», «Detener» mientras las copias del trabajo se ejecutan o esperan, y «Deteniendo…» una vez pedido. Detener pregunta antes y dice qué significa para el tipo de trabajo. El antiguo «Run now» se llama ahora «Iniciar ahora». Rutas nuevas de la API: POST /api/v1/backup-jobs/:id/cancel (cada copia en cola o en ejecución de un trabajo de correo, de equipo, de recurso compartido o de copia, en una sola solicitud), POST /api/v1/pve/jobs/:id/run (una copia de cada invitado que cubre un trabajo de Proxmox VE (vista previa), como lo haría su programación, sin mover la programación) y POST /api/v1/pve/jobs/:id/cancel. Todas se auditan, son para los administradores del inquilino y los roles del proveedor que pueden operar, y están cerradas en la demo pública.

      0.4.5 Todas las ediciones

    • Paneles de detalle en el inventario y en las listas de trabajos

      El inventario y las listas de trabajos abren un panel de detalle como el de VMs y contenedores: un clic en una fila, en su nombre o en su estado lo abre (?machine=<id> en el inventario, ?job=<id> en las listas de trabajos, de modo que un enlace lo abre). Lista cada estado, los textos completos de error y de aviso de la copia más reciente o de la ejecución fallida en un bloque de ancho fijo que se puede copiar (en un equipo también el final del registro), lo que requiere atención, las comprobaciones de restauración, los datos clave, las ejecuciones más recientes y las acciones. Las tablas mantienen su diseño como VMs y contenedores: anchos de columna fijos, una sola altura de fila (también en las filas que cargan), una insignia de estado compacta por fila (la más urgente de las que corresponden; verde solo si la comprobación de restauración se superó) con el progreso de una copia en ejecución al lado, celdas de una línea sin información emergente y botones de acción de un solo tamaño. Las columnas que no caben en una pantalla ceden desde la derecha; el panel lo tiene todo.

      0.4.5 Todas las ediciones

    • Dependencias: bibliotecas de traducción y el código de tokens de Microsoft

      Actualización mayor de las bibliotecas de traducción, i18next 26 y react-i18next 17, actualizadas juntas; los textos, los plurales y los formatos de número y fecha se leen exactamente como antes en inglés y alemán. @azure/msal-node ya no es una dependencia, porque nada lo usaba: los tokens de la aplicación de Microsoft 365, el consentimiento del administrador y el inicio de sesión OAuth2 de IMAP usan el cliente de tokens propio de Restow, sin cambios.

      0.4.5 Todas las ediciones

    • Correcciones: carpeta de adjuntos en el explorador de restauración, diálogo de trabajos de Proxmox VE en el teléfono, reinicio de la demo

      En el explorador de restauración, un mensaje de correo guardado como JSON (demasiado grande para un mensaje normal) ya no muestra a su lado una carpeta <asunto>.attachments vacía: sus adjuntos se restauran con el mensaje y nunca se listaron, y la fila de carpeta que la copia registra para ellos queda ahora oculta del listado, del árbol de carpetas y de la búsqueda. El diálogo de trabajos de Proxmox VE (vista previa) apila en el teléfono (390 px) sus tres campos de puntos de restauración, de modo que «Puntos de restauración mensuales» ya no se sale del borde del diálogo. El script de reinicio de la demo pública lee ahora RESTOW_DEMO_COMPOSE_FILES de deploy/demo/.env, como decía siempre su README, y rechaza las entradas que no son archivos de Compose antes de detener nada.

      0.4.5 Todas las ediciones

    • Comprobación del inquilino de Entra y del secreto OAuth2 de IMAP

      El asistente de configuración acepta el inquilino de Entra para el correo de Graph solo como identificador de inquilino (GUID) o dominio verificado, como ya hacían los Ajustes; cualquier otra cosa se rechaza (422) antes de que pueda llegar a la URL del token. La URL nunca estuvo abierta a otro host (el valor se codifica como URL y el host de inicio de sesión es fijo), pero un valor como .. cambiaba su ruta. Se rechaza un secreto OAuth2 de IMAP si su tenantId no es un identificador de inquilino, un dominio verificado, common, organizations o consumers, y si su tokenEndpoint no es una URL https. Ni la API ni la interfaz crean todavía esos secretos; la solicitud del token necesitará además la política de direcciones de las conexiones IMAP antes de ofrecer XOAUTH2.

      0.4.5 Todas las ediciones

    • 0.4.6

    • Proxmox VE: la restauración de un contenedor funciona en el Proxmox VE actual

      Restaurar un contenedor desde Restow fallaba con Can't use string ("restow") as a HASH ref en el Proxmox VE actual, que pasa el ID del almacenamiento a la restauración de contenedores del proveedor de copias antes del hash de información. Las pruebas de arranque de contenedores («No arrancó») y «Restaurar como invitado nuevo» de contenedores se veían afectadas; las VM no. El complemento de restow-pve acepta ahora ambas formas; se instala con la actualización de restow-pve, que recarga los demonios de PVE. Actualice restow-pve en cada nodo de Proxmox VE antes de fiarse de las restauraciones de contenedores o de las pruebas de arranque (el servidor lo ofrece tras su propia actualización, y los nodos se actualizan solos cuando están libres); hasta entonces siguen fallando como antes. Para los puntos de restauración de contenedores que dicen «No arrancó» o tienen una comprobación de restauración fallida de antes de la 0.4.3, ejecute «Probar arranque ahora» o «Comprobar ahora» cuando el nodo esté actualizado. Probado con pruebas en Perl del complemento (la restauración del contenedor con y sin el ID del almacenamiento); no se ejecutó contra un nodo real de Proxmox VE antes de la versión.

      0.4.6 Todas las ediciones

    • Detección de ransomware: una cadena de copias nueva ya no se marca

      La primera copia de la cadena de copias nueva de un contenedor (su repositorio faltaba o se reinició) se juzgaba frente a la cadena antigua y se marcaba como sospechosa, porque en un repositorio vacío cada archivo es nuevo. La base de comparación empieza ahora con la cadena más reciente. Un punto de restauración marcado así antes de la actualización sigue marcado: márquelo como falsa alarma. La primera copia de una cadena nueva se llama además «Primera copia», no «Incremental».

      0.4.6 Todas las ediciones

    • Los equipos quitados conservan sus copias navegables

      Hasta que se eliminan sus copias, la página de un equipo quitado ofrece su restauración y nada más: los puntos de restauración, la exploración, la descarga en ZIP y la clave del repositorio siguen funcionando para ellas, con auditoría como antes. La lista de equipos quitados enlaza «Restaurar archivos». Restaurar sobre el equipo y cualquier otra acción siguen rechazadas (404); una vez eliminadas las copias, el equipo desaparece para cualquier lector. Antes de la 0.4.6 la interfaz no ofrecía las copias que un equipo quitado conserva hasta que caducan; desde la 0.4.6 sí.

      0.4.6 Todas las ediciones

    • «Comprobación en cola» mientras espera una comprobación de restauración

      Tras «Comprobar ahora» de una VM o un contenedor, la fila dice «Comprobación en cola» bajo la última comprobación, y la página del invitado lo dice sobre el resultado anterior, hasta que llega el resultado; ambas se actualizan cada pocos segundos mientras tanto.

      0.4.6 Todas las ediciones

    • Los textos de error se abren en una tarjeta que se puede copiar

      Los textos de error tras una insignia o una línea cortada (la prueba de arranque, la comprobación de restauración de una VM o un contenedor en su página y en la tabla de preparación de recuperación) se abren al pasar el ratón o con el foco del teclado en una tarjeta con el texto completo, seleccionable y con un botón Copiar, en lugar de una información emergente del navegador. Una prueba de arranque que no arrancó muestra el mensaje del nodo bajo su insignia, en la página del invitado y en la tabla de preparación de recuperación.

      0.4.6 Todas las ediciones

    • 0.4.7

    • Microsoft 365: los objetos desactivados, sin licencia y bloqueados figuran como «No se copia», con el motivo

      Un buzón cuya cuenta está desactivada o no tiene licencia de Exchange Online ya no hace fallar su copia cada noche con «Microsoft rechazó la solicitud». La copia pregunta una vez a Microsoft si el usuario existe pero no tiene buzón, marca el buzón «No se copia: cuenta desactivada» o «No se copia: sin licencia» y termina de forma neutra: sin cómputo de fallos, sin rojo en la preparación por la antigüedad, sin considerarse atrasado, sin alerta backup.failed ni webhook job.failed, y las copias existentes se conservan. La sincronización del directorio fija el mismo estado a partir de su sondeo del buzón. Solo cuenta la respuesta de Exchange: una cuenta desactivada cuyo buzón Microsoft sigue sirviendo (un buzón compartido, una persona que ya no está) se copia como antes, y un 401 o 403 nunca se interpreta así. Lo mismo vale para un OneDrive o un sitio de SharePoint que Microsoft bloqueó (HTTP 423, algo que Microsoft hace con el OneDrive de una cuenta sin licencia): en cuanto una única lectura barata confirma el bloqueo, figura como «No se copia: bloqueado», termina sin reintentos y deja de planificarse; la sincronización del directorio solo lo reanuda cuando vuelve a funcionar una lectura de la unidad o del sitio. La copia se reanuda sola tras la sincronización del directorio que encuentra la cuenta de nuevo activada o con licencia. Una restauración en el buzón original se rechaza con el motivo. Probado con una API de Microsoft Graph simulada, no con un inquilino real de Microsoft 365.

      0.4.7 Todas las ediciones

    • Ya no se copia, confirme

      Los objetos que Restow deja de copiar porque la fuente dice que ya no existen, están desactivados, sin licencia o bloqueados figuran primero en ámbar como «Ya no se copia, confirme», con el motivo y la fecha. No es un fallo, ni rojo, ni atrasado, pero los avisos, el panel y la preparación del inquilino quedan al menos en amarillo (nunca en verde), la API de integración los cuenta en readiness.toConfirm y los proveedores ven inactive_to_confirm entre las alertas de un inquilino, hasta que un administrador confirma «Sí, es intencionado»: por objeto, o para varios en la lista, por selección o por el filtro de la lista (como máximo 1000). Pueden confirmar los administradores del inquilino y los equipos del proveedor con derecho de configuración, y cada confirmación queda en el registro de auditoría; por la API puede llevar una nota para ese registro. Los objetos confirmados figuran en gris como «Ya no se copia a propósito», con quién lo confirmó y cuándo. Cuando el objeto vuelve a estar activo, la confirmación se descarta y la copia se reanuda; si más tarde vuelve a detenerse, Restow vuelve a preguntar. Un objeto excluido que desaparece de la fuente nunca se copió y cuenta como confirmado. La lista de objetos protegidos filtra por to_confirm y confirmed. Los eventos nuevos object.inactive (un aviso por objeto y transición, por defecto en la campana) y object.inactive_many (una advertencia por inquilino y día cuando más de 10 objetos, o más del 20 por ciento de los copiados antes, dejan de copiarse en un día) forman parte de la matriz de notificaciones; un webhook los recibe como report.alert en cuanto están marcados. Los objetos que ya estaban huérfanos antes de la actualización cuentan como confirmados, así que no aparece una larga lista en ámbar. La migración 0069 guarda el estado.

      0.4.7 Todas las ediciones

    • API de integración 1.7.0: orphaned significa ahora también «ya no se copia»

      El único cambio incompatible de la versión: el estado «orphaned» en GET /api/v1/objects, GET /api/v1/users, el object de GET /api/v1/jobs y objects.orphaned de GET /api/v1/status abarca ahora también los objetos que siguen en la fuente pero ya no se copian (cuenta desactivada, sin licencia o bloqueados por Microsoft); antes significaba eliminado de la fuente. El nuevo statusReason (account_disabled, no_license, locked, null para un objeto eliminado de la fuente) los distingue, así que una integración que trate orphaned como una cuenta borrada debería comprobarlo antes de actuar. Todo lo demás del contrato crece de forma aditiva: inactiveSince y statusConfirmedAt en los objetos, toConfirm en el resumen de preparación de status y verify/latest, una recoveryReadiness de usuario que figura al menos en amarillo mientras uno de sus objetos espera una confirmación, los invitados excluidos de Proxmox VE como guests.excluded (fuera de guests.total y guests.withoutJob), el motivo de omisión inactive en POST /api/v1/jobs/backup, data.job.result en los webhooks job.completed y job.failed de una restauración y los nuevos eventos de alerta. Los clientes que traten de forma exhaustiva los motivos de omisión o los nombres de evento deben aceptar los valores nuevos.

      0.4.7 Todas las ediciones

    • Las copias que Microsoft Graph o el almacenamiento retuvo ya no cuentan como fallidas

      Una copia de Mail & SaaS que termina, tras todos sus reintentos, con graph.throttled, graph.service_unavailable o storage.rate_limited figura en ámbar como «Retenida por el servicio, se reintenta» en lugar de «Fallida» en rojo, en todas las vistas: Historial, la vista de trabajos de todos los inquilinos, la lista de objetos, las ejecuciones de un trabajo, la página del trabajo, el panel y los detalles de la ejecución. Queda fuera de los recuentos de fallos de las estadísticas y del panel, no hace que el trabajo figure como fallido (cuenta la ejecución anterior), no pone en rojo un aviso ni termina su reconocimiento, y no genera alerta backup.failed ni webhook job.failed. La siguiente ejecución programada lo intenta de nuevo, y un objeto retenido durante más tiempo lo detectan las reglas de copias atrasadas y de preparación, que miran la antigüedad de la copia más reciente. Una restauración, exportación, importación o comprobación que un servicio retuvo no tiene una siguiente ejecución y sigue siendo un fallo. Las ejecuciones anteriores que terminaron con estas causas se muestran igual tras la actualización y salen de los recuentos de fallos de periodos pasados. Un trabajo en segundo plano respeta además un Retry-After de hasta 5 minutos (antes las esperas se limitaban a aproximadamente un minuto, y Exchange rechaza un reintento antes de que termine su penalización de concurrencia de buzones); las solicitudes de la interfaz conservan el límite de un minuto.

      0.4.7 Todas las ediciones

    • Un permiso concedido a la aplicación de Microsoft 365 surte efecto sin un secreto de cliente nuevo

      Un token lleva los permisos de la aplicación tal como eran cuando se emitió, y Restow lo conservaba hasta poco antes de que caducara (hasta aproximadamente una hora), así que un permiso que un administrador concedió entretanto se rechazaba hasta entonces o hasta que se introducía un secreto nuevo. Cuando Graph responde 401 o 403, Restow obtiene ahora un token nuevo una vez y vuelve a enviar la solicitud, como máximo una vez por minuto por inquilino o fuente, de modo que una serie de rechazos (un elemento que la aplicación no puede leer) no obtiene un token cada vez; las subsolicitudes rechazadas de un $batch también se reenvían una vez. Una solicitud rechazada de nuevo con el token nuevo falla como antes. Esto vale para las copias, las restauraciones, la sincronización del directorio, la captura del archivo, la búsqueda de grupos, la prueba de conexión y la comprobación del consentimiento. A un punto de acceso de tokens que no responde se le pregunta dos veces más (a 1 y 4 segundos) y después hace fallar la ejecución, que continúa desde su punto de control, en lugar de anotar cada elemento como fallido. El correo de notificaciones mediante un registro de aplicación todavía no obtiene un token nuevo tras un rechazo: un permiso Mail.Send concedido más tarde surte efecto cuando caduca el token en caché.

      0.4.7 Todas las ediciones

    • Una copia en cola ya no bloquea la cola de copias de todos los inquilinos

      Una copia en cola de un objeto cuya copia seguía en curso (la siguiente ejecución programada, «Copiar ahora») bloqueaba la cola de copias de todos los inquilinos hasta que esa copia terminaba, porque la cola de trabajos la ofrecía siempre primero y no entregaba nada. Un trabajo así espera ahora a la copia en curso de su objeto y deja pasar a todas las demás. Restow incluye para ello pg-boss 10.4.2 con un parche propio; las imágenes lo llevan, y quien compila desde el código fuente conserva la carpeta patches.

      0.4.7 Todas las ediciones

    • Recordatorios antes de que caduque el secreto de cliente o el certificado de un registro de aplicación

      Restow avisa a los administradores del proveedor 30 días antes de que caduque el secreto de cliente o el certificado del registro de aplicación central de Microsoft 365, de nuevo 7 días antes y una vez caducado, cada etapa una vez por fecha de caducidad; el evento installation.app_secret_expiring es una advertencia, un error una vez caducado. Una fuente conectada mediante un registro de aplicación propio recibe los mismos recordatorios como source.app_secret_expiring, que también pueden elegir los administradores del inquilino. La fecha es la introducida en Instalación › Aplicación multiinquilino de Microsoft (ENTRA_CLIENT_SECRET_EXPIRES_AT para un secreto del entorno), el «El secreto caduca el» de la aplicación propia de una fuente, o el fin del propio certificado; Restow no la lee de Microsoft Graph, lo que exigiría Application.Read.All. En una fuente, la tarjeta de conexión muestra «Caduca», y la fecha puede anotarse, cambiarse o quitarse allí sin volver a introducir el secreto. Una fecha, un secreto o un certificado nuevos reinician los recordatorios. La campana nombra la etapa («caduca en 5 días», «Renuévelo ahora», «ha caducado»), y el correo indica la fecha, los días que quedan y el ID de la aplicación y explica cómo renovar sin interrupción: crear el secreto nuevo, introducirlo con su fecha nueva y solo entonces borrar el antiguo en Entra. La insignia de caducidad pasa a ámbar 30 días antes del final en lugar de 60, y a rojo desde 7. Las fuentes conectadas mediante una aplicación propia antes de la 0.4.7 todavía no tienen fecha: anótela en la página de la fuente.

      0.4.7 Todas las ediciones

    • Buzón, OneDrive, SharePoint e IMAP: un error cuesta un área o un elemento, no toda la ejecución

      Copia de buzones: un 403 en calendarios o contactos (permiso que falta, una política de acceso que solo cubre el correo) hace fallar esa área y conserva el correo de la ejecución, en lugar de descartar la instantánea; un 401 a mitad de una ejecución guarda un punto de control y continúa; una carpeta conocida que Graph se niega a resolver se trata como ausente; un enlace delta que Graph rechaza como estado de sincronización no válido lleva a una resincronización completa; un mensaje que Exchange no puede convertir a MIME se guarda como JSON con sus adjuntos, como uno demasiado grande; una subcarpeta borrada mientras se listaba su carpeta superior ya no hace fallar la ejecución. SharePoint: una biblioteca o lista que Graph no entrega es un fallo de elemento que conserva su última copia, y el resto del sitio recibe su instantánea. OneDrive y SharePoint: un elemento que falló y pasó más tarde en la misma ejecución ya no queda entre los fallos, y un OneDrive cuya unidad Graph ya no encuentra falla como «OneDrive no disponible», permanente y sin reintentos. Copia IMAP: un inicio de sesión que el servidor rechaza por ahora (demasiadas conexiones, un sistema de autenticación caído) y un límite de descarga son la nueva causa transitoria imap.server_limit, que se reintenta sola, en lugar de una contraseña incorrecta o un buzón lleno; los mensajes borrados o movidos durante la copia no cuentan como fallos. Captura IMAP del archivo: un mensaje que el servidor rechaza ya no retiene su carpeta ni toda la pasada (tras tres pasadas la captura lo abandona), y las carpetas que una pasada no alcanzó conservan su estado. Cada $batch de Graph envía además una lectura idéntica solo una vez, de modo que un ID de solicitud repetido ya no hace fallar un lote, y una conexión cortada antes de que Graph respondiera se reintenta en las lecturas.

      0.4.7 Todas las ediciones

    • Las restauraciones que no restauraron nada ya no se notifican como completadas

      Una restauración completada con elementos fallidos y ninguno restaurado figura como «Nada restaurado» (rojo) y genera restore.failed y el webhook job.failed, con «Nothing was restored: N items failed.» como error. Una que omitió todos los elementos figura como «Todo omitido» (ámbar) y sigue siendo restore.completed, pero lo dice en lugar de afirmar que restauró algo (información, no éxito, en los canales de chat). Los webhooks job.completed y job.failed de una restauración completada llevan sus contadores en data.job.result (restored, skipped, failures, unverified).

      0.4.7 Todas las ediciones

    • Preparación para restaurar y copias atrasadas: objetos eliminados, miembros con calendario propio, copias en curso

      Un objeto eliminado de su fuente (un buzón borrado en Microsoft 365, por ejemplo) ya no se pone en rojo porque su última copia envejece: nada lo copia ya y la retención conserva siempre su punto de restauración más reciente, así que se valora según si esa copia se restaura, sin los motivos de antigüedad, y nunca está atrasado; una copia conservada que no se restaura sigue en rojo. La misma valoración rige en las estadísticas, la lista de objetos, la preparación global del inquilino, la API de integración y la notificación verify.completed; la tabla dice «Eliminado de la fuente, copias conservadas», y la página del informe empieza con una nota «Eliminado de la fuente». Un objeto cuya copia más reciente nunca se comprobó recibe una comprobación más del planificador semanal. En backup.overdue, un miembro de buzón con calendario propio se juzga por ese calendario o por los trabajos de correo del inquilino (el más relajado), lo que permita más tiempo, así que un miembro semanal de un trabajo diario ya no está atrasado dos días después de su copia, y un objeto cuya copia ha empezado y sigue en curso (hasta 21 días, una primera copia grande) tampoco está atrasado.

      0.4.7 Todas las ediciones

    • Proxmox VE: excluir un invitado de la copia a propósito

      Un administrador puede excluir una VM o un contenedor de la copia, para VM de prueba o invitados que se copian en otro sitio: «Excluir de la copia» en la página del invitado o, para una selección de los invitados de un nodo, en el inventario; «Incluir de nuevo» lo devuelve. Pueden hacerlo los administradores del inquilino y los administradores del equipo del proveedor. Ningún trabajo copia un invitado excluido, ni siquiera el trabajo de todos los invitados, y el trabajo recomendado lo deja fuera; su propio trabajo sigue registrado, de modo que al incluirlo de nuevo recupera lo que tenía. Excluir retira sus copias en cola (una copia puesta en cola en el mismo momento se retira en el siguiente latido del nodo, antes de que el nodo la reciba), y «Copiar ahora» y poner el invitado en un trabajo se rechazan hasta que se incluya de nuevo. Un invitado excluido no cuenta como desprotegido en ningún sitio: ni en las vistas generales, la preparación para restaurar, los avisos, backup.overdue, las estadísticas ni la vista del proveedor, y nunca impide que un inquilino esté en verde; los recuentos de invitados lo cuentan como excluido. En VMs y contenedores figura como «Excluido» (gris, nunca un problema) y tiene un filtro de estado propio, y el inventario muestra «Excluido: N» por nodo. Sus puntos de restauración siguen siendo restaurables, y la retención los trata como antes. Ruta nueva PUT /api/v1/pve/guests/:id/excluded, auditada como pve.guest.excluded. La actualización no excluye ningún invitado; los invitados sin trabajo siguen contando como «sin trabajo de copia» hasta que un administrador los excluya. restow-pve no necesita actualización para esto.

      0.4.7 Todas las ediciones

    • Proxmox VE: el tamaño de la primera copia y de una copia posterior como texto en el inventario

      El inventario muestra el tamaño de la primera copia de un invitado («Primera copia el» con la fecha y el tamaño guardado) y lo que añade de media una copia posterior («Media por copia posterior» con el tamaño y el número de copias en que se basa) como texto en la fila del invitado, no solo en su información emergente, de modo que ambos se pueden leer y copiar.

      0.4.7 Todas las ediciones

    • Trabajo recomendado con el archivo de correo

      Mientras la instalación ofrezca la captura del archivo desde el buzón (Business y Service Provider) y el inquilino tenga buzones o cuentas que un archivo pueda capturar, «Crear el trabajo recomendado» y «Proteger todo lo que no tiene trabajo» hacen que el nuevo trabajo de correo sobre todos los objetos copie y archive. Un trabajo de correo sobre todos los objetos que ya existe y todavía no archiva se cambia a archivar («Activar el archivado en …»); sus programaciones se conservan, y el cambio queda auditado como una edición en el editor de trabajos. El clic usa las vías de captura que no necesitan nada más en el inquilino: Microsoft Graph para los buzones de Microsoft 365, sincronización IMAP para las demás cuentas; el journaling y el reenvío siguen siendo una elección en el editor. El trabajo recomendado nunca cambia un trabajo de correo sobre objetos seleccionados (la vista previa los nombra), y un trabajo de correo sobre todos los objetos cuyas vías de captura se eligieron a mano se deja como está, cosa que dice la vista previa. La lista de trabajos de correo muestra «Activar el archivado» donde la recomendación lo activaría. Sin la captura, el trabajo recomendado se crea como antes, y los trabajos de correo existentes solo cambian cuando un administrador lo aplica.

      0.4.7 Todas las ediciones

    • Precios mensuales y una estimación de precio por inquilino para proveedores

      En Instalación › Precios, el propietario de la instalación introduce un precio mensual por buzón y por GB o TB de copias guardadas, en EUR, CHF, USD o GBP (como máximo cuatro decimales; un precio que se deja vacío no se muestra). Los buzones se cuentan como en el uso de buzones (un OneDrive no cuenta dos veces); el almacenamiento son las copias guardadas del inquilino, deduplicadas y comprimidas, en unidades decimales (1 GB = 10^9 bytes). Los administradores del proveedor con todos los inquilinos pueden leer los precios, solo el propietario los cambia, y cada cambio queda auditado con los valores anteriores y posteriores. La vista general de cada inquilino muestra entonces a los administradores del proveedor una tarjeta «Precio al mes» con lo que supone el inquilino a esos precios, una línea para los buzones y otra para el almacenamiento, y un enlace a los precios. Los usuarios del inquilino nunca ven los precios. Restow no factura nada y no limita nada, y los precios están vacíos tras la actualización.

      0.4.7 Todas las ediciones

    • Correcciones: restauraciones de IMAP y de listas, límites de tiempo de los trabajos, semilla de la demo, textos

      Una restauración IMAP cuya conexión se corta ahora falla y se reintenta en una conexión nueva, donde la comprobación del Message-ID omite lo que ya se había añadido, en lugar de terminar «completada» con todos los elementos restantes fallidos. Una restauración repetida de una lista de SharePoint en el modo «conservar ambos» ya no vuelve a añadir los elementos que añadió el intento interrumpido, y una restauración repetida de contactos en ese modo ya no crea contactos dos veces. Una restauración en un buzón indicado por dirección resuelve el buzón que aceptó la API, de modo que una dirección duplicada ya no elige otro. El límite de tiempo de un trabajo cuenta desde que la cola lo entregó, también mientras espera un hueco libre de su inquilino; una cancelación que llega mientras un intento arranca o falla se conserva; un trabajo que el reconciliador termina definitivamente genera, como cualquier otro, el webhook job.failed, la campana y las reglas de notificación. La semilla de la demo pública ya no falla cuando Restow puso en cola por sí mismo la primera copia de un objeto, lo que había dejado la demo en su página «se está reiniciando». La página del trabajo nombra las fases de la copia de un sitio de SharePoint («Leyendo el sitio», «Listas») y del descubrimiento de sitios y buzones de grupo, y las notas de retención dicen que el punto de restauración más reciente de cada objeto se conserva siempre. «Quitar de Restow» ya no dice que la restauración de archivos deja de ofrecer las copias de un equipo quitado (las ofrece desde la 0.4.6), y la página de licencia ya no enumera el inicio de sesión con Microsoft entre lo que desbloquea Business, porque todavía no está disponible.

      0.4.7 Todas las ediciones

    • Dependencias: better-auth, bibliotecas de correo, Vite, React y las herramientas de compilación

      better-auth 1.7.14, mailparser 3.14.1, nodemailer 10.3.1, smtp-server 3.21.3, msgreader 1.29.0, Biome 2.6.4, Vitest 5.0.5, Vite 8.3.5, React 19.3.1 y, en las pipelines de publicación, docker/login-action 4.7.0. zod 4 no forma parte de esta versión.

      0.4.7 Todas las ediciones

    • Avisos de dependencias: ip-address, seroval y zod

      ip-address 10.7.5 (desde 10.7.2), una dependencia transitiva a través de socks, resuelve un aviso de gravedad moderada; socks viene con la biblioteca IMAP y solo se usa para conexiones a través de un proxy SOCKS, que Restow no configura. seroval 1.7.5 (desde 1.6.7, a través del enrutador TanStack) resuelve GHSA-7rv5-mrxv-xcr9, GHSA-wp97-x4hv-qvhp y otros avisos de su deserializador, y zod 4.6.7 (una sustitución para la copia que usa better-auth) resuelve allí GHSA-mrhx-c7xc-m3w5. Ese aviso (uso de memoria al validar una matriz grande) nombra también zod 3, que usa la validación de solicitudes propia de Restow y para el que no existe un 3.x corregido; la auditoría de la CI ignora este único aviso hasta que Restow pase a zod 4. El límite de cuerpo de solicitud de la api (1 MB en la mayoría de las rutas) lo acota: una matriz de 1 MB que falla elemento a elemento cuesta unos 150 MB y un segundo de la api para esa solicitud.

      0.4.7 Todas las ediciones

  2. Previsto

    A continuación

    Decidido y previsto antes que lo que figura en Más adelante. Sin números de versión ni fechas: un elemento pasa a Publicado cuando una versión publicada lo incluye, y no antes.

    • Uso diario

    • Inventario y grupos de protección

      Sobre la tabla de equipos de la 0.2.1, los grupos de protección asignan los equipos nuevos a un trabajo por perfil, sistema operativo, nombre de host o etiqueta, y el comando de instalación puede llevar el trabajo. Que el agente informe de las carpetas de datos habituales de Linux para que el editor de trabajos pueda proponer rutas se publicó en la 0.4.0; los grupos de protección, no.

      Todas las ediciones

    • Asistentes completos

      Asistentes paso a paso para añadir una fuente o un agente, activar el archivo y crear un inquilino, con barra de pasos y borradores que puede continuar más tarde. Los borradores nunca guardan secretos.

      Todas las ediciones

    • Pantallas táctiles y búsqueda

      Las acciones de fila de los menús contextuales como hoja inferior en pantallas táctiles y una paleta de comandos que también encuentra buzones, equipos y ejecuciones por ID.

      Todas las ediciones

    • Fijados y paleta de comandos

      Fijar páginas, inquilinos y pestañas de inquilino en la parte superior del menú, un menú contextual en las entradas del menú y las pestañas (fijar, abrir en una pestaña nueva, copiar enlace) y una paleta de comandos que llega a cada página y pestaña de inquilino.

      Todas las ediciones

    • Microsoft, archivo, marca

    • Aplicación de Microsoft 365 por inquilino

      Más allá de la aplicación Graph propia que una fuente puede usar desde la 0.2.2 (un secreto de cliente o un certificado que usted introduce): cada inquilino conecta Microsoft 365 con su propia aplicación, registrada en el directorio de Microsoft de ese inquilino. Restow crea un certificado por inquilino cuya clave privada nunca sale de Restow, guía el registro con los valores de ese inquilino, comprueba cada permiso y avisa antes de que caduque el certificado. La aplicación multiinquilino de la instalación con enlace de consentimiento sigue siendo una opción; las conexiones existentes siguen funcionando sin cambios. Desde la 0.4.7 Restow ya avisa 30 días antes, 7 días antes y una vez caducado el secreto de cliente o el certificado del registro de aplicación central o de la aplicación propia de una fuente; la fecha se introduce (un certificado trae la suya) y nunca se lee de Microsoft Graph.

      Todas las ediciones

    • Modo Reemplazar para archivos de OneDrive

      Un modo de restauración opcional para archivos de OneDrive en el que el archivo actual pasa a ser una versión anterior en lugar de borrarse. Nunca para el correo.

      Todas las ediciones

    • Archivo como explorador de correo con prueba visible por correo

      El archivo tiene su propia área y se lee como un buzón que se puede explorar. Cada correo muestra su prueba: los valores de la cadena, la última verificación de la cadena con su resultado (guardada y anotada en el registro de auditoría) y el estado real de Object Lock del almacenamiento. El journaling deja constancia de un correo antes de que el usuario lo vea. Los repositorios tienen una finalidad, copia o archivo; un repositorio de archivo exige Object Lock o la confirmación expresa de que no lo tiene.

      Todas las ediciones

    • Pruebas del archivo y búsqueda para usuarios

      Una exportación para auditores con los valores de la cadena, un informe de pruebas en PDF firmado, la elección por buzón entre solo copia y copia y archivado, y la búsqueda en el propio archivo para los usuarios finales. En parte ya desde la 0.4.2: el editor de trabajos de correo pregunta por trabajo si copia, archiva o ambos; por buzón no está construido.

      Todas las ediciones

    • Anclas diarias externas para la cadena del archivo

      Las anclas diarias de la cadena hash del archivo, enviadas por correo electrónico o como sello de tiempo RFC 3161. Desde la 0.3.1 el worker sella un ancla cada noche y la comprobación del archivo la compara, pero las anclas se quedan dentro de Restow: todavía nada las envía fuera ni les pone un sello de tiempo externo. Previsto.

      Todas las ediciones

    • Generador de la documentación del procedimiento

      Un documento por inquilino (Verfahrensdokumentation, documentación del procedimiento) generado a partir de la configuración real y de una plantilla, en Markdown y PDF, versionado y fechado. La documentación completa del procedimiento sigue siendo responsabilidad de su organización. Previsto.

      Todas las ediciones

    • Inicio de sesión con Microsoft e inicio de sesión único (SSO)

      Inicio de sesión con una cuenta de Microsoft para quienes ya tienen una cuenta de Restow, e inicio de sesión único. El código de inicio de sesión con Microsoft existe, pero todavía nada vincula una cuenta con una identidad de Microsoft, así que hoy nadie puede iniciar sesión con Microsoft y Restow no crea cuentas por esta vía.

      BusinessService Provider

    • Marca blanca

      Su marca en lugar de Restow: nombre del producto, logotipos para fondo claro y oscuro, color de acento, página de inicio de sesión, contacto de soporte y nombre del remitente, definidos para la instalación y sustituibles por inquilino. Se aplica a la interfaz, el portal de usuarios finales, los correos y los informes en PDF. El verde queda reservado para las comprobaciones de restauración superadas.

      Service Provider

  3. Previsto

    Más adelante

    Decidido, más lejano o sin empezar, y sin asignar a una versión. Sin números de versión ni fechas.

    • Pruebas y operación

    • Panel de preparación para restaurar con tendencia

      La parte de las copias que se ha demostrado restaurable, dividida por estado (superada, pendiente, sin terminar y en reintento, fallida, copia demasiado antigua, nunca comprobada), con la tendencia de doce semanas.

      Todas las ediciones

    • Alertas de repositorio

      Un aviso al 80 por ciento y una alerta crítica al 90 por ciento de la capacidad de un repositorio en destinos locales y NFS, y opcionalmente por encima de un tamaño que usted fije en cualquier destino, S3 incluido. Las instalaciones nuevas y existentes reciben estas reglas ya configuradas. Desde la 0.4.0 los administradores del proveedor ya reciben un aviso de poco espacio en disco para el disco bajo la base de datos y bajo el repositorio local predeterminado (con menos de una décima parte libre, y siempre por debajo de 5 GiB). Desde la 0.4.5 el aviso cubre también el disco del sistema del servidor, y la página Repositorios, la línea «Las copias van a:» de los editores de trabajos y el mosaico de almacenamiento del panel avisan cuando un repositorio de directorio está en él.

      Todas las ediciones

    • Planificación de capacidad

      Ocupación y crecimiento por inquilino y por repositorio, con una previsión clara como «lleno en unos N días». Más allá de lo que el panel muestra desde la 0.4.0: el crecimiento del almacenamiento del inquilino que se está viendo y, donde se conoce el espacio libre, cuándo se llena su repositorio con ese crecimiento. Desde la 0.4.5 los administradores del proveedor ven además en el mosaico de almacenamiento del panel, para un repositorio en el disco del sistema, el espacio libre, su tendencia de la última semana y el día en que ese disco se llenaría.

      Todas las ediciones

    • Informes en PDF

      La preparación para restaurar, un periodo (copias, restauraciones, comprobaciones), el registro de auditoría y los inquilinos en PDF, cada informe anotado en el registro de auditoría con el hash del archivo. El informe de auditoría llega con Business y Service Provider; los informes de inquilinos, con Service Provider.

      Todas las ediciones

    • Prueba de restauración firmada

      Un informe de restauración con suma de comprobación y firma que cualquiera puede verificar sin Restow.

      BusinessService Provider

    • Restauración de prueba completa en un destino aparte

      Una restauración de prueba completa en un destino aparte, más allá de la lectura de muestra semanal. Para los invitados de Proxmox VE ya existen pruebas de arranque de puntos de restauración (0.4.0); para correo, OneDrive y archivos solo existe la lectura de muestra.

      Todas las ediciones

    • Aprobación de cuatro ojos

      Una segunda persona aprueba restauraciones y eliminaciones antes de que se ejecuten.

      BusinessService Provider

    • Búsqueda en el archivo según el rol, con liberación de cuatro ojos

      Un administrador del proveedor solo puede buscar en el archivo de un cliente después de que el inquilino lo haya liberado (liberación de cuatro ojos), sobre la base de la aprobación de cuatro ojos. Previsto.

      Todas las ediciones

    • Política de retención por inquilino

      Hoy todos los inquilinos tienen la misma política fija: 8 años, hasta el 31 de diciembre del año de recepción. Previsto: una política por inquilino, a elegir entre 6, 8 o 10 años o ilimitada, opcionalmente por grupo de buzones, con el plazo contado desde la fecha de captura o desde el final del año natural.

      Todas las ediciones

    • Búsqueda en el archivo por adjuntos y por tamaño

      La búsqueda en el archivo cubre el asunto, las direcciones y el texto del cuerpo. Previsto: búsqueda en adjuntos (PDF, DOCX, XLSX, TXT) y por buzón y tamaño.

      Todas las ediciones

    • Registro de borrado como entrada de la cadena del archivo

      Hoy cada borrado tras el fin del plazo queda en el registro de auditoría. Previsto: un registro de borrado como entrada propia de la cadena hash, con el número de objetos, el periodo y los hashes de los objetos borrados.

      Todas las ediciones

    • Comprobación del archivo en segundo plano, con progreso

      La comprobación del archivo (cadena, anclas y una muestra de contenidos) se ejecuta hoy en una sola solicitud. Previsto: una ejecución en segundo plano que muestre su progreso.

      Todas las ediciones

    • Retención legal por resultado de búsqueda

      Hoy una retención legal cubre un inquilino entero o un buzón, con un motivo obligatorio. Previsto: una retención sobre un resultado de búsqueda.

      Todas las ediciones

    • release.json firmado

      Cada versión publica además un release.json legible por máquinas con los digests de las imágenes, firmado con cosign como las imágenes, para que las herramientas de actualización puedan comprobar una versión antes de instalarla.

      Todas las ediciones

    • Autorreparación, primera etapa

      Restow detecta problemas y toma por su cuenta medidas seguras: reintenta, libera bloqueos obsoletos, vuelve a comprobar, repone los datos que faltan con una copia nueva y le avisa con la solución exacta. Nunca borra datos ni acorta la retención, y cada acción queda visible en el registro de auditoría. Existen tres casos acotados: desde la 0.4.2, un contenedor cuyo repositorio ha desaparecido empieza por sí mismo una cadena de copias nueva (queda en el registro de auditoría y se ve en la página del invitado; un recurso compartido todavía no está cubierto), y la comprobación del almacenamiento vuelve a leer un pack que no pudo leer antes de calificar nada de dañado; desde la 0.4.3, Restow elimina los bloqueos obsoletos de restic antes de una comprobación de restauración de Proxmox VE y antes de la retención, y reintenta una comprobación que un bloqueo deja fuera en lugar de hacerla fallar. El mecanismo general, con detección, medidas seguras y pistas de solución en todo el producto, no está construido.

      Todas las ediciones

    • Nivel de bloque

    • Instantáneas del sistema de archivos en el agente

      Instantáneas LVM, ZFS y btrfs en Linux e instantáneas APFS en macOS, para que los archivos que cambian durante una copia sigan siendo coherentes. Hoy la coherencia depende de hooks opcionales previos y posteriores, que root en el equipo tiene que permitir.

      Todas las ediciones

    • Copia de imagen de Linux a nivel de bloque con restauración completa del equipo

      Un equipo Linux completo se copia como imagen a nivel de bloque y se puede restaurar en hardware vacío (bare metal). Hoy el agente copia solo archivos.

      Todas las ediciones

    • Agente para Windows con VSS e imagen

      El agente para Linux y macOS ya está publicado. Se prevé un servicio para Windows con compatibilidad con instantáneas (VSS), para archivos y para imágenes. Desde la 0.4.0 un recurso compartido SMB copia un servidor de archivos Windows desde el servidor, sin agente y sin VSS.

      Todas las ediciones

    • Nodos remotos como data movers

      Un segundo equipo, por ejemplo en otra sede, hace el trabajo de copia junto a los datos y escribe en el repositorio. Los nodos se añaden con un asistente, firman cada solicitud con su propia clave y reciben el material de claves de una tarea cada vez.

      Todas las ediciones

    • Escalado automático

      Opcional: los workers se añaden y se quitan según umbrales, con un tiempo de espera y un máximo.

      Todas las ediciones

    • Integraciones y formatos

    • Copia de Google Workspace

      Gmail y Google Drive como fuentes en Mail & SaaS, junto a Microsoft 365 e IMAP, conectados por inquilino como Microsoft 365.

      Todas las ediciones

    • OAuth2 para fuentes IMAP

      Todavía no implementado. Inicio de sesión con OAuth2 en lugar de contraseña para buzones IMAP alojados en Microsoft 365 o Google.

      Todas las ediciones

    • mTLS del agente

      Un certificado de cliente por agente en lugar de un secreto por agente.

      Todas las ediciones

    • Importación de PST y OST

      Los archivos PST y OST hoy se reconocen y se rechazan con una explicación. Leerlos está previsto; hasta entonces, exporte antes a MSG, EML o MBOX.

      Todas las ediciones

    • Exportación a PST

      La exportación como EML en un ZIP y como MBOX ya está publicada. La exportación a PST está prevista. La exportación EML contiene los mismos mensajes en su forma original.

      Todas las ediciones

    • Exportación a MSG

      Previsto en cuanto exista un escritor con una licencia clara y permisiva. La exportación EML contiene los mismos mensajes en su forma original.

      Todas las ediciones

    • Repositorio SFTP

      SFTP como repositorio.

      Todas las ediciones

  4. Decisiones deliberadas

    Fuera de alcance por ahora

    • Teams

      Los chats de Teams no se copian y quedan fuera de alcance por ahora. Los sitios de SharePoint que hay detrás de Teams los cubre la copia de SharePoint Online desde la 0.4.0, y desde la 0.4.5 se copian como buzón de grupo (opcional) el calendario y las conversaciones del grupo de Microsoft 365 que hay detrás de un equipo.

      Todas las ediciones

    • Tampoco previsto

      Carpetas públicas de Exchange, gestión de casos de eDiscovery y una aplicación móvil. Restow no es una herramienta RMM ni PSA; su API permite integrar la suya.

      Todas las ediciones

Versiones anteriores 0.1.0 a 0.3.6

Todo lo que se publicó antes de la línea de versiones actual, lo más reciente primero.

  1. Publicado

    0.3.1 a 0.3.6

    Vista previa de Proxmox VE, miembros, notificaciones

    La 0.3.0 se etiquetó pero nunca se publicó: sus comprobaciones de la versión encontraron los dos primeros errores, así que la 0.3.1 es la primera versión de la línea 0.3. Actualizar desde la 0.2.x ejecuta seis migraciones de la base de datos; lea las notas de actualización de la 0.3.1.

    • Proxmox VE (vista previa)

      Copia de VM y contenedores en Proxmox VE 8.4 y posteriores mediante la Backup Provider API: discos de VM por NBD con dirty bitmaps, de modo que solo se suben los bloques modificados de 4 MiB; contenedores con restic; restauración como una VMID nueva en el pool restow-restore. Los invitados cuentan en la preparación para restaurar, las advertencias y las alertas de copias atrasadas. El lado del nodo es un shim de plugin de almacenamiento (una obra aparte bajo AGPL-3.0-or-later) y el asistente restow-pve (Apache-2.0). Una vista previa: probada con qemu-nbd, qemu-img y restic; todavía no se recomienda como única copia.

      0.3.1 Todas las ediciones

    • Varios administradores en todas las ediciones

      Miembros con roles, Community incluida; limitar un miembro a inquilinos elegidos sigue siendo parte de Service Provider. Los propietarios pueden restablecer el acceso de un miembro. Antes de que un cambio de la URL pública o del modo de operación inutilice las llaves de acceso, los ajustes nombran las cuentas afectadas y rechazan un bloqueo propio. Si se pierde el acceso, la página de inicio de sesión ofrece un enlace de restablecimiento por correo cuando el correo de notificaciones está configurado y, siempre, el camino a través de un propietario o restow admin recover. Su cuenta: cambiar la contraseña, ver y cerrar sus sesiones.

      0.3.1 Todas las ediciones

    • Recursos de red NFS desde la interfaz web

      En Instalación, Recursos de red, mediante el contenedor montador opcional (docker compose --profile mounts up -d mounter, o la opción del instalador --with-mounter): el montador comprueba un recurso antes de escribir docker-compose.override.yml, reinicia api y worker y revierte si falla, y el actualizador lo mueve con cada actualización firmada. Probado solo con simulaciones, no contra un servidor NFS real.

      0.3.1 Todas las ediciones

    • Alertas en Discord, Slack y Microsoft Teams

      Un webhook tiene un formato, elegido a partir de su URL: Discord, Slack o Microsoft Teams, junto al sobre firmado de Restow. Las respuestas 4xx de los servicios de chat terminan un envío de inmediato en lugar de reintentarlo. Probado solo con simulaciones.

      0.3.1 Todas las ediciones

    • Copias atrasadas y advertencias

      Un evento nuevo, backup.overdue, para buzones, OneDrives, cuentas IMAP, equipos e invitados de Proxmox, que tiene en cuenta las programaciones de los trabajos; una regla de alerta puede fijar su propio plazo (de 24 a 720 horas). Las advertencias indican por qué no se copiaron elementos concretos (carpeta, asunto, fecha, causa, qué hacer) y se pueden confirmar con una nota. La campana lleva a la causa y una página Notificaciones guarda el historial.

      0.3.1 Todas las ediciones

    • Correo de notificaciones mediante Microsoft 365 o Google Workspace

      El correo de notificaciones puede enviarse mediante Microsoft 365 (una aplicación propia con Mail.Send o la aplicación de copia) o mediante Google Workspace (una cuenta de servicio con gmail.send), con guías y mensajes de error claros. Probado solo con simulaciones.

      0.3.1 Todas las ediciones

    • Exportación del registro de auditoría

      Exportación del registro de auditoría como CSV y como JSON con hashes. Los registros de envíos se exportan como CSV.

      0.3.1 BusinessService Provider

    • Archivo por trabajo de correo, lectura y búsqueda

      Archivo por trabajo de correo; los informes de journaling se asignan a los buzones que nombran. La verificación de la cadena comprueba cada eslabón, los anclajes diarios (ahora escritos cada noche) y, opcionalmente, una muestra del contenido de los mensajes. Los mensajes archivados se pueden leer y descargar como .eml; la búsqueda pagina sus resultados y filtra por remitente, fecha y buzón; un aviso explica cómo protege el almacenamiento el correo archivado.

      0.3.1 Todas las ediciones

    • Retenciones legales con liberación auditada

      Una retención legal se libera con un motivo obligatorio y auditado; las retenciones pueden afectar a un solo buzón.

      0.3.1 BusinessService Provider

    • Decir con claridad qué está protegido

      Los equipos que no están en ningún trabajo de copia ya no cuentan como protegidos en ningún sitio (resumen, vista del proveedor, preparación para restaurar, informes). El directorio, los trabajos de copia y los equipos indican qué trabajo copia un objeto y nombran los objetos en trabajos en pausa o sin programar. Resumen, Estadísticas muestra solo el inquilino activo; las estadísticas de todos los inquilinos tienen una página propia para Service Provider.

      0.3.1 Todas las ediciones

    • Conectar un nodo de Proxmox VE con un comando

      Un comando por nodo, con el token de inscripción incluido. El instalador del nodo configura por sí mismo el usuario restow@pve, los roles y el pool de restauración, crea su propio token de API, comprueba sus privilegios antes de instalar nada y elige por sí mismo el almacenamiento thin para el fleecing. En su lugar puede usarse un token de API de Proxmox VE ya existente, que se entrega una vez al nodo. El plugin de almacenamiento informa de la API de almacenamiento del Proxmox VE en ejecución (de 8.4 a 9.1). Probado con simulaciones de pveum y pvesm; Proxmox VE es una vista previa y todavía no se recomienda como única copia.

      0.3.2 Todas las ediciones

    • Las copias de buzones de Microsoft 365 ya no se detienen en el paso de carpetas

      Una copia de buzón podía fallar en el paso de carpetas con «Microsoft rechazó la solicitud» (HTTP 400, un id que debe ser único en un lote) cuando Microsoft listaba una carpeta dos veces al leer la lista de carpetas. Cada lote usa ahora sus propios ids y cada carpeta se lee una vez.

      0.3.2 Todas las ediciones

    • Repositorios: una dirección NFS en el campo de ruta

      El campo de ruta de un repositorio de directorio acepta una dirección NFS (192.168.1.10:/export/backup, nas.local:/volume1/restow o nfs://). El propietario del proveedor puede probarla y montarla allí mismo y Restow rellena la ruta; si hay trabajos en ejecución, el montaje espera a que no haya ninguno y puede cancelarse. Hay una entrada de menú Repositorios bajo su organización y la interfaz dice repositorio en todas partes en lugar de ubicación de almacenamiento. Probado con las simulaciones del montador, todavía no contra un servidor NFS real; mientras un montaje espera, los trabajos nuevos siguen arrancando.

      0.3.3 Todas las ediciones

    • Nodos de Proxmox VE en el inventario

      En Servidores y equipos, Inventario, cada nodo de Proxmox VE es una fila desplegable con su estado en línea y recuentos (protegidos, fallidos, sin trabajo, aún sin copia); desplegada, cada VM y contenedor muestra su estado, trabajo de copia y estado de la copia, y por qué falló su última copia, con enlace a su página. Para administradores, una vez conectado un clúster.

      0.3.3 Todas las ediciones

    • Proxmox VE: contenedores sin privilegios

      Las copias de contenedores sin privilegios en ext4 ya no fallan por la carpeta lost+found. Una copia de contenedor que restic no pudo leer por completo (código de salida 3) conserva su punto de restauración y nombra los elementos ilegibles. VMs y contenedores muestran cuándo una copia espera a su nodo o está en curso. Tras la actualización del servidor, ejecute restow-pve update en cada nodo.

      0.3.4 Todas las ediciones

    • Rol de operador de restauración

      Un rol nuevo por inquilino: el operador de restauración ve y restaura todas las copias del inquilino sin administrarlo (trabajos, almacenamiento, usuarios). Al crear un usuario o una invitación ahora siempre hay que elegir un rol; ya no hay ninguno preseleccionado.

      0.3.5 Todas las ediciones

    • Proxmox VE: qué contiene una copia y qué añadió

      VMs y contenedores y el inventario tienen una columna «Copia» con lo que contiene el punto de restauración más reciente y lo que añadió su ejecución («9,4 GB en la copia, +2,5 MB nuevos»), con la primera copia al pasar el cursor. La antigua columna «Tamaño» se llama ahora «Disco». En la página de un invitado, los puntos de restauración muestran su tipo (primera copia, incremental, lectura completa), lo que contienen y lo que añadieron. Proxmox VE sigue siendo una vista previa.

      0.3.5 Todas las ediciones

    • Proxmox VE: las copias de contenedor incompletas se nombran

      Una copia de contenedor que restic no pudo leer por completo aparece como «Correcta con lagunas» («Última copia incompleta» en la página del invitado) con el número de elementos ilegibles, y cuenta como «Incompleta» en el inventario.

      0.3.5 Todas las ediciones

    • Carpetas de datos habituales en los trabajos de equipos y en la restauración de archivos

      En los trabajos de equipos Linux y en la restauración de archivos, un aviso nombra las carpetas de datos habituales (/opt, /srv, /var/lib, /home y otras) que las rutas del trabajo dejan fuera, con un botón para añadirlas.

      0.3.5 Todas las ediciones

    • Proxmox VE: «Copiar ahora» y la restauración nombran la próxima consulta del nodo

      «Copiar ahora» y la restauración indican que el nodo inicia la tarea en su próxima consulta periódica (check-in); un segundo clic indica que ya hay una copia en espera. Las páginas se actualizan cada 5 segundos mientras un invitado espera a su nodo o se está copiando.

      0.3.5 Todas las ediciones

    • Las primeras copias largas continúan tras una interrupción

      Una copia que se interrumpe por su límite de tiempo (23 horas) o por un reinicio del worker, después de guardar un punto de control, continúa sin gastar uno de sus reintentos, hasta 21 días después de su primer inicio. La vista de la ejecución muestra esa interrupción como información, no como un error. Antes, la primera copia de un buzón grande que necesitaba varios días terminaba como fallida tras cinco interrupciones y la siguiente ejecución empezaba de nuevo.

      0.3.5 Todas las ediciones

    • Microsoft 365: una solicitud de Graph sin respuesta se reintenta

      Una solicitud de Graph que no recibe respuesta en 5 minutos se reintenta, en lugar de quedarse colgada hasta el límite de tiempo del trabajo. Las solicitudes y las esperas por limitación terminan con el trabajo.

      0.3.5 Todas las ediciones

    • Índice de copias guardado como versiones de elementos

      Una copia ya no copia cada elemento de un buzón o de OneDrive en la base de datos. Restow guarda una fila por versión de un elemento, de modo que un elemento sin cambios no cuesta nada en las copias posteriores. En una instalación con 14 millones de filas de índice (25 GB), el índice necesita después unos 0,5 a 1,5 GB. El worker convierte las copias existentes una a una tras la actualización; esa conversión se probó con historiales generados, todavía no con una base de datos de producción de 25 GB.

      0.3.5 Todas las ediciones

    • Inicio de sesión con un rol de base de datos propio

      El inicio de sesión (sesiones, contraseñas, llaves de acceso, secretos de doble factor) funciona con un tercer rol de base de datos. El rol de la aplicación se limita a los datos de los inquilinos bajo seguridad a nivel de fila y solo puede añadir trabajos a la cola. Un refuerzo; sin explotación conocida.

      0.3.5 Todas las ediciones

    • Proxmox VE: proteger los invitados desde el inventario

      En Servidores y equipos, Inventario, cada VM y contenedor tiene su trabajo de copia como una elección (un trabajo existente, «Sin trabajo de copia» o un trabajo nuevo) y «Copiar ahora». Los invitados pueden marcarse uno a uno, todos los de un nodo o todos los que no tienen trabajo con un clic, y luego añadirse a un trabajo o copiarse juntos; con un trabajo nuevo se abre el diálogo del trabajo y la selección pasa al trabajo nuevo. La columna de protección del inventario se llama ahora «Protección». Proxmox VE sigue siendo una vista previa.

      0.3.6 Todas las ediciones

    • Aviso «Reinicio necesario» con «Reiniciar ahora»

      Cuando un servicio necesita reiniciarse, Instalación, Actualizaciones muestra un aviso «Reinicio necesario» con el motivo, un botón «Reiniciar ahora» y el comando para copiar, en el directorio de la instalación; los administradores del proveedor ven un aviso sobre cada página. «Reiniciar ahora» pasa por el actualizador, reinicia solo la API, el worker o el scheduler, nunca se ejecuta mientras una actualización está anunciada o en curso y pide antes una confirmación. El botón lo tiene el propietario del equipo del proveedor y necesita el actualizador de la 0.3.6; uno anterior muestra el comando. Nada se reinicia sin un clic. Todavía nada registra una solicitud de reinicio; el aviso y el botón están listos para las actualizaciones que los necesiten.

      0.3.6 Todas las ediciones

    • El instalador actualiza un docker-compose.yml antiguo

      Si vuelve a ejecutar install.sh en una instalación existente, actualiza docker-compose.yml a la versión indicada en .env, comprobado con el SHA256SUMS firmado de la versión, y conserva el archivo anterior como docker-compose.yml.bak-<timestamp>. .env no se modifica. Los cambios propios van en docker-compose.override.yml.

      0.3.6 Todas las ediciones

    • Índice de copias: el espacio de la tabla antigua se devuelve sin reinicio

      Cuando ha terminado la conversión del índice de copias de la 0.3.5, la API devuelve por sí sola el espacio en disco de la tabla antigua, en unos 15 minutos. Ya no hace falta el reinicio de la API que pedía la 0.3.5.

      0.3.6 Todas las ediciones

  2. Publicado

    0.2.2

    Conexión de Microsoft 365

    • Una aplicación Graph propia por fuente

      Además de la invitación de consentimiento de la aplicación de copia compartida, una fuente puede conectarse mediante una aplicación que el cliente creó a mano en su propio inquilino: ID de inquilino, ID de aplicación y un secreto de cliente o un certificado. La credencial se guarda sellada en el almacén de secretos de la organización y nunca se vuelve a mostrar. Probado solo con pruebas unitarias y las suites de CI, no contra un inquilino real de Microsoft 365.

      Todas las ediciones

    • El inquilino de la aplicación de copia se conecta sin enlace de consentimiento

      Para el inquilino en el que vive la aplicación de copia, la página de la fuente ofrece una conexión directa (solo propietarios del proveedor): un token de aplicación válido para ese inquilino sirve de prueba, de modo que se omite el rodeo del consentimiento, que Entra rechaza para una aplicación no instalada allí. Necesita el ID de directorio (inquilino) de la aplicación en Ajustes, Microsoft 365.

      Todas las ediciones

    • Preajuste de Hetzner Object Storage con elección de ubicación

      El preajuste tiene un selector de ubicación (Falkenstein, Núremberg, Helsinki) que fija a la vez el endpoint y la región. A los buckets con un punto en el nombre se accede por ruta, y la detección de Object Lock acepta las respuestas de servicios compatibles con S3 como Hetzner. No probado contra un bucket real de Hetzner.

      Todas las ediciones

    • Canal alfa para compilaciones de prueba

      En Instalación, Actualizaciones, la opción del canal alfa elige con un clic una fuente de compilaciones de prueba sin firmar. La pestaña avisa mientras está elegida y mientras el actualizador no verifica firmas. Solo para instalaciones de prueba, nunca para una con datos de producción.

      Todas las ediciones

  3. Publicado

    0.2.1

    Lo que falta de la 0.2.0

    • Un equipo se copia cuando está en un trabajo

      Cada equipo sin trabajo de copia aparece marcado como «Sin copia», se cuenta en un aviso y ofrece «Crear un trabajo» o «Añadir a un trabajo». Un equipo recién inscrito espera a un trabajo en lugar de copiarse por su cuenta. Los servidores copian por defecto sus datos de aplicación (/opt, /usr/local, /var/lib).

      Todas las ediciones

    • Menús contextuales en las filas

      El clic derecho o el botón ⋯ en una fila de tabla abre las acciones de esa fila: un trabajo nuevo a partir de la selección, editar un trabajo, ejecutarlo ahora, abrir su historial, restaurar archivos de un equipo.

      Todas las ediciones

    • Tabla de equipos con "asignado a"

      Una tabla de todos los equipos con nombre de host, la persona a la que está asignado cada equipo, última copia y preparación para restaurar. Un equipo se puede asignar a una persona del directorio.

      Todas las ediciones

    • Restauración de archivos desde la tabla de equipos, una línea de tiempo

      La restauración de archivos empieza desde la tabla de equipos. Los puntos de restauración de equipos y buzones están en la misma línea de tiempo, con separadores de día, horas y un salto a una fecha.

      Todas las ediciones

    • Demo pública con trabajos en curso simulados

      La demo pública muestra copias en curso con progreso, gráficos de caudal y el panel de detalle de la ejecución, simuladas con datos sintéticos.

      Todas las ediciones

    • Almacenamiento predeterminado en la interfaz web

      El propietario de la instalación define el almacenamiento predeterminado (una ruta local o un bucket compatible con S3) en Instalación > Almacenamiento predeterminado, comprobado con una prueba antes de guardarlo. Los inquilinos que lo usan siguen separados por su propio prefijo y su propia clave.

      Todas las ediciones

    • Actualizador con un comando, que se actualiza a sí mismo

      El actualizador opcional arranca con un comando y, tras una actualización firmada, se pasa él mismo a la versión verificada. Una instalación Community cambia a la compilación completa desde Instalación > Edición, con volcado de la base de datos, comprobación de estado y reversión.

      Todas las ediciones

  4. Publicado

    0.2.0

    Orden y primeros pasos

    • Instalación, organización propia y ajustes del inquilino

      Cada ajuste tiene un lugar y un ámbito: la instalación (servidor, correo de notificaciones, actualizaciones, licencia) y una página de ajustes por inquilino (conexiones, protección, trabajos, retención, repositorios, archivo, agentes, notificaciones, integraciones, miembros, módulos), en lugar de la barra de pestañas Setup de la 0.1.0. Para los proveedores de servicios, la instalación crea su propia organización como inquilino interno. Desactivar un módulo detiene su trabajo y nunca borra datos.

      Todas las ediciones

    • Selector de inquilinos con búsqueda en el menú

      Cambie de inquilino en la parte superior del menú y encuentre uno por nombre o número de cliente.

      Service Provider

    • Esquema de color Restow o Neutral junto a claro y oscuro

      Elija entre los colores de Restow y una paleta neutra, además del modo claro y oscuro.

      Todas las ediciones

    • Tablas a ancho completo con columnas fijadas

      Las tablas usan todo el ancho de la página y las columnas fijadas siguen a la vista mientras se desplaza hacia los lados.

      Todas las ediciones

    • Instalador guiado con modo de proxy inverso, cifrado hasta Restow por defecto

      Un instalador que le guía durante la instalación, con un modo para funcionar detrás de un proxy inverso. La conexión con Restow está cifrada por defecto.

      Todas las ediciones

    • Asistente de instalación que empieza por la elección del idioma

      El asistente de instalación empieza ahora por la elección del idioma.

      Todas las ediciones

    • Primeros pasos como lista de comprobación en el menú

      Una entrada con un cohete, abajo a la izquierda del menú, abre la lista de configuración: un repositorio que funciona, una fuente conectada, objetos protegidos, programaciones activas, la primera copia y la primera comprobación de restauración superada, además del correo de notificaciones, que puede marcarse como no necesario. La entrada desaparece cuando la configuración está completa.

      Todas las ediciones

    • Preparación para restaurar vinculada a tablas filtradas

      Cada estado de la preparación para restaurar (superada, pendiente, sin terminar y en reintento, fallida, copia demasiado antigua, nunca comprobada) filtra la tabla de debajo.

      Todas las ediciones

    • Resumen de todos los inquilinos o de uno solo

      La página Overview muestra todos los inquilinos a la vez o uno solo, como usted elija.

      Service Provider

    • Trabajos como plantillas

      Un trabajo define qué se copia, cuándo, en qué repositorio, durante cuánto tiempo y cada cuánto lo demuestra una comprobación de restauración, para muchos buzones, OneDrives, cuentas IMAP o equipos a la vez, con excepciones por objeto o equipo. Hay trabajos para correo y para servidores y equipos; en estos últimos usted elige las carpetas que se copian y excluye tipos de archivo. Al actualizar, las programaciones y la configuración actuales de los equipos se convierten en trabajos; no se borra nada.

      Todas las ediciones

    • Actualización en vivo sin recargar, panel de detalle de la ejecución con gráficos de caudal

      Los trabajos en curso y las tablas se actualizan solos, sin recargar la página. Una ejecución abre un panel de detalle con gráficos de su caudal de datos.

      Todas las ediciones

    • Límite de ancho de banda con franja horaria

      Limite el ancho de banda que puede usar una copia, dentro de una franja horaria que usted defina.

      Todas las ediciones

    • Historial con las ejecuciones de los agentes

      Cada ejecución, también las de los agentes en servidores y equipos, con filtros por tipo (copia, restauración, comprobación de restauración, exportación, importación, mantenimiento) y por trabajo. Los reintentos de una comprobación de restauración aparecen como una sola línea.

      Todas las ediciones

  5. 2 de octubre de 2026

    Lanzamiento público

    • Código fuente en GitHub

      El núcleo (Apache License 2.0) y la versión 0.1.0 están publicados en GitHub. Cada versión posterior también se publica allí.

      Todas las ediciones

    • Licencias en preventa

      Business y Service Provider a precio de preventa hasta el lanzamiento general; cada función de abajo se entrega cuando se publica.

      BusinessService Provider

  6. 0.1.0 beta, primera versión pública

    Publicado

    • Copia de Microsoft 365

      Correo, calendario y contactos de Exchange Online, y OneDrive, incremental mediante consultas delta de Graph.

      Todas las ediciones

    • Copia IMAP

      Cualquier buzón IMAP, con contraseña: un inicio de sesión para toda la fuente, una contraseña por buzón o un usuario maestro. El inicio de sesión OAuth2 para IMAP todavía no está implementado.

      Todas las ediciones

    • Restauración no destructiva

      Un elemento, una carpeta, una versión de archivo o un buzón u OneDrive completo, en la cuenta original o en otra. El explorador de restauración muestra abajo una línea de tiempo estrecha de puntos de restauración.

      Todas las ediciones

    • Prueba semanal de restauración

      Una muestra de cada copia se relee y se compara byte a byte, mostrada como preparación para restaurar.

      Todas las ediciones

    • Archivo

      Un archivo de solo anexado con cadena de hashes SHA-256, verificación de la cadena, búsqueda y exportación (EML en un ZIP, MBOX), en todas las ediciones. La búsqueda abarca asunto, direcciones y el texto de los mensajes importados, no los adjuntos. Se llena con la importación de correo con archivado; la recepción de journaling forma parte de la capa GoBD de abajo.

      Todas las ediciones

    • Capa GoBD para el archivo

      Recepción de informes de journaling de Exchange Online por SMTP (requiere un certificado TLS propio), políticas de retención con eliminación obligatoria y retención legal por inquilino o por buzón. Diseñado para un uso conforme a GoBD. En repositorios locales y NFS la aplicación impone la inmutabilidad; en S3 con Object Lock están bloqueados los registros de los elementos del archivo, y desde la 0.4.0 un administrador puede bloquear también los paquetes con el contenido de los mensajes (véase Copias inmutables).

      BusinessService Provider

    • Varios inquilinos

      Muchos inquilinos de clientes en una instalación, con una clave de API entre inquilinos. Gestionar varios inquilinos forma parte de Service Provider.

      Service Provider

    • Administradores delegados e informe del proveedor

      Cada inquilino tiene sus propios administradores, que ven y gestionan solo ese inquilino. La vista del proveedor de la página Overview lista cada inquilino con su estado y las alertas que se derivan de él.

      Service Provider

    • API REST y registro de operaciones

      API REST documentada con OpenAPI, claves y permisos por inquilino; historial de trabajos y errores en todas las ediciones.

      Todas las ediciones

    • Equipo con roles

      Varios administradores, cada uno propietario, administrador, técnico o solo lectura, con todos los inquilinos o algunos. Los propietarios invitan y cambian miembros; cada cambio queda auditado. Business y Service Provider lo tenían desde la 0.1.0; todas las ediciones lo tienen desde la 0.3.1 (véase 0.3.1 a 0.3.6).

      Todas las ediciones

    • Visor del registro de auditoría

      Búsqueda, filtros, detalles de cada entrada y verificación de la cadena de hashes del registro de auditoría. El registro de cada lectura y restauración funciona en todas las ediciones; la exportación llegó con la 0.3.1.

      BusinessService Provider

    • Informes programados

      Un resumen diario, semanal o mensual por correo: tasa de éxito, elementos fallidos, parte con restauración demostrada, causas de fallo, almacenamiento y restauraciones.

      BusinessService Provider

    • Alertas

      Reglas que envían un correo, un aviso en la campana o un webhook firmado cuando falla una copia, no se supera una comprobación de restauración o el almacenamiento está dañado, con registro de envíos.

      Todas las ediciones

    • Copia de servidores y equipos

      Un agente en Go para Linux y macOS sobre restic 0.19.1, instalado con un comando y un token de un solo uso en una carpeta que solo root puede modificar. Versiones del agente firmadas, solo HTTPS saliente, solo anexado, un repositorio por equipo, restauración en una carpeta nueva y pruebas de restauración que alimentan la preparación para restaurar. Los hooks solo se ejecutan donde root en el equipo los permite. Windows está previsto.

      Todas las ediciones

    • Importación y exportación de correo

      Importe EML, MSG, MBOX y exportaciones de MailStore como un buzón histórico que puede explorar, restaurar en Microsoft 365 o IMAP, descargar y, si quiere, archivar. Exporte buzones de copias, importaciones y del archivo como EML en un ZIP o como MBOX.

      Todas las ediciones

    • Actualizaciones

      Una comprobación de actualizaciones desactivada hasta que la active, con su propia fuente de versiones si quiere, y un actualizador opcional que anuncia el mantenimiento, copia primero la base de datos y revierte si la nueva versión no arranca bien. La reversión solo vale mientras no se hayan ejecutado las migraciones de la base de datos; después de una migración el actualizador se detiene, conserva el volcado e indica cómo restaurarlo.

      Todas las ediciones

    • Explicaciones de fallos

      Cada trabajo, elemento, sincronización y verificación fallidos explica qué ocurrió, por qué (88 códigos de causa estables) y qué hacer, con enlaces y detalles técnicos para soporte.

      Todas las ediciones

    • Versiones firmadas y verificadas

      Cada versión sale en dos compilaciones con cuatro imágenes: la compilación completa (restow, restow-web) y la compilación Community (restow-community, restow-web-community). Cada imagen se compila para amd64 y arm64, se firma con cosign, incluye una SBOM y supera una prueba de humo de la versión (instalación nueva, restauraciones con comparación de hashes, copia de equipos, importación de correo, copia de recursos compartidos contra Samba) antes de publicarse. Cada versión del agente la firma el mantenedor con una clave Ed25519; el instalador y el agente rechazan una versión sin firma válida. La comprobación automática de Microsoft 365 de la pipeline de la versión contra un inquilino real (comprobación 4, un inquilino de desarrollo) todavía no está activa y se omitió en todas las versiones hasta ahora; una API de Graph simulada la sustituye. En las pruebas de la versión, el instalador del agente solo se ejecuta en un contenedor Linux.

      Todas las ediciones

    • Token de instalación, aviso al operador, dos compilaciones

      El asistente de instalación pide primero un token de instalación de un solo uso que solo puede leer quien tiene acceso al registro del servidor y después la aceptación de un aviso al operador. El núcleo (Apache License 2.0) y los módulos Business y Service Provider (ee/, bajo las condiciones de licencia de Restow) viven en un repositorio. Las imágenes completas incluyen ambos, con los módulos bloqueados hasta que se instala una clave de licencia; las imágenes Community incluyen solo el núcleo.

      Todas las ediciones

Para lo que ya está disponible, véanse las funciones; para precios y lo que desbloquea cada edición, los precios; para el archivo, GoBD y archivado de correo.

¿Preguntas sobre la hoja de ruta? Escríbanos →