Refleja tu carpeta de NAS en PrintStash sin mover archivos
Indexa una carpeta local o de NAS donde ya vive, refleja su árbol como colecciones y mantén los escaneos a salvo si el montaje de red desaparece.
No necesitas subir una biblioteca de 400 GB que vive en un NAS a PrintStash. Monta la carpeta dentro del contenedor de la API y añádela como volumen compartido. PrintStash indexa los archivos en su sitio.
Meter los archivos en el NAS es otro problema, y sincronizar archivos STL entre un PC y un NAS cubre las herramientas de sincronización y las formas concretas en las que interactúan con un escaneo.
Cómo funcionan los volúmenes compartidos
La carpeta sigue siendo la fuente de verdad. PrintStash guarda el registro en la base de datos, los metadatos interpretados y la miniatura generada, y deja el archivo original de modelo o de G-code en la ruta donde ya estaba.
En modo espejo, las subcarpetas se convierten en colecciones anidadas. Un archivo en props/helmets/mando.stl aparece bajo props y luego bajo helmets. El modo de colección única mete en cambio todo lo de ese volumen compartido en una sola colección elegida.
Un escaneo reconcilia el índice con el disco. Los archivos nuevos se indexan. Los archivos que cambiaron se vuelven a hashear e interpretar. Los archivos que desaparecieron del disco pasan a la papelera de PrintStash.
La escritura de vuelta funciona en la otra dirección. Las subidas y revisiones nuevas de un modelo que está en un volumen compartido con permiso de escritura se añaden a esa carpeta. Usa un montaje de Docker de solo lectura si quieres indexado sin escritura de vuelta.
Las reglas de seguridad
PrintStash sigue unas cuantas reglas conservadoras con los archivos externos:
- La escritura de vuelta añade un archivo nuevo con un nombre a prueba de colisiones. No sobrescribe un archivo existente.
- Borrar de forma permanente un modelo enlazado elimina los registros de PrintStash pero no toca los bytes externos.
- Quitar un volumen compartido manda sus registros indexados a la papelera y deja en paz la carpeta montada.
El caso peligroso es un NAS desmontado. Linux puede dejar detrás un punto de montaje vacío, y eso puede parecer que se borraron todos los archivos. PrintStash aborta sin cambiar el índice cuando la raíz falta, no se puede leer o está vacía mientras aún tiene archivos indexados. Vuelve a montar el recurso compartido y lanza el escaneo otra vez.
Programación y vigilancia en tiempo real
Cada volumen compartido tiene una programación predefinida, una expresión cron propia o modo solo manual. Los escaneos programados siguen siendo útiles incluso con la vigilancia activada, porque recogen los eventos que se perdieron durante un reinicio.
Los sistemas de archivos locales pueden usar eventos nativos para actualizaciones más rápidas. Los montajes NFS y SMB no suelen entregar esos eventos, así que el modo automático cae de nuevo en la programación. La vigilancia forzada usa comprobaciones periódicas con stat y cuesta más trabajo que los eventos nativos.
Monta la ruta dentro de Docker
La ruta en PrintStash es la de dentro del contenedor api. Añade un override de Compose en lugar de editar el archivo que viene incluido:
services: api: volumes: - /mnt/nas/3d:/mnt/nas/3dAplícalo con docker compose up -d y luego comprueba la vista del contenedor:
docker compose exec api ls /mnt/nas/3dSi ese comando no ve los archivos, PrintStash tampoco los ve.
Una nota práctica sobre la memoria
Una malla densa puede consumir mucha más memoria de lo que sugiere su tamaño de archivo. PrintStash estima el coste de la malla antes de renderizar y se salta la previsualización cuando el límite configurado o el límite según la memoria disponible se queda corto. El archivo entra en el índice igualmente.
Deja el único trabajo de renderizado por defecto si el host es pequeño. Baja los límites de malla si el contenedor comparte una Raspberry Pi o un NAS con otros servicios que consumen memoria. La guía de mallas grandes explica los ajustes y qué significa una previsualización que se salta.