Bueno, con este título seguramente no queda muy claro de que va esto, pero seguro que estás de acuerdo conmigo en lo bonito que es compartir, es algo que de pequeñitos nos enseñan que es mucho mejor que ser egoista y querer las cosas sólo para uno mismo. Y esa idea la hemos llevado al mundo interconectado de hoy en dia donde un ordenador no tiene sentido por si solo, si no tienes acceso al mundo exterior o a recursos compartidos con los demás, de que sirve. Pues de eso va todo esto, de como compartir teniendo en cuenta que todos somos diferentes pero no por ello deben tener unos preferencia sobre los otros.
   No estoy filosofando sobre la naturaleza humana aunque lo pueda parecer, sino sobre los diferentes sistemas operativos y protocolos de compartición de ficheros que existen hoy en dia y de como cada uno tiene sus propias preferencias por uno u otro protocolo a la hora de definir lo que es un recurso compartido (curiosamente cada uno considera que la forma “natural” de compartir es el protocolo propio de su plataforma). Lo ideal sería que, independientemente del sistema operativo que usemos, podamos tener acceso a los recursos de forma totalmente transparente y que luego se presenten en cada sitio adaptados a las condiciones especiales de cada uno. Ésta es la idea detrás del protocolo HTTP, pensado e ideado para compartir información en forma de documentos de texto facilmente accesibles desde cualquier navegador sobre cualquier plataforma: un documento en particular debería poder accederse y obtener el mismo resultado independientemente de la presentación final, pero en esencia el contenido será siempre el mismo.
   Si esto es algo natural para los documentos, ¿porqué no lo es para los ficheros?

   En los sistemas windows usan NetBIOS para compartir ficheros, en Linux y familiares disponemos de NFS (de forma nativa) y de Samba (como clon de NetBIOS), en Mac hay preferencia por iMac o por carpetas AppleShared (que se basan también en SMB). Adicionalmente podemos acceder a recursos remotos por otro tipo de conexiones : ftp, sftp, … y en cada caso hace falta un cliente particular para realizar la conexión y que no es, en principio, compatible 100% con el resto (permisos, juegos de caracteres, …)
   Buscando, buscando… nos hacia falta algún sistema multiplataforma que sea compatible 100% con todos los sistemas siendo el mismo en todos para que no sea necesario un servidor de samba, uno de nfs, otro de iMac, otro de ftp, otro de … con la consiguiente configuración de cada uno y con la más que probable redundancia de ficheros. Y cuando por fin lo encontramos, resulta que requiere de algunos ajustes en cada plataforma para hacerlo funcionar correctamente: hablo de WebDAV, un protocolo HTTP ampliado que permite acceder por este sistema (con todas las ventajas que conlleva) a ficheros y carpetas de manera transparente y pudiendo distribuirlo sin que por ello deje de ser accesible tanto en redes locales como a través de internet.
   Seguramente no os descubro nada nuevo al hablaros de este protocolo (para los que así sea, agradeceré cualquier corrección o mejora al artículo), pero si es algo nuevo para vosotros estas son algunas de sus características y/o (des)ventajas:
  • La configuración es única y sencilla, basta con tener un servidor Apache (o cualquier otro servidor web).
  • Todas las plataformas pueden acceder a este protocolo por ser de red y ampliamente conocido, y todos tienen clientes nativos.
  • Si bien, algunos cliente nativos son bastante malos:
    • en windows no permite la modificación parcial de un fichero, i.e., no se puede editar un fichero directamente desde la carpeta montad (si únicamente conectamos a la carpeta, ni siquiera permite la escritura)
    • en linux (al menos en ubuntu y mandriva), los navegadores de ficheros no admiten acceder a los volúmenes de red (algo increible para mi!!) al querer guardar o examinar ficheros desde ciertas aplicaciones (office, navegador, …) y es necesario montarlo como carpetas locales (objetivo final de este artículo)
    • en mac, salvo algunos problemillas con la caché si la conexión no es buena, funciona como uno esperaría.
  • Por ser un protocolo netamente de red y mapeable dentro de un espacio de direcciones URL, no quedamos restringidos a recursos compartidos en la red local
  • Puede estar distribuido a través de proxys
  • Permite todos los tipos de identificación que soporte el servidor web (via LDAP, BDD, fichero local, …), asi como cualquier característica que soporte el servidor y que pueda ser aplicable a un fichero (compresión de salida, caché si los contenidos no cambia, …)
  • Usando cualquier navegador podremos, como mínimo, acceder en modo lectura y por tanto integrarlo en cualquier aplicación.
  • Lamentablemente, supone una carga adicional importante para el servidor web que se encargue de su gestión, por lo que convendría aislarlo en uno propio o en un host virtual diferente.
  • Incluso en las últimas versiones, es posible configurar un servidor SVN bajo las carpetas para mantener versionado de los ficheros. Claro que esto implica un servidor adicional y que no todos los clientes soportan DAV/DeltaV (la variante necesaria para gestionar los cambios en los ficheros), por no decir casi ninguno.
  • […]
   Seguramente me dejo alguna más, si se os ocurre alguna otra estaré encantado de incluirla. Y de momento, hasta aquí la introducción del porqué de todo esto, y a partir de aquí decir que en el siguiente post continuaremos con éste tema y la configuración de un servidor Apache y de un proxy para acceder a las carpetas DAV, así como un segundo post en el que detallaremos como instalar y configurar el acceso a éste tipo de comparticiones desde las tres plataformas mayoritarias para tener acceso total a todas las características de éste sistema.
    Espero que pueda servir de referencia a alguien.
Anuncios