Mi Synology Drive DSM no puede actualizar, espacio lleno



Hace tiempo me topé con un problema donde mi unidad NAS de marca Synology no me permitía actualizar el Sistema Operativo DSM (DiskStation Manager), el sistema operativo de Synology basado en Linux que administra archivos, usuarios, aplicaciones y servicios del NAS mediante una interfaz web.

Ventana Actualizar y Restaurar de Synology DSM.

Lo anterior me causó extrañeza y no comprendía como teniendo terabytes libres en la partición del grupo de almacenamiento, el sistema indicaba capacidad insuficiente para actualizar. Pues bien, siendo DSM un sistema basado en Linux, éste opera bajo varias particiones como es normal y las particiones del sistema no son visibles a través de la interfaz web, al menos de forma oficial, por lo que no se pueden administrar. 

Ventana Administrador de almacenamiento de DSM.

La solución fue acceder a través de ssh (Secure Shell) a la terminal de comandos mediante nuestro usuario Administrador. Esto se puede hacer desde cmd en windows ejecutando ssh <usuario>@direccion-ip-del-nas

En algunos casos tendremos que hacer uso de permisos de super administrador ejecutando el comando su.

Una vez ahí, el motivo era que la partición donde se aloja el S.O. estaba completamente llena por un par de archivos de bitácora (logs) del comando forever, éste comando sirve para dejar corriendo un script al cerrar la terminal. Los archivos en cuestión fueron los siguientes:

root@blackbox:/mnt/root/.forever# ll -ls
total 6851732
      4 drwx------ 4 root root 4096 Mar 13 08:09 .
      4 drwx------ 4 root root 4096 Sep 6 2023 ..
    384 -rw------- 1 root root 390795 Sep 20 13:12 1SgC.log
  22536 -rw------- 1 root 23070179 3 Ene 09:47 2imk.log
3160132 -rw------- 1 root 3235967666 30 Ene 2024 4GkA.log
    256 -rw------- 1 root root 258048 Mar 11 12:01 b1X9.log
      4 -rw------- 1 root root 246 Mar 12 15:40 config.json
   4584 -rw------- 1 root 4686940 Mar 10 13:28 CutZ.log
      4 -rw------- 1 root 4096 Mar 12 15:43 IIAM.log
3603348 -rw------- 1 raíz 3689821225 30 Ene 2024 JTyr.log


Una vez eliminando ambos archivos la partición /dev/md0 donde se aloja DSM quedó en aptitud de actualizar paquetes y demás, como se aprecia a continuación:


root@blackbox:~$ df -h
Filesystem         Size  Used Avail Use% Mounted on
/dev/md0           7.9G  1.3G  6.5G  17% /
devtmpfs           805M     0  805M   0% /dev
tmpfs              823M   56K  823M   1% /dev/shm
tmpfs              823M   24M  799M   3% /run
tmpfs              823M     0  823M   0% /sys/fs/cgroup
tmpfs              823M   30M  793M   4% /tmp
/dev/vg1/volume_1  5.3T  217G  5.1T   5% /volume1
/dev/loop0          27M  768K   24M   4% /tmp/SynologyAuthService

Dicho lo anterior, es importante tener en cuenta si los scripts que ejecutamos generan bitácoras y donde se guardan, ya que los logs podrían no guardarse en la unidad de volumen que esperas (por ejemplo volume1 en mi caso), sino en el directorio por defecto del usuario dentro de la partición del sistema:

/mnt/root/.forever/


Si bien al paquete forever se le puede pasar un parámetro para especificar donde guardar los logs, decidí ya no usarlo y lo cambié por el pm2 (Process Manager 2) el cual me ha funcionado muy bien hasta la fecha.

Referencias: https://kb.synology.com/es-mx/DSM/tutorial/DSM_update_insufficient_system_capacity_for_update


Artículo Anterior Artículo Siguiente