Cambio de HDD de Nextcloud

8 min

language: ja bn en es hi pt ru zh-cn zh-tw

Hola, soy un inútil.
En realidad, si estuviera alojado en la nube, cambiar la ubicación de almacenamiento de datos debido a la corrupción del disco solo ocurriría durante una migración de entorno, pero como yo guardaba los datos de NextCloud en un disco duro defectuoso, decidí especificar una ubicación de disco duro diferente.
Mi uso de NextCloud es solo como reproductor multimedia en un entorno local, o para compartir archivos de forma temporal y sencilla entre diferentes sistemas operativos, por lo que no tengo archivos importantes. Son datos que están en alguna de las máquinas de mi casa, por ejemplo, archivos BIOS de una máquina para extraer EEPROM que no siempre está encendida, o notas que he escrito. O simplemente PDFs que se acumulan sin darme cuenta y que tiro ahí.

En realidad, solo tendría que cambiar el punto de montaje, así que ni siquiera parece necesario hacer esto, pero como ya he especificado un punto de montaje diferente para un disco duro ya montado, siento que podría afectar a otros scripts de shell, así que por tranquilidad, lo crearé de forma limpia y separada.

Para ser sincero, no sería necesario cambiar la ruta del datadirectory en el archivo de configuración config/config.php de NextCloud; bastaría con crear un enlace simbólico a la ubicación original. Pero me siento incómodo con eso, así que crearé un directorio de datos de NextCloud completamente separado en un disco duro diferente y lo especificaré.

※Este artículo no trata sobre la migración de datos, sino sobre el cambio de disco.

Creación del directorio de datos

Crearemos un directorio de datos para NextCloud en el disco duro ya montado.
Y parece que NextCloud se queja si no se crea .ocdata, así que lo crearé con touch. Olvidé que incluso con la opción -R, no mira recursivamente los archivos .file.

sudo mkdir /media/3t/ncdata
sudo touch /media/3t/ncdata/.ocdata
sudo chown www-data:www-data /media/3t/ncdata
sudo chown www-data:www-data /media/3t/ncdata/.ocdata
sudo chmod 750 /media/3t/ncdata

Editar config.php

Y si el datadirectory ya no existe, ni siquiera se puede entrar en modo de mantenimiento, así que primero editaré el archivo config/php para cambiar la configuración y luego procederé con la verificación del funcionamiento.

cd /your/nextcloud/dir
sudo vim config/config.php

Luego, especifique la siguiente configuración en el directorio que acabamos de crear.

  'datadirectory' => '/media/3t/ncdata',

Ahora, activaremos el modo de mantenimiento y, si no hay errores, lo desactivaremos de nuevo.

cd /your/nextcloud/dir
$ sudo -u www-data php ./occ maintenance:mode --on
Maintenance mode enabled
$ sudo -u www-data php ./occ maintenance:mode --off
Maintenance mode disabled

OK.

Ejecutar el escaneo de archivos de nuevo

Probablemente, debido a que tengo plugins instalados, si hay un directorio que ya no existe en la ruta especificada por un plugin, NextCloud se quejó y no pude ver el contenido después de iniciar sesión.
Volveré a entrar en modo de mantenimiento, realizaré un escaneo de archivos y volveré a obtener el índice de archivos.

cd /your/nextcloud/dir
$ sudo -u www-data php ./occ maintenance:mode --on
Maintenance mode enabled
$ sudo -u www-data php ./occ files:scan --all
Starting scan for user 1 out of 2 (Fox)
Path not found: User folder /media/3t/ncdata/Fox/ exists in cache but not on disk
Starting scan for user 2 out of 2 (nextcloud)
Path not found: User folder /media/3t/ncdata/nextcloud/files exists in cache but not on disk
+---------+-------+-----+---------+---------+--------+--------------+
| Folders | Files | New | Updated | Removed | Errors | Elapsed time |
+---------+-------+-----+---------+---------+--------+--------------+
| 0       | 0     | 0   | 0       | 0       | 2      | 00:00:00     |
+---------+-------+-----+---------+---------+--------+--------------+
$ sudo -u www-data php ./occ maintenance:mode --off
Maintenance mode disabled

Oh... parece que hay un error...
Así que crearé los directorios que faltan y que están causando el error.

sudo mkdir /media/3t/ncdata/Fox/files
sudo mkdir /media/3t/ncdata/nextcloud/files
sudo chown -R www-data:www-data /media/3t/ncdata
sudo chmod -R 750 /media/3t/ncdata

Con esto, hemos terminado.

Escanear de nuevo

cd /your/nextcloud/dir
sudo -u www-data php ./occ files:scan --all

Si esto funciona, se habrá completado con éxito.

Una vez confirmado esto, reduciré los permisos de los archivos de datos de NextCloud solo para los archivos.

cd /media/3t
sudo find ./ncdata  -type f -exec chmod 640 {} \;

La última vez me conecté con mi VPN WireGuard en mi dispositivo Android, así que ahora puedo acceder a NextCloud mientras estoy conectado a la VPN.
Hasta ahora, usaba un DNS gratuito que había obtenido de MyDNS a través de un proxy inverso de Nginx, y había un fenómeno en el que la barra de búsqueda no funcionaba al reproducir medios solo en entornos con proxy inverso, pero eso también se ha resuelto.

En términos de seguridad, también estoy pensando que podría eliminar el acceso a través del dominio que uso con MyDNS.

Por cierto, la razón por la que no configuro RAID es porque a menudo veo casos de personas que han pasado un infierno cuando el controlador RAID se daña, y quiero evitar esa molestia. Si lo hiciera, sería ZFS, pero solo lo consideraría si el área de datos que quiero usar supera los 5TB.

Personalmente, me gustaría conseguir SSDs de centros de datos que probablemente se liberen en grandes cantidades, en el momento en que salgan.
Así que eso es todo por ahora. Gracias de nuevo.

Related Posts