Alternativas a Nextcloud para autoalojar
Compare alternativas a Nextcloud según lo que necesite: solo sincronización, un servidor más ligero, almacenamiento de objetos o SFTP. Incluye costes de migración.
¿Qué alternativas a Nextcloud merece la pena alojar uno mismo?
Las alternativas a Nextcloud que merece la pena ejecutar son las que eliminan las funciones que nunca utilizó. Nextcloud es un servidor de archivos, un calendario, una agenda de contactos, una suite ofimática y una plataforma de aplicaciones dentro de una sola aplicación PHP, y paga el coste de todo ello en cada carga de página. Por tanto, elija un reemplazo identificando la única tarea que todavía necesita y compruebe después cuánto cuesta migrar los archivos que ya tiene.
Esta guía organiza las opciones según esa tarea: sólo sincronización, sincronización con un servidor más rápido, almacenamiento de objetos con un cliente encima o acceso remoto sencillo a archivos. Cada sección indica qué necesita el servidor en un VPS pequeño (servidor privado virtual) y qué ocurre con el árbol de carpetas existente. Si llega desde Dropbox o Google Drive y no desde un servidor Nextcloud que ya administra, el resumen general de alternativas autoalojadas a Dropbox parte de ese caso.
Por qué Nextcloud se vuelve lento en un VPS pequeño
La lentitud tiene causas concretas. Conocerlas permite determinar si cambiar de servidor realmente ayudará.
Cada carga de página ocupa un proceso de PHP. Los requisitos del sistema de Nextcloud indican memoria por proceso: 128 MB como mínimo y 512 MB como valor recomendado, a fecha de agosto de 2026. No se trata de la memoria total del servidor. Un grupo de diez procesos supone un consumo de memoria real en un plan de 2 GB. Por eso, los administradores reducen pm.max_children en la configuración del grupo de PHP-FPM. Después, las peticiones quedan en cola detrás de los procesos disponibles. La interfaz parece lenta aunque el disco esté inactivo.
La base de datos crece según la cantidad de archivos, no según su tamaño. La tabla de caché de archivos, oc_filecache con el prefijo de tabla predeterminado, contiene una fila por cada archivo y carpeta de cada almacenamiento que conoce el servidor. Una biblioteca de fotos con 300,000 archivos pequeños produce una tabla grande. 300 GB de archivos de vídeo distribuidos en 400 archivos producen una tabla pequeña. Las funciones de compartición, búsqueda y análisis de archivos leen esa tabla.
sudo mysql nextcloud -e 'SELECT COUNT(*) FROM oc_filecache;'Una cantidad de registros de varios millones explica mejor una lista de archivos lenta que cualquier prueba de rendimiento del disco. Si su instancia utiliza otro prefijo de tabla o PostgreSQL, adapte la consulta.
Las tareas en segundo plano compiten con la interfaz web. El manual de Nextcloud recomienda una entrada de cron del sistema que ejecute cron.php cada cinco minutos. La generación de vistas previas y el análisis de archivos se ejecutan allí, en la misma CPU que atiende al navegador.
Las actualizaciones principales implican una migración de la base de datos. La instancia entra en modo de mantenimiento y responde a todas las peticiones con Nextcloud is in maintenance mode, please try again later hasta que termina la migración. En un VPS pequeño con un oc_filecache grande, ese intervalo es lo bastante largo como para notarlo.
Decida primero qué necesita conservar
- Sincronizar una carpeta entre máquinas de su propiedad, sin interfaz web: Syncthing.
- Sincronizar archivos para varias personas, con interfaz web, clientes móviles y enlaces para compartir: Seafile.
- Almacenar muchos datos a bajo coste y acceder a ellos desde scripts y herramientas de copia de seguridad: almacenamiento de objetos más un cliente.
- Leer y escribir archivos de forma remota sin instalar software de servidor adicional: SFTP o WebDAV.
- Editar documentos conjuntamente en un navegador o compartir un calendario entre varias personas: siga usando Nextcloud o acepte ejecutar dos servicios.
Syncthing: sincronización de archivos sin una aplicación de servidor
Syncthing conserva los archivos como archivos normales. No hay una base de datos de contenido ni una interfaz web que sirva los documentos. Cada dispositivo que se une a una carpeta mantiene una copia completa, y Syncthing mantiene las copias iguales.
sudo mkdir -p /etc/apt/keyrings
sudo curl -L -o /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable-v2" | sudo tee /etc/apt/sources.list.d/syncthing.list
sudo apt-get update
sudo apt-get install syncthingsudo systemctl enable --now syncthing@$USER
sudo ss -lntp | grep 8384Una línea que muestra 127.0.0.1:8384 indica que la interfaz web está activa y vinculada sólo a localhost, que es lo adecuado en un VPS público. Acceda mediante un túnel SSH: ssh -L 8384:127.0.0.1:8384 you@your-vps y abra http://127.0.0.1:8384 en su portátil. Si no hay ningún proceso escuchando en 8384, el servicio no se inició correctamente, y journalctl -u syncthing@$USER -n 50 indica el motivo.
Recursos. Syncthing no publica una cifra mínima de memoria. El consumo depende del número de archivos que indexa, no de su tamaño total, porque mantiene una entrada de índice por archivo y por carpeta compartida. El primer análisis de una carpeta grande requiere CPU: Syncthing calcula el hash de cada archivo antes de poder comparar nada. Espere que ese primer análisis tarde un tiempo en una vCPU compartida, y que la memoria aumente según el número de archivos, no según los gigabytes.
El disco es el coste real. No hay almacenamiento en el servidor, porque Syncthing no es un servidor. Una carpeta de 200 GB compartida entre un VPS y un portátil necesita 200 GB en ambos dispositivos. Es lo contrario de Nextcloud, donde el servidor conserva todo y los clientes eligen qué sincronizar. Use carpetas seleccionadas y una carpeta receive only en el VPS si el VPS debe ser un destino de copias de seguridad y no un par.
La migración es el motivo para elegirlo. Apunte Syncthing al árbol de directorios que ya tiene. No hay importación, carga ni conversión. Añada la carpeta en el VPS, añádala en el portátil con el mismo ID de carpeta y deje que ambos lados converjan. Si el mismo archivo existe de forma diferente en ambos lados al establecer el primer contacto, Syncthing conserva los dos y cambia el nombre de uno a filename.sync-conflict-20260809-142530-ABCD123.txt. Ver esos archivos es normal durante la primera sincronización, no indica un fallo.
Lo que se pierde. No hay cuentas, enlaces compartidos para enviar a otras personas ni forma de explorar los archivos desde el navegador de un teléfono. La aplicación original para Android ya no recibe mantenimiento del propio proyecto y una bifurcación de la comunidad continúa su desarrollo, algo importante si el acceso móvil es el objetivo. La comparación directa entre Syncthing y Nextcloud repasa las diferencias de funciones una por una.
Seafile: sincronización rápida con un servidor más ligero
Seafile divide el trabajo en dos partes. Una aplicación web de Python llamada Seahub muestra la interfaz, y un proceso C independiente gestiona el tráfico de sincronización. Las transferencias de archivos no pasan por la aplicación web. Por eso una carga grande mantiene la velocidad mientras otra persona navega por la interfaz. La versión 13.0 se publicó el 5 January 2026.
sudo mkdir -p /opt/seafile
cd /opt/seafile
sudo wget -O .env https://manual.seafile.com/13.0/repo/docker/ce/env
sudo wget https://manual.seafile.com/13.0/repo/docker/ce/seafile-server.yml
sudo wget https://manual.seafile.com/13.0/repo/docker/seadoc.yml
sudo wget https://manual.seafile.com/13.0/repo/docker/caddy.ymlEdite .env antes de iniciar cualquier operación. Define SEAFILE_SERVER_HOSTNAME, INIT_SEAFILE_ADMIN_EMAIL, INIT_SEAFILE_ADMIN_PASSWORD, SEAFILE_MYSQL_DB_PASSWORD y JWT_PRIVATE_KEY, que deben contener una cadena aleatoria de al menos 32 caracteres. Ese archivo también indica a compose cuáles de los archivos YAML descargados debe leer. Por tanto, las cuatro descargas funcionan como una sola pila.
cd /opt/seafile
sudo docker compose up -d
sudo docker compose psTodos los contenedores deben mostrar un estado en ejecución. Un contenedor que se reinicia continuamente casi siempre indica que falta un valor en .env. sudo docker compose logs seafile indica cuál es.
Recursos. La documentación de Seafile solicita al menos 2 GB de RAM y una CPU de 2 núcleos por encima de 2 GHz, según la información disponible en August 2026. Considérelo el mínimo para toda la pila, porque el despliegue de Docker también inicia MariaDB, el proxy inverso Caddy y el editor SeaDoc. Asígnele 4 GB si lo usan más de una o dos personas, o no incluya los contenedores opcionales.
El inconveniente de la migración es el formato de almacenamiento. Seafile no conserva los archivos como archivos independientes. Divide cada archivo en bloques dentro de /opt/seafile-data y registra el árbol en su base de datos. No puede indicar a Seafile que use un directorio existente y hacer que aparezca como una biblioteca. Por tanto, la migración requiere una carga completa de todo lo que tenga. El mismo diseño implica que no puede extraer los datos con cp: la recuperación debe hacerse a través del servidor, seaf-fsck para las comprobaciones de coherencia, o mediante el montaje de solo lectura seaf-fuse.
rclone tiene un backend nativo para Seafile. Esto convierte la carga en un único comando reanudable, en lugar de una larga sesión de arrastrar y soltar.
rclone config
rclone copy /srv/files seafile:MyLibrary --progressLa documentación de rclone indica que Seafile 6.x a 9.x están probados. Ejecútelo primero con una carpeta pequeña y compruebe el resultado antes de transferir un terabyte.
Las bibliotecas cifradas son la función que motiva muchas migraciones. La contraseña se establece en el cliente, y el servidor almacena bloques que no puede leer. Hay una limitación importante: al previsualizar en el navegador un archivo de una biblioteca cifrada, la contraseña se envía al servidor durante esa sesión. Por tanto, la previsualización en el navegador y el almacenamiento con conocimiento cero no están disponibles al mismo tiempo. Comparación directa entre Seafile y Nextcloud cubre el resto de las diferencias funcionales.
Almacenamiento de objetos con un cliente de sincronización
Si el objetivo es almacenar muchos bytes a bajo coste y acceder a ellos desde scripts, ejecute un almacenamiento de objetos compatible con S3 y trate la sincronización como una herramienta independiente. Obtendrá durabilidad, control de versiones y un protocolo que ya admiten todas las herramientas de copia de seguridad. No tendrá cuentas de usuario como las de un servidor de archivos ni un gestor de archivos cómodo de usar. Almacenamiento de objetos autogestionado con MinIO explica la configuración del servidor.
rclone copy /srv/files s3remote:mybucket --progress
rclone check /srv/files s3remote:mybucketrclone check compara ambos lados por tamaño y hash, e indica cuántos archivos difieren. Cualquier resultado distinto de cero significa que la copia está incompleta, por lo que debe ejecutar copy de nuevo antes de eliminar el origen. Tenga en cuenta dos aspectos: el almacenamiento de objetos no tiene directorios, sino sólo prefijos de clave, por lo que una carpeta vacía no se conserva durante la copia; además, aumentar --transfers junto con el tamaño de bloque de S3 incrementa el uso de memoria de rclone, así que mantenga ambos valores predeterminados en una VPS de 1 GB.
WebDAV simple o SFTP cuando sólo necesita archivos remotos
A menudo, el reemplazo más barato es no añadir nada. Si su VPS ejecuta OpenSSH, ya tiene un servidor de archivos. SFTP no necesita ningún daemon adicional, ninguna base de datos, PHP ni una actualización que pueda fallar un domingo.
sftp you@your-vps
rclone mount sftpremote: ~/vps --vfs-cache-mode writesPara los clientes compatibles con WebDAV, incluidos la mayoría de los gestores de archivos para teléfonos, rclone puede servir el mismo árbol de directorios.
sudo apt install apache2-utils
sudo htpasswd -c /etc/rclone/htpasswd you
rclone serve webdav --addr 127.0.0.1:8080 --htpasswd /etc/rclone/htpasswd /srv/filesVincúlelo a 127.0.0.1 y coloque delante un reverse proxy con TLS (seguridad de la capa de transporte). La autenticación básica de WebDAV envía la contraseña en cada solicitud, por lo que usar HTTP simple aquí implica entregar la contraseña muchas veces por minuto. El coste de la migración es cero porque los archivos nunca se mueven. La desventaja es que no hay sincronización ni copia sin conexión: cuando se interrumpe el enlace, los archivos dejan de estar disponibles en el cliente hasta que se restablece.
Qué sustituye a los calendarios, los contactos y la edición de documentos
Dejar Nextcloud tiene un coste en este aspecto, y conviene explicar cuál. Los calendarios y los contactos usan CalDAV y CardDAV (sincronización de calendarios y contactos mediante HTTP), y Radicale es el reemplazo ligero. Almacena cada colección como archivos en el disco y funciona con unas decenas de megabytes.
sudo apt install radicale
sudo systemctl enable --now radicale
sudo ss -lntp | grep 5232El paquete incluye /usr/lib/systemd/system/radicale.service y su configuración predeterminada en /etc/radicale/config, y escucha en localhost:5232. Radicale no tiene una interfaz para editar eventos, por lo que debe configurarlo en un teléfono o cliente de escritorio y editarlos allí.
La edición de documentos desde el navegador es más difícil de sustituir. OnlyOffice Docs y Collabora Online son motores de edición, no sistemas de almacenamiento: cada uno necesita una aplicación anfitriona que conserve los archivos y le entregue los documentos. Si elimina Nextcloud, necesita otra aplicación anfitriona, como Seafile con su propio editor SeaDoc. La comparación entre OnlyOffice y Collabora explica qué motor ejecutar una vez decidido qué aplicación lo alojará.
Si se cumple alguna de estas condiciones, mantenga Nextcloud
- Varias personas comparten un calendario y una libreta de direcciones con las mismas cuentas que usan para los archivos.
- Edita documentos ofimáticos en el navegador y, al mismo tiempo, otra persona edita el mismo archivo.
- Necesita enlaces de uso compartido por archivo, con fechas de caducidad y contraseñas, además de permisos de grupo.
- Sus usuarios no tienen conocimientos técnicos y, en la práctica, usan las aplicaciones móviles.
Para esas tareas no existe una alternativa más ligera que haga todo esto. Lo correcto es corregir la instalación en lugar de abandonarla. La mayoría de las instancias lentas usan un pool predeterminado de PHP-FPM sin ninguna caché de memoria configurada. La página de resumen de administración de Nextcloud también advierte de la caché que falta. Reducir el número de archivos registrados ayuda más que cualquier otro cambio individual, porque la tabla de caché de archivos es la que crece. Una instalación de Nextcloud en un VPS con Docker, TLS y copias de seguridad la configura de una forma que evita la mayoría de estos problemas.
Qué implica realmente la migración, opción por opción
- Syncthing: no requiere importación. Apúntelo al árbol que ya existe en ambos lados y deje que converja.
- SFTP o WebDAV sobre el mismo árbol: no requiere ninguna importación, porque no se mueve nada.
- Almacenamiento de objetos: una copia de red completa, reanudable y automatizable mediante scripts. Las carpetas vacías no se conservan.
- Seafile: una carga completa en las bibliotecas, porque el servidor conserva bloques en lugar de archivos.
Elija la opción que elija, obtenga primero una copia coherente de Nextcloud. Los archivos de los usuarios se encuentran en forma normal bajo el directorio de datos, en una carpeta por usuario, por lo que rsync de ese árbol es el origen. Ponga la instancia en modo de mantenimiento antes de copiar. De lo contrario, copiará archivos mientras se están escribiendo.
sudo -u www-data php occ maintenance:mode --on
sudo rsync -a --info=progress2 /path/to/nextcloud/data/ /srv/files/
find /srv/files -type f | wc -lCompare ese recuento con el mismo find en el origen. Una diferencia suele indicar que los permisos impidieron que rsync leyera algún elemento. El comando muestra esos errores a medida que avanza.
Hay dos problemas que debe tener en cuenta en esa copia. Los archivos a los que se accede mediante la función de almacenamiento externo de Nextcloud no se encuentran en el directorio de datos, porque están en el sistema remoto que se configuró en Nextcloud. Además, si alguna vez se habilitó el cifrado del lado del servidor, los archivos del disco son texto cifrado, por lo que occ encryption:decrypt-all debe ejecutarse antes de la copia. De lo contrario, moverá una carpeta con datos ilegibles. Compruebe ambos puntos antes de cancelar nada.
FAQ
¿Existe una alternativa a Nextcloud que conserve mi estructura de directorios?
Syncthing y cualquier configuración sencilla de SFTP o WebDAV. Syncthing indexa el directorio que se le indica y conserva los mismos nombres y la misma estructura en todos los dispositivos, por lo que no hay que importar ni cargar nada. Seafile y el almacenamiento de objetos requieren una carga completa inicial, porque ninguno almacena los datos como archivos normales en una estructura de directorios normal. Seafile divide los archivos en bloques dentro de su directorio de datos, y el almacenamiento de objetos usa claves en lugar de directorios.
¿Se ejecutará Seafile en un VPS con 2 GB?
La documentación de Seafile solicita al menos 2 GB de RAM y una CPU de 2 núcleos por encima de 2 GHz, a fecha de agosto de 2026. Considérelo el mínimo sin margen, porque el despliegue de Docker también ejecuta MariaDB, Caddy y el editor SeaDoc en sus propios contenedores. Para un solo usuario es viable. Para una familia o un equipo pequeño, use 4 GB o excluya el contenedor de SeaDoc de la pila y renuncie a la edición de documentos en el navegador.
¿Por qué la interfaz web de Nextcloud es lenta si las descargas siguen siendo rápidas?
Porque las dos rutas realizan trabajos distintos. Una descarga transmite bytes desde el disco, mientras que la carga de una página ejecuta PHP, consulta la tabla de caché de archivos y a menudo espera a que haya disponible un worker de PHP-FPM. Cuente las filas de oc_filecache y compruebe pm.max_children en el pool de PHP-FPM antes de culpar al almacenamiento. Una tabla con millones de filas y un pool de cinco workers produce exactamente este patrón.
¿Puedo mantener Nextcloud para los calendarios y mover sólo los archivos?
Sí, y a menudo es la opción más económica. Sincronice las carpetas grandes con Syncthing o Seafile y mantenga Nextcloud para CalDAV, CardDAV y la edición de documentos en el navegador. Como la base de datos de Nextcloud crece con el número de archivos que registra, eliminar de ella los árboles grandes es lo que vuelve a acelerar la interfaz. Elimínelos mediante la interfaz web o occ, no desde el directorio de datos del disco, porque la base de datos conservaría filas que apuntan a archivos inexistentes.