Compartir archivos con directorios virtuales

Compartir archivos con directorios virtuales

Lo siento si este no es el lugar correcto para preguntar esto... Estoy intentando crear algún tipo de servidor donde no quiero almacenar todo el software que se utiliza en mi escuela organizado por las diferentes aulas para que Cuando estoy preparando una computadora nueva puedo encontrar el grupo correcto de software para copiar. El problema es que existen varias aplicaciones en diferentes clases, por lo que tengo que crear varias copias del mismo software en cada carpeta de clase, utilizando cada vez más espacio.

Primero pensé en crear un sitio web usando PHP, Javascript porque es fácil almacenar todos los archivos en un solo lugar y crear páginas diferentes para cada clase donde puedo descargar el software, pero tengo poca experiencia en desarrollo web, así que todavía tengo que hacerlo. trabajar en eso.

La otra solución fue con un servidor FTP pero no sé si sea posible crear algún tipo de carpetas virtuales donde pudiera ver solo los archivos de cada clase pero cuando descargué los archivos el verdadero lugar de almacenamiento era una sola carpeta. .

La idea es tener una manera fácil de actualizar constantemente el software sin tener que cambiar cada carpeta de clase.

Respuesta1

Dado que solo instalará el software una vez, incluso si tiene diferentes clases en las que los usa, colocaría todos los .debarchivos en una sola carpeta para que cuando los descargue desde ftp/servidor en una nueva instalación solo necesite hacer:

dpkg -i /path-to-the-downloaded-files/*.deb

Para tenerlos separados para cada clase, puede crear una estructura de carpetas que contenga .desktoparchivos para cada aplicación en su escritorio.

Esta estructura de carpetas se puede empaquetar con una herramienta de compresión ( tar, 7z, etc.) y colocarla también en el servidor, lo que hace que la restauración sea bastante fácil. .desktopPuede encontrar más información sobre los archivos.aquí.

Respuesta2

También puedes utilizar enlaces simbólicos. Comience poniendo todas las aplicaciones en un directorio; luego, en cada carpeta de clase, en lugar de colocar las aplicaciones reales, cree un enlace al archivo de la aplicación correspondiente. Ahora sólo almacena el archivo una vez, pero puede acceder a él desde muchos lugares.

Si actualiza las aplicaciones con frecuencia, puede ir un paso más allá: en lugar de vincular a la aplicación, vincúlelo a un "puntero" o "stub" y luego vincúlelo.esoa la aplicación. Eso significa que tendrías algo como:

Clase A

---AppA (enlaces a A)

---AppB (enlaces a B)

---AppC (enlaces a C)

Clase B

---AppA (enlaces a A)

---AppD (enlaces a D)

Clase C

---AppA (enlaces a A)

---AppC (enlaces a C)

---AppD (enlaces a D)

Directorio de aplicaciones

---A (enlaces a la versión A)

---B (enlaces a la versión B)

---C (enlaces a la versión C)

---D (enlaces a la versión D)

Ahora, cuando actualiza un paquete, no necesita volver a crear los enlaces para cada clase, ya que no cambian. En su lugar, cambiaría los enlaces en elDirectorio de aplicacionespara señalar la nueva versión y listo.

información relacionada