Copia de seguridad
Base de datos
Para realizar una copia de seguridad de la base de datos de NextCloud, verificamos el nombre de la base de datos en config/config.php
# cat config/config.php | grep dbname
'dbname' => 'nextcloud',
Como puedes ver, el nombre de la base de datos es nextcloud. Ahora, utiliza la utilidad mysqldump para realizar una copia de seguridad como se muestra a continuación.
sudo mysqldump -u root nextcloud-database-name > ~/nextcloud.sql
o
mysqldump -u root -p nextcloud-database-name > ~/nextcloud.sql
El comando anterior crea un archivo de respaldo (nextcloud.sql) en el directorio de inicio y se puede utilizar para restaurar la base de datos de Nextcloud si ocurre algún problema.
Carpeta de configuración
Para realizar una copia de seguridad de la carpeta de configuración de NextCloud, primero accede al directorio de instalación de NextCloud. (Dependiendo de la configuración, el directorio de instalación de NextCloud puede ser diferente.
cd /var/www/nextcloud/
A continuación, utiliza tar para hacer una copia de seguridad de la carpeta de configuración.
tar -cpzvf ~/nextcloud-config.tar.gz config/
El archivo de copia de seguridad (nextcloud-config.tart.gz) se colocará en el directorio de inicio.
Actualización
Nota: Se debe actualizar a la última versión puntual antes de actualizar a la siguiente versión principal.
Actualizar desde la línea de comandos
El método de la línea de comandos es más eficiente y tendrá menos errores en comparación con la aplicación de actualización basada en web. Si la instancia de Nextcloud tiene muchos usuarios y archivos, se debe utilizar este método indefectiblemente.
Ir al directorio de instalación de NextCloud.
cd /var/www/nextcloud/
Ejecutar el actualizador basado en la línea de comandos.
sudo -u www-data php8.1 updater/updater.phar --no-interaction
www-data es el nombre de usuario del servidor web.
Ejecutar la rutina posterior a la actualización.
sudo -u www-data php8.1 occ upgrade
sudo -u www-data php8.1 occ db:add-missing-indices
sudo -u www-data php8.1 occ db:convert-filecache-bigint
Una vez completada la actualización, ir a la página Configuración -> Descripción general
y verá que la versión de Nextcloud está actualizada.
Nota: No olvide volver a habilitar las aplicaciones de terceros después de la actualización.
Es posible crear una tarea Cron para que Nextcloud se actualice automáticamente. Editar el archivo crontab del usuario www-data.
sudo -u www-data crontab -e
Añadir la siguiente línea al final de este archivo. Sustituir /var/www/nextcloud/ por el directorio de instalación de Nextcloud.
0 3 \* \* \* php8.1 /var/www/nextcloud/updater/updater.phar --no-interaction; php8.1 /var/www/nextcloud/occ app:update --all
Cerrar el archivo. La tarea Cron se ejecutará cada día a las 3 de la madrugada.
Resolución de problemas
Actualización
A veces, una actualización puede fallar debido a la incompatibilidad de PHP. Puedes intentar actualizar a una nueva versión de PHP, como PHP8.1 -> PHP8.3, y luego volver a ejecutar el comando de actualización.
Archivos adicionales
Al actualizar Nextcloud, es posible que aparezca este error:
Se han encontrado los siguientes archivos adicionales:
.well-know
Se puede hacer una copia de seguridad de estos archivos «adicionales», eliminarlos y volver a intentar la actualización. Una vez finalizada la actualización, volver a colocar estos archivos.
504 Gateway Timeout
Si la descarga ha fallado debido a un error 504 Gateway Timeout, deberá reiniciar PHP-FPM.
systemctl restart php8.1-fpm
Error al descargar el archivo ZIP de Nextcloud
Si se encuentra con el siguiente error, es probable que se deba a que su servidor no ha podido descargar el nuevo archivo ZIP de Nextcloud.
El paso 4 está actualmente en proceso. Vuelve a cargar esta página más tarde.
Debe conectarse por SSH a su servidor Nextcloud y cambiar al usuario root.
Ir al directorio de datos de Nextcloud.
cd /var/www/nc-data/
```bash
En este directorio, hay un subdirectorio que comienza por updater. Cambie a ese subdirectorio.
```bash
cd updater-ocao79wqklov
A continuación, liste todos los archivos y subdirectorios, incluidos los ocultos.
ls -a
Encontrará un archivo .step y un subdirectorio de descargas. El archivo .step realiza un seguimiento del estado de la actualización. Debe eliminar este archivo.
rm .step
A continuación, vaya al subdirectorio de descargas.
cd downloads/
Elimine el archivo ZIP descargado.
rm nextcloud-\*.zip
A continuación, descargue manualmente el archivo ZIP de Nextcloud con el siguiente comando. Obviamente, debe sustituir la versión de Nextcloud a la que desea actualizar.
wget https://download.nextcloud.com/server/releases/nextcloud-30.0.13.zip
Una vez completada la descarga, vuelva a la aplicación de actualización basada en web y haga clic en el botón «Iniciar actualización».
Reparar instalación
Si no puedes solucionar un error con los consejos anteriores, puedes utilizar el comando de reparación de Nextcloud. Vaya al directorio de instalación de Nextcloud y ejecute el siguiente comando.
sudo -u www-data php8.1 occ maintenance:repair
¿No puedes actualizar?
Una versión estable importante puede tardar algún tiempo en incluirse en el canal de actualización estable, ya que puede haber algunas aplicaciones que no tengan actualizaciones para ella.
Por ejemplo, Nextcloud 31 es ahora la última versión estable, en caso que la aplicación de actualización basada en web no permita actualizar a Nextcloud 31, debes cambiar el canal de actualización de estable a beta.