¿Cómo crear un enlace duro de directorio en Windows?

13

Intenté crear un enlace rígido de directorio (no simbólico).

He intentado esto: mklink /d /h newfolder currentfolderpero me dice que el acceso está denegado . No entiendo cómo se deniega el acceso porque estoy ejecutando lotes como administrador.

¿Cómo creamos un enlace rígido de directorio?

==
Windows Vista Home Premium SP2

Pacerier
fuente

Respuestas:

15

Creo que los enlaces duros son solo para archivos y no para directorios.

Kobaltz
fuente
44
Sí, no existe un enlace rígido de directorio, solo puntos de unión y enlaces simbólicos.
Harry Johnston el
1
Los enlaces duros para directorios son técnicamente posibles, pero necesitan mucho cuidado para evitar bucles en el sistema de archivos. El único sistema operativo que los permite es Mac OS X 10.5, para usar en Time Machine.
Grawity
> Creo que los enlaces duros son solo para archivos y no para directorios. Gracias por la confirmación; Sigo con la intención de leer sobre enlaces simbólicos y
demás
1
bueno ... bajo linux-systems puedes usarlo mount --bindpara carpetas pero no estoy seguro si hay algo similar en windows!
DJCrashdummy
6

No existe un enlace duro a un directorio en Windows. En Windows, puede crear un enlace simbólico a un directorio mediante el comando mklink /d link_name target_diro crear una unión con mklink /J link_name target_dir.

A diferencia de los enlaces duros, las uniones pueden abarcar múltiples volúmenes y, a veces, Microsoft los llama "enlaces blandos", como puede leer aquí :

Una unión (también llamada enlace flexible ) difiere de un enlace duro en que los objetos de almacenamiento a los que hace referencia son directorios separados, y una unión puede enlazar directorios ubicados en diferentes volúmenes locales en la misma computadora.

Aquí se requiere cierta advertencia ya que la nomenclatura de Microsoft no es realmente clara, pero, en pocas palabras, estas son sus opciones para crear referencias a archivos y directorios en Windows:
(1) accesos directos: archivos cuyo contenido es la ubicación de otro archivo. Funciona más o menos como un enlace suave, aunque con una diferencia crucial: NO es una entrada de directorio, la información del enlace se almacena dentro del archivo. Por esta razón, no funciona con muchas aplicaciones (al menos, funciona como debería en el Explorador de Windows ...);
(2) enlaces duros: creados con el comando mklink /h. Válido solo para archivos y funciona dentro de un volumen dado (es decir, al igual que en Linux, no puede vincular un archivo en otra partición ni en una unidad de red);
(3)cruces: esta bestia es realmente rara. Funciona solo con directorios y, cosa curiosa, puede apuntar a directorios en otros sistemas de archivos;
(4) enlaces simbólicos: es muy parecido a Linux, y también funciona con directorios y archivos. (Pero tiende a requerir privilegios de administrador, lo que puede hacer que sea bastante inconveniente). Como mencioné anteriormente, se crea con el comando mklink /d link_name target_dirpara directorios (y mklink link_name target_filepara archivos). Puedes leer más sobre esto aquí .

Humberto Fioravante Ferro
fuente
Sugiero eliminar el comentario de su respuesta
Ramhound
¿Es una opinión o infringí alguna regla del foro?
Humberto Fioravante Ferro
No somos un foro
Ramhound
Correcto, comentario sacado. ¡Mis disculpas!
Humberto Fioravante Ferro
1
@Sz tenías toda la razón, y modifiqué mi respuesta de acuerdo con tus comentarios (de hecho, la respuesta fue un poco confusa). ¡Gracias!
Humberto Fioravante Ferro
-2

Use / J para crear un enlace rígido que apunte a un directorio, también conocido como unión de directorios:

mklink /J Link Target
Joseph Schafer
fuente
Los cruces son enlaces blandos ...
DavidPostill