Escenario: ¿Enlace o unión simbólica NTFS?

17

Las diferencias

┌───────────────┬──────────┬──────────┬──────┬──── ───────┬─────┐
│ │ Absoluto │ Relativo │ Archivo │ Directorio │ UNC │
├───────────────┼──────────┼──────────┼──────┼──── ───────┼─────┤
│ Enlace simbólico │ Sí │ Sí │ Sí │ Sí │ Sí │
│ Unión │ Sí │ - │ - │ Sí │ - │
└───────────────┴──────────┴──────────┴──────┴──── ───────┴─────┘

Guión

Supongamos que estamos creando un punto de análisis para crear la redirección C:\SomeDir => D:\SomeDir

Dado que este escenario solo requiere rutas locales y absolutas, funcionaría una unión o un enlace simbólico. En esta situación, ¿hay alguna ventaja en usar uno u otro?

Suponga que Windows 7 para el sistema operativo, sin tener en cuenta la compatibilidad con versiones anteriores. (Antes de Vista, los enlaces simbólicos no son compatibles de forma nativa, aunque hay un controlador de terceros que proporciona compatibilidad con enlaces simbólicos en Windows XP).

Actualizar

He encontrado otra diferencia.

  • Enlace simbólico: los permisos del enlace solo afectan las operaciones de eliminación / cambio de nombre en el enlace en sí, el acceso de lectura / escritura (al objetivo) se rige por los permisos del objetivo
  • Unión: los permisos de la unión afectan la enumeración, revocar los permisos en la unión negará la inclusión de archivos a través de esa unión, incluso si la carpeta de destino tiene ACL más permisivas

Los permisos lo hacen interesante, ya que los enlaces simbólicos pueden permitir que las aplicaciones heredadas accedan a archivos de configuración en áreas restringidas a UAC (como %ProgramFiles%) sin cambiar los permisos de acceso existentes, almacenando los archivos en una ubicación no restringida y creando enlaces simbólicos en el directorio restringido.

Actualización 2

Windows 8.1 resolverá los enlaces simbólicos del directorio al navegar en uno a través del cuadro de texto en un Save As...cuadro de diálogo. Las uniones no se expanden.


fuente
¿Tiene un enlace a la información de diferencia de permisos? Ese es todo el hallazgo.
surfasb
Mi prueba confirma que el acceso de lectura al directorio de destino (es decir, enumerar el contenido del directorio) está restringido por los permisos en el punto de unión, además de los del directorio de destino. Sin embargo, ningún otro acceso parece verse afectado. En particular, puede crear archivos y subcarpetas si los permisos del directorio de destino lo permiten, independientemente de los permisos del punto de unión.
Harry Johnston
@HarryJohnston: Inicialmente, sospeché algunas inconsistencias al bloquear los permisos de eliminación y escritura en juctions, pero los elementos y subcarpetas debajo funcionan bien.
surfasb
No daré una respuesta completa a menos que así lo solicite, pero si está utilizando un sistema GNU u otro sistema que no sea Windows para acceder al volumen mount.cifs, aparecerán los enlaces simbólicos como tales, mientras que las uniones se verán como directorios normales, probablemente debido a punto donde se produce la resolución IO, es decir , localmente en el host de Windows.
can-ned_food

Respuestas:

4

Entiendo que los enlaces simbólicos NTFS son un reemplazo para Junctions en los sistemas operativos Windows más nuevos (Vista / 7/8) ya que funcionan de la misma manera pero también proporcionan funcionalidad adicional (puntos remotos). Entonces, siempre que solo trabaje con sistemas operativos más nuevos, entonces no hay razón para no usar la opción de enlace simbólico.

Garrett
fuente
De manera predeterminada, los enlaces simbólicos en los servidores se ignorarán, e incluso si se siguen están restringidos por las reglas de acceso de nivel compartido del servidor: por lo tanto, por ejemplo, no se puede vincular a una ubicación en el servidor que no se comparte, o si el compartir no le da acceso al usuario. Por lo tanto, los enlaces simbólicos no pueden reemplazar los puntos de unión en todos los contextos.
Harry Johnston
2

Creo que los puntos de unión tienen un soporte más amplio en el software de respaldo que los enlaces simbólicos. Debe verificar con cualquier programa de respaldo que esté utilizando qué función es compatible.

Si no se admite, el enlace simbólico / punto de unión se respaldará como un directorio separado (y se restaurará como tal), o no se respaldará en absoluto.

Aparte del problema de la copia de seguridad, no veo una razón para preferir uno sobre el otro, en su caso específico (directorio local).

haimg
fuente
Los puntos de unión y los enlaces simbólicos se implementan a través de NTFS utilizando puntos de análisis. Según MSDN, ambos son tratados de la misma manera por las operaciones de archivo a través de la API.
surfasb
2
@surfasb: Sin embargo, si los enlaces simbólicos no son específicamente compatibles (y reconocidos como tales), no se volverán a crear como enlaces simbólicos durante la restauración desde la copia de seguridad.
Haimg
Ah, muy buen punto! No pensé lo suficiente en el futuro.
surfasb
Hasta donde yo sé, esto es más importante si los sistemas operativos Windows anteriores acceden al volumen.
can-ned_food
1

Las uniones NTFS solo pueden apuntar a directorios, mientras que los enlaces simbólicos también funcionan en archivos.

usuario1686
fuente
Pero para los archivos, en su lugar, podría usar un enlace duro.
paradroid
0

Aquí hay una diferencia que he notado:

Tengo un directorio sincronizado de scripts, aplicaciones portátiles, etc. Utilizo un script por lotes para hacer un cruce en el directorio del menú Inicio que apunta a un directorio de accesos directos para las aplicaciones portátiles.

Un cruce permite que los accesos directos aparezcan en el menú Inicio. Cuando uso un enlace simbólico en su lugar, no funciona.

paradroid
fuente
Extraño, esto funciona bien para mí. También tengo enlaces simbólicos a unidades flash conectadas a mi máquina.
surfasb
@surfasb: ¿Estás seguro de que estás haciendo lo que describí? Los accesos directos dentro de un directorio señalado por un enlace simbólico con el directorio del menú Inicio no aparecen en mi menú Inicio. Lo hacen cuando se usa un cruce.
paradroid
No estoy seguro si lo leí correctamente. Entonces, en el menú de inicio, ¿un enlace simbólico que apunta a una carpeta que contiene accesos directos? Lo probé hace un momento. Incluso obtuve el enlace simbólico para apuntar a otro enlace simbólico en una ruta unc que apuntaba a la carpeta en una ruta UNC con accesos directos. Por supuesto, eso rompe los atajos. Pero un recorrido de enlace simbólico "remoto a remoto" está deshabilitado de forma predeterminada en Windows.
surfasb
0

Tal vez me lo he perdido en algún lugar de los comentarios, pero una diferencia muy importante entre los enlaces simbólicos y las uniones en Windows para mí son los privilegios necesarios para crear ambos. Si bien los enlaces simbólicos solo se pueden crear de forma predeterminada con permisos especiales que los usuarios predeterminados no tienen, los enlaces pueden ser creados fácilmente por todos los usuarios predeterminados OOB y, por lo tanto, son mi tipo de enlace preferido para directorios.

Por defecto, los miembros del grupo Administradores tienen este derecho.

https://docs.microsoft.com/en-us/windows/device-security/security-policy-settings/create-symbolic-links

Thorsten Schöning
fuente