Files
2026-08-04 19:24:21 +02:00

5.5 KiB

INSTALAR NEXTCLOUD UBUNTU-SERVER CON ZIP OFICIAL (latest.zip)

Instala Apache, PHP y MySQL: sudo apt update sudo apt install apache2 mysql-server php libapache2-mod-php php-mysql php-gd php-json php-xml php-curl php-zip php-mbstring php-bcmath unzip -y

Configura la base de datos: sudo mysql CREATE DATABASE nextcloud; CREATE USER 'nextclouduser'@'localhost' IDENTIFIED BY 'password123'; GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost'; FLUSH PRIVILEGES; EXIT;

Descarga Nextcloud: wget https://download.nextcloud.com/server/releases/latest.zip unzip latest.zip sudo mv nextcloud /var/www/html/ sudo chown -R www-data:www-data /var/www/html/nextcloud

Crea archivo de configuración en Apache: sudo nano /etc/apache2/sites-available/nextcloud.conf

<VirtualHost *:80> ServerAdmin admin@localhost DocumentRoot /var/www/html/nextcloud ServerName localhost.local

<Directory /var/www/html/nextcloud/>
    Require all granted
    AllowOverride All
    Options +FollowSymlinks
</Directory>

ErrorLog ${APACHE_LOG_DIR}/nextcloud_error.log
CustomLog ${APACHE_LOG_DIR}/nextcloud_access.log combined

Activa el sitio y módulos necesarios: sudo a2ensite nextcloud.conf sudo a2enmod rewrite headers env dir mime sudo systemctl reload apache2

Abre el navegador y escribe http://IP_DEL_SERVIDOR/nextcloud

BACKUP nextcloud sudo -E -u www-data php occ maintenance:mode --on rsync -Aavx nextcloud/ nextcloud-dirbkp_date +"%Y%m%d"/ mysqldump --single-transaction --no-tablespaces -h [server] -u [username] -p[password] [db_name] > nextcloud-sqlbkp_date +"%Y%m%d".bak mysqldump --single-transaction --default-character-set=utf8mb4 -h [server] -u [username] -p[password] [db_name] > nextcloud-sqlbkp_date +"%Y%m%d".bak sudo -E -u www-data php occ maintenance:mode --off

RESTORE nextcloud rsync -Aax nextcloud-dirbkp/ nextcloud/ mysql -h [server] -u [username] -p[password] -e "DROP DATABASE nextcloud" mysql -h [server] -u [username] -p[password] -e "CREATE DATABASE nextcloud" utf8 mysql -h [server] -u [username] -p[password] -e "DROP DATABASE nextcloud" mysql -h [server] -u [username] -p[password] -e "CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci" mysql -h [server] -u [username] -p[password] [db_name] < nextcloud-sqlbkp.bak

Copiar archivos del servidor ubuntu a nextcloud sudo cp -R /ruta/de/tus/archivos/* /var/www/html/nextcloud/data/<tu_usuario>/files/Destino/

sudo -u www-data php /var/www/html/nextcloud/occ files:scan --path="<tu_usuario>/files/Destino"

Nota para o siguiente: Ha funcionado sin crear directorio destino ni dar permisos. No copies archivos cuando el usuario esté accediendo a Nextcloud; podrías corromper datos. Asegúrate de que el directorio de destino (Destino) exista previamente, o créalo con: mkdir /var/www/nextcloud/data/<tu_usuario>/files/Destino chown -R www-data:www-data /var/www/nextcloud/data/<tu_usuario>/files/Destino

Eliminar bloqueos base de datos de Nextcloud Nextcloud a veces deja bloqueos en la base de datos que impiden operaciones de archivos. sudo mysql -u root -p

Selecciona base datos Nextcloud USE nextcloud; DELETE FROM oc_file_locks WHERE 1; EXIT;


INSTALACION SNAP sudo snap install nextcloud

  1. BACKUP-RESTORE USANDO SNAP SAVE-RESTORE https://github.com/nextcloud-snap/nextcloud-snap/wiki/Backup-and-Restore

Backup. stop Nextcloud snap sudo snap stop nextcloud save Nextcloud snap sudo snap save nextcloud start Nextcloud snap sudo snap start nextcloud copy/move snapshot (*.zip) in /var/lib/snapd/snapshots to wherever

Restore copy/move snapshot (*.zip) to /var/lib/snapd/snapshots discover snapshot-id using snap saved restore snapshot sudo snap restore

Deleting snap snapshots Procedure discover snapshot-id using snap saved delete snapshot sudo snap forget

  1. BACKUP-RESTORE USANDO NEXTCLOUD.EXPORT / NEXTCLOUD.IMPORT https://github.com/nextcloud-snap/nextcloud-snap/wiki/How-to-backup-your-instance

Exportar/backup

nextcloud.export Se guarda una carpeta con fecha y hora (ej:20190121-153921,) dentro de /var/snap/nextcloud/common/backups/.

Se puede crear un tar o tar.gz (comprimido) sudo tar -czf 20190121-153921_nextcloud-backup.tar.gz /var/snap/nextcloud/common/backups/20190121-153921

Importar/restore Extraer el archivo tar o tar.gz sudo tar -xvf 20190121-153921_nextcloud-backup.tar.gz

Colocar la carpeta extraida (nombre fecha y hora) en: /var/snap/nextcloud/common o /var/snap/nextcloud/current/

sudo nextcloud.import path/to/backup/dir.**

sudo mv 20190121-153921_nextcloud-backup.tar /var/snap/nextcloud/current/ sudo chown -R root:root /var/snap/nextcloud/current/20190121-153921/

Opciones: -h: Display this help message -a: Include the (non-default) apps -b: Include the database -c: Include the config -d: Include the data (can be quite large)

Q. Can exporting specify the data directory? A. Not directly, but you should be able to use a symlink. For example, creating a symlink from the data directory to /var/snap/nextcloud/common/nextcloud/data

Q. Can I somehow export/import my HTTPS certs? A. Yes, everything related to them is stored in the /var/snap/nextcloud/current/certs directory, so copying it and preserving its permissions and owner works.

Borrar bloqueos de nextcloud instalado con docker docker exec -it nextcloud_app php occ maintenance:mode --on docker exec -it nextcloud_db mysql -u nextcloud -pnextcloudpass nextcloud -e "DELETE FROM oc_file_locks;" docker exec -it nextcloud_app php occ maintenance:mode --off docker compose restart