viernes, enero 30, 2015

Enlaces simbólicos en Windows

Para los que hemos vivido en el mundo de linux durante muchos años, en el momento en que nos movemos a trabajar en Windows echamos de menos muchas utilidades y características. En particular una características que he usado mucho para la administración de carpetas y unidades es la capacidad de usar enlaces simbólicos.

Afortunadamente, en Windows, existe la capacidad de hacer este tipo de enlaces, con más limitaciones, pero que al fin y al cabo hacen su función.

Para los que no sepáis qué es un enlace simbólico os daré una pequeña explicación. Un enlace simbólico, en la jerga de un usuario de Windows no avanzado, se podría decir que es algo así como un acceso directo a una carpeta, una unidad de disco, etc.

Por poner un ejemplo, imaginad que en la ruta C:\MISCOSAS guardáis ficheros que os son útiles. Y queréis acceder a esa carpeta desde vuestro escritorio por comodidad. La mayoría de usuarios Windows crearía un acceso directo a C:\MISCOSAS y lo pegaría en el escritorio. Haciendo doble click accedería a la carpeta deseada.

Pues bien, los accesos directos en realidad son unos ficheros de extensión .LNK que le dice al sistema donde tiene que ir cuando uno hace doble click sobre ellos.

En cambio, los enlaces simbólicos digamos que es algo más sofisticado y se realiza a nivel de la capa de la estructura del disco duro, permitiendo hacer muchas más cosas que con los accesos directos y de manera muy limpia, como por ejemplo conseguir que Dropbox guarde cualquier carpeta del ordenador, no sólo lo que esté dentro de la famosa carpeta Dropbox, pero esto lo explicaré en otra entrada.
Lo primero es saber que en Windows una de las limitaciones es que solo funcionará con particiones NTFS, ya que es una característica de este tipo de particiones.

En versiones de Windows a partir de Windows Vista (Vista, Windows 7, Windows 8 o 8.1) el sistema operativo ya trae un comando para realizar este tipo de enlaces, llamado mklink.

Si estamos en versiones anteriores, como Windows XP, o Windows Server 2003 tendremos que instalar un paquete de recursos que ofrece Microsoft (que se puede descargar desde aquí). Si entráis en el enlace, veréis que muestra "Windows Server 2003 Resource Kit Tools", pero aunque diga Windows Server 2003, lo que uséis Windows XP también lo podéis usar. Una vez instalado, podréis usar el comando linkd como sustitutivo de mklink para estos sistemas operativos más antiguos.

Pues bien, sabiendo esto vamos a ver cómo creamos y borramos enlaces simbólicos. Lo primero es saber que para trabajar con enlaces simbólicos hay que hacerlo desde la consola; en windows la podéis abrir pinchando en el botón de inicio y tecleando CMD y dándole a ENTER (o RETURN) si estamos en versiones modernas de Windows o menu de Inicio -> Ejecutar -> Tecleamos CMD y presionamos ENTER. Se abrirá una ventana de consola (mucha gente la llama vulgarmente ventana de MS-DOS, por sus recuerdos pasados...)

  • Crear enlace simbólico:
    • Windows XP y Windows Server 2003:
      • Desde la consola (CMD), tecleamos linkd seguido del nombre del enlace que queremos crear y la ruta al que debe apuntar, es decir: linkd
    • Windows Vista y superior:
      • Desde la consola (CMD), tecleamos mklink /D seguido del nombre del enlace que queremos crear y la ruta al que debe apuntar, es decir: mklink /D
  • Borrar enlace simbólico:
    • Windows XP y Windows Server 2003:
      • Desde la consola (CMD), tecleamos linkd /D.
    • Windows Vista y superior:
      • Basta con eliminar el vínculo creado desde la consola o desde cualquier explorardor de archivos.

Veamos algunos ejemplos. Imaginad que tenemos una carpeta en C:\Usuarios\yomismo\micarpeta y queremos crear un acceso desde C:\ a esa carpeta por comodidad o por alguna otra razón. Imaginad que el enlace lo queremos llamar MIENLACE, es decir que si entrásemos a C:\MIENLACE veríamos el contenido de C:\Usuarios\yomismo\micarpeta.

Para crear el enlace, lo primero es entrar en la consola que expliqué más arriba (CMD) y ahora tecleamos lo siguiente:
  • Windows XP y Windows Server 2003: linkd C:\MIENLACE C:\Usuarios\yomismo\micarpeta
  • Windows Vista y superior: mklink /D C:\MIENLACE C:\Usuarios\yomismo\micarpeta
Si quisiéramos borrar el enlace lo podríamos hacer directamente desde el navegador de ficheros, es decir accediendo a C:\ y borrando la "carpeta" (enlace simbólico) MIENLACE. Al borrar esta carpeta no se borran los datos de C:\Usuarios\yomismo\micarpeta, ya que sólo es un enlace.

Alternativamente, en Windows XP y Windows Server 2003, desde la consola lo podríamos también hacer tecleando lo siguiente: linkd C:\MIENLACE /D

Los enlaces simbólicos tienen muchas utilidades. Espero que os sirva de ayuda.

No hay comentarios: