En informática , un enlace simbólico (también conocido como enlace simbólico o enlace blando ) es un archivo informático especial que hace referencia a otro archivo o directorio almacenando su ruta [ 1 ] , proporcionando así una ruta de acceso alternativa sin duplicar el contenido del destino. Las aplicaciones que utilizan servicios del sistema operativo pueden tratar un enlace simbólico como cualquier otro archivo o directorio, y no lo reconocerían como tal a menos que investiguen su naturaleza. Un enlace simbólico se romperá si su destino se mueve o se elimina.
Los enlaces simbólicos son compatibles con los sistemas operativos tipo Unix y Microsoft Windows , aunque presentan diversas limitaciones. Entre las alternativas a los enlaces simbólicos se incluyen los enlaces duros , los archivos de acceso directo y los objetos del shell de Windows .
Descripción general
Un enlace simbólico es un archivo independiente que almacena una ruta del sistema de archivos que, salvo en situaciones especiales, se trata como el elemento del sistema de archivos al que se refiere la ruta: el destino . Si se elimina un enlace simbólico, su destino no se ve afectado. Si el destino se mueve, se renombra o se elimina, el enlace simbólico no se actualiza ni se elimina automáticamente. Su ruta de destino no apuntaría a nada y podría describirse como rota , huérfana , muerta o colgante . El enlace simbólico se diferencia del enlace físico . Este último no puede enlazar con un destino en un volumen o sistema de archivos diferente, pero el primero sí. Un enlace físico siempre se refiere a un destino existente, mientras que un enlace simbólico puede ser una ruta a la nada.
Los enlaces simbólicos se introdujeron en 1982 en 4.1a BSD Unix . [ 2 ] El estándar POSIX define el enlace simbólico como se encuentra en la mayoría de los sistemas operativos tipo Unix , como FreeBSD , Linux y macOS . CTSS en IBM 7090 admitía archivos enlazados por nombre en 1963. [ 3 ] [ 4 ] [ 5 ] Para 1978, algunos enlaces simbólicos eran compatibles con los sistemas operativos de minicomputadoras de DEC y RDOS de Data General .
Los enlaces simbólicos pueden implementarse de forma dependiente del contexto o variable, de modo que el enlace apunta a distintos destinos según un parámetro de configuración, un parámetro de tiempo de ejecución u otra condición instantánea. Un enlace simbólico variable o variante tiene un nombre variable (como el nombre de usuario o información específica del entorno) incrustado en su definición de ruta, lo que permite cierta flexibilidad que no es posible con un enlace simbólico estándar. NetBSD , DragonFly BSD y Domain/OS admiten este tipo de enlaces. [ 6 ] [ 7 ] [ 8 ] Tru64 utiliza un enlace simbólico dependiente del contexto donde el contexto es el número de miembro del clúster. El sistema operativo OSx de Pyramid Technology admite enlaces simbólicos condicionales . [ 9 ]
Los enlaces simbólicos dependientes del contexto mencionados anteriormente sirven para reestructurar la jerarquía del sistema de archivos, permitir una estructura de directorios más intuitiva o específica para cada aplicación, y reorganizar el sistema de archivos sin rediseñar las funciones y utilidades centrales del sistema. Debido a su naturaleza, la característica de enlace simbólico hace que un sistema de archivos jerárquico sea un grafo dirigido en lugar de un árbol , lo que puede afectar a operaciones que de otro modo serían sencillas. Por ejemplo, la navegación al directorio padre de un directorio puede no funcionar de forma fiable con enlaces simbólicos. Algunos intérpretes de comandos de Unix intentan heurísticamente mantener la ilusión de una jerarquía en forma de árbol, pero esto hace que produzcan resultados diferentes en comparación con otros programas que manipulan rutas sin tales heurísticas, confiando en el sistema operativo. [ 8 ]
Windows 95 también tenía una preocupación similar en cuanto a la intuitividad, pero en lugar de adoptar enlaces simbólicos, creó el shell de Windows , carpetas especiales y archivos de acceso directo (consulte la sección Alternativas para obtener más detalles).
Similar a Unix
Usar
En un sistema operativo tipo Unix , el lncomando de shell puede crear un enlace físico (mediante la función link()API ) [ 10 ] o un enlace simbólico (mediante la symlink()función). [ 11 ] La sintaxis del comando para crear un enlace simbólico es la siguiente:
ln -s "<ruta del destino>" "<ruta del enlace>"Idealmente, el objetivo debería existir, aunque se puede crear un vínculo simbólico con un objetivo inexistente.
El siguiente ejemplo crea un archivo vacío llamado "foo" y luego crea un enlace simbólico llamado "bar" que apunta a "foo".
$ tocar foo $ ln -s foo barra La mayoría de las operaciones tratan un enlace como un alias para el destino. Por ejemplo, los comandos de shell que acceden al contenido del archivo acceden al contenido del archivo de destino. Pero las operaciones de administración de archivos pueden operar en el enlace o en el destino. Las API lstat(), [ 12 ] lchown()[ 13 ] y readlink()[ 14 ] se aplican directamente al archivo del enlace, no a sus destinos. Una aplicación (por ejemplo, lso find) puede usar lstat()en lugar de stat()para distinguir e informar sobre enlaces simbólicos en lugar de sus destinos. Debido a que las funciones de la API rename()y unlink()están codificadas para operar en enlaces simbólicos, los comandos rmy mv(que usan estas API) afectan al enlace simbólico en sí. El cpcomando tiene opciones que permiten copiar el enlace simbólico o el destino.
El ls -lcomando puede revelar el destino de un enlace simbólico. La salida muestra el nombre del enlace, seguido de una ->marca y su destino. En este ejemplo, lsrevela el enlace simbólico creado en el ejemplo anterior.
$ ls -l bar lrwxrwxrwx 1 grupo de usuarios 3 4 de agosto 18:40 bar -> fooAlmacenamiento
Las primeras implementaciones almacenaban la ruta del enlace en un archivo regular. Este archivo contenía la ruta de destino como texto, y los bits de modo de archivo lo marcaban como un enlace simbólico. El tamaño informado de dicho enlace simbólico es el número de caracteres de la ruta a la que apunta. No se utilizan los permisos del sistema de archivos de un enlace simbólico; los modos de acceso del archivo de destino se controlan mediante los permisos del propio archivo de destino. ( FreeBSD , NetBSD , DragonFly BSD y macOS pueden modificar los permisos y atributos de un enlace simbólico mediante las API lchmod()[ 15 ] [ 16 ] [ 17 ] [ 18 ] y lchflags()[ 19 ] [ 20 ] [ 21 ] [ 22 ] , respectivamente).
Para optimizar el espacio de almacenamiento y el rendimiento, el enlace simbólico rápido permitía almacenar la ruta de destino dentro de las estructuras de datos utilizadas para guardar la información de los archivos en el disco ( inodos ). Este espacio almacena una lista de direcciones de bloques de disco asignadas a un archivo. De esta forma, se accede rápidamente a los enlaces simbólicos con rutas de destino cortas. Los sistemas con enlaces simbólicos rápidos suelen recurrir al método original si la ruta de destino excede el espacio de inodos disponible. El estilo original se denominó posteriormente enlace simbólico lento . También se utiliza para garantizar la compatibilidad del disco con otras versiones o versiones anteriores de sistemas operativos.
Si bien almacenar el valor del enlace dentro del inodo ahorra un bloque de disco y una lectura de disco, el sistema operativo aún necesita analizar la ruta del enlace, lo que siempre requiere leer inodos adicionales y, por lo general, leer otros directorios, potencialmente muchos, procesando tanto la lista de archivos como los inodos de cada uno de ellos hasta encontrar una coincidencia con los componentes de la ruta del enlace. Solo cuando un enlace apunta a un archivo en el mismo directorio, los "enlaces simbólicos rápidos" ofrecen un rendimiento significativamente mejor que otros enlaces simbólicos.
Otros usos
Los enlaces simbólicos colgantes son creados intencionalmente por systemd como almacenamiento de datos clave-valor cuando el valor es suficientemente pequeño. El nombre del enlace simbólico es la clave y la ruta de destino es el valor. La razón es que, en lugar de dos llamadas al sistema para leer y tres para escribir, solo se necesitaría una para leer y dos para escribir. [ 23 ]
Windows
Microsoft Windows admite enlaces simbólicos en los sistemas de archivos NTFS y ReFS , así como en el espacio de nombres del núcleo de Windows.
Uniones NTFS y puntos de montaje de volumen
A partir de Windows 2000, NTFS admite puntos de unión, [ 24 ] también conocidos como enlaces blandos. [ 25 ] Los puntos de unión son similares a los enlaces simbólicos, pero solo enlazan a otros directorios, no a archivos. Se implementan mediante puntos de reanálisis NTFS . [ 25 ] Windows 7 y Vista admiten un máximo de 31 puntos de reanálisis para una ruta dada (es decir, cualquier ruta dada puede tener como máximo 31 redirecciones antes de que Windows se rinda). [ 26 ]
Además, a partir del año 2000, NTFS admite puntos de montaje de volumen. Normalmente, a los volúmenes de Windows se les asigna una letra de unidad . Los puntos de montaje de volumen actúan como un enlace simbólico a la raíz de otro volumen al que no se le ha asignado una letra de unidad.
Enlace simbólico NTFS
La versión 3.1 de NTFS introdujo la compatibilidad con enlaces simbólicos. Windows XP implementó parcialmente NTFS 3.1, omitiendo los enlaces simbólicos. Por lo tanto, se requiere un controlador de terceros para habilitar la compatibilidad con enlaces simbólicos NTFS en Windows XP. [ 27 ] Windows Vista y versiones posteriores habilitaron la compatibilidad con enlaces simbólicos. [ 28 ] A diferencia de los puntos de unión NTFS , un enlace simbólico también puede apuntar a un archivo o a una ruta de red SMB ( Server Message Block ) remota. Además, la implementación de enlaces simbólicos NTFS proporciona compatibilidad total con enlaces entre volúmenes . Sin embargo, la funcionalidad que habilita los enlaces simbólicos entre hosts requiere que el sistema remoto también los admita.
Los enlaces simbólicos están diseñados para facilitar la migración y la compatibilidad de aplicaciones con sistemas operativos POSIX . Microsoft pretendía que los enlaces simbólicos de Windows Vista "funcionaran igual que los enlaces UNIX". [ 28 ] Para crear un enlace simbólico, la cuenta de usuario debe poseer el nuevo privilegio "SeCreateSymbolicLinkPrivilege Crear enlace simbólico" ( ), que, por defecto, solo tienen los administradores. [ 29 ] En Windows Vista y versiones posteriores, cuando la ruta del directorio de trabajo termina con un enlace simbólico, la referencia de ruta principal actual, .., hará referencia al directorio principal del enlace simbólico en lugar del de su destino.
Los usuarios pueden usar el Símbolo del sistema o PowerShell para crear enlaces simbólicos. El siguiente comando crea un enlace simbólico llamado "Descargas" en " E:\" que apunta a la carpeta Descargas en el perfil del usuario. Esto solo funciona en el Símbolo del sistema, ya que mklinkes un comando integrado de la shell.
mklink /DE:\Downloads %UserProfile% \Downloads El /Dparámetro de este comando solicita un punto de unión en lugar de un enlace simbólico de archivo. Este comando se ejecuta correctamente incluso si el destino no existe.
El siguiente comando de PowerShell también crea un enlace simbólico con el mismo origen y destino que el anterior:
Nuevo-elemento -Ruta 'E:\Downloads' -Tipo de elemento 'Enlace simbólico' -Valor "$Env:UserProfile\Downloads"A diferencia del Símbolo del sistema, PowerShell devuelve un error si la ruta del objeto de origen no es válida. En cambio, PowerShell determina correctamente el tipo de objeto de origen y crea el tipo de enlace simbólico adecuado. Además de archivos y carpetas, los enlaces simbólicos NTFS pueden apuntar a una secuencia de datos alternativa . El siguiente ejemplo crea un enlace simbólico llamado " Test.txt" que apunta a la Zone.Identifier:$DATAsecuencia alternativa " " de un archivo llamado " npcap-1.83.exe". (Esta secuencia alternativa en particular es la marca de la web ).)
Nuevo-elemento -Ruta "E:\Test.txt" -Tipo de elemento 'Enlace simbólico' -Valor 'E:\npcap-1.83.exe:Zone.Identifier:$DATA'La función de bajo nivel responsable de crear enlaces simbólicos es la CreateSymbolicLink()función de la API de Windows , introducida en 2008. Puede crear enlaces simbólicos tanto de archivos como de directorios. [ 30 ] Mucho más tarde, en 2021, Microsoft introdujo File.CreateSymbolicLink()métodos Directory.CreateSymbolicLink()en .NET 6. Son gratuitos y de código abierto. [ 31 ] [ 32 ]
Enlaces simbólicos del kernel
Enlaces simbólicos de Cygwin
Cygwin simula enlaces simbólicos conformes al estándar POSIX en el sistema de archivos de Windows. Utiliza la misma interfaz de programación y utilidades de usuario que Unix (véase más arriba), pero crea accesos directos de Windows (archivos .lnk) con información adicional que Cygwin utiliza al resolver los enlaces simbólicos. Los enlaces simbólicos de Cygwin cumplen con el estándar POSIX en cuanto a su resolución y con los estándares de Windows en cuanto a su representación en disco.
Además, Cygwin se puede configurar para admitir enlaces simbólicos nativos de Windows que se pueden usar fuera de Cygwin sin restricciones. [ 33 ] Esto requiere:
- Cambiar la variable de entorno CYGWIN para que contenga winsymlinks:native ;
- Ejecutar Cygwin con privilegios elevados porque Windows restringe la creación de enlaces simbólicos a usuarios privilegiados.
Sin embargo, existen algunas diferencias. Cygwin no tiene forma de especificar información relacionada con los accesos directos, como el directorio de trabajo o el icono, ya que no hay espacio para dichos parámetros en ln -sel comando. Para crear archivos .lnk estándar de Microsoft, Cygwin proporciona las utilidades mkshortcuty . [ 34 ]readshortcut
La Guía del usuario de Cygwin contiene más información sobre este tema. [ 33 ] MSYS2 , que se basa en Cygwin, tiene un conjunto similar de configuraciones de winsymlinks , pero por defecto copia los archivos. [ 35 ]
Comparación de implementaciones de enlaces simbólicos
La siguiente tabla compara varios aspectos del enlace simbólico (tanto en sistemas basados en UNIX como en Windows), el punto de unión (NTFS) y el enlace físico (en sistemas basados en UNIX).
- ↑ excepto cuando se utilizan herramientas especiales
- ↑ Al guardar, se convierte en un camino absoluto
- ↑ Compatible con Windows Vista y versiones posteriores. La implementación de Windows no cumple con el estándar POSIX. Su creación requiere el privilegio "crear enlace simbólico" (
SeCreateSymbolicLinkPrivilege). De forma predeterminada, una cuenta de usuario posee este privilegio cuando es administrador [ 36 ] o tiene habilitado el Modo desarrollador (Windows 10 v1703 y versiones posteriores). [ 37 ] - ↑ POSIX permite un enlace físico a un directorio, pero no exige esta capacidad. Los sistemas de archivos modernos tienden a no admitirla.
Otras implementaciones
Implementaciones de funcionalidades similares a los enlaces simbólicos.
Los inicios del MIT
El sistema de tiempo compartido compatible con MIT (c. 1963) y el sistema de tiempo compartido incompatible tienen archivos vinculados donde el nombre del archivo de destino se especifica en una entrada de directorio. [ 3 ] [ 4 ] [ 5 ]
Datos generales RDOS
El RDOS de Data General para sus computadoras Nova admite "entradas de enlace", que son entradas de directorio que contienen tanto el nombre de la entrada como el nombre de otro archivo, de modo que una referencia a un archivo que utiliza el nombre de la entrada se refiere al otro archivo. [ 38 ]
Amiga
El comando para crear enlaces simbólicos es makelink, que también se usa para enlaces duros. Internamente, la biblioteca dos.library devuelve un código de error que indica que un destino es un enlace simbólico si se intentan realizar acciones sobre él que solo son válidas para un archivo. Las aplicaciones que deseen seguir el enlace simbólico deben entonces realizar una llamada explícita para seguir el enlace y volver a intentar la operación. El intérprete de comandos de AmigaDOS seguirá los enlaces automáticamente.
Sistema operativo Mac clásico
En el sistema operativo Mac OS clásico , las aplicaciones o los usuarios pueden usar alias que, a diferencia de los enlaces simbólicos, siguen al destino, incluso si este se mueve a otra ubicación en el mismo volumen. (Esto no debe confundirse con el alias de comando de shell en varios shells para sistemas tipo Unix).
macOS también admite alias; no son compatibles con las API de Unix como open(), pero sí lo son con las API de nivel superior de Carbon y Cocoa .
Sistema operativo/2
En el sistema operativo OS/2 , los enlaces simbólicos se asemejan en cierto modo a las sombras en el entorno gráfico Workplace Shell . Sin embargo, las sombras, gracias al modelo de objetos del sistema totalmente orientado a objetos, son considerablemente más potentes y robustas que un simple enlace. Por ejemplo, las sombras no pierden sus capacidades al cambiarles el nombre o al reubicar el objeto o el sujeto del enlace. [ 39 ]
Alternativas
Accesos directos a archivos
Los accesos directos , compatibles con los exploradores de archivos gráficos de algunos sistemas operativos, pueden parecerse a los enlaces simbólicos, pero difieren en varios aspectos importantes. Una diferencia radica en el tipo de software que puede seguirlos:
- Los enlaces simbólicos son resueltos automáticamente por el sistema de archivos. Cualquier programa informático, al acceder a un enlace simbólico, verá el archivo de destino, independientemente de si el programa conoce o no la existencia de enlaces simbólicos.
- El sistema de archivos y los programas que no los reconocen tratan los accesos directos como archivos normales. Solo los programas que entienden los accesos directos (como el intérprete de comandos de Windows y los exploradores de archivos) los interpretan como referencias a otros archivos.
Los mecanismos también tienen diferentes capacidades:
- Los accesos directos de Windows normalmente hacen referencia a un destino mediante una ruta absoluta (que comienza en el directorio raíz ), mientras que los enlaces simbólicos POSIX pueden hacer referencia a destinos mediante una ruta absoluta o relativa . Esta última es útil si tanto el enlace simbólico como su destino comparten una ruta ancestral común que se desconoce en el momento de su creación (por ejemplo, en un archivo comprimido que se puede descomprimir en cualquier lugar).
- Los accesos directos a aplicaciones de Windows contienen metadatos adicionales que pueden asociarse con el destino, mientras que los enlaces simbólicos POSIX son simplemente cadenas que se interpretarán como rutas de acceso absolutas o relativas.
- A diferencia de los enlaces simbólicos, los accesos directos de Windows mantienen sus referencias a sus destinos incluso cuando estos se mueven o se les cambia el nombre. Los clientes de dominio de Windows pueden suscribirse a un servicio de Windows llamado Seguimiento de enlaces distribuidos [ 40 ] para rastrear los cambios en los archivos y carpetas que les interesan. Este servicio mantiene la integridad de los accesos directos, incluso cuando los archivos y carpetas se mueven a través de la red. [ 41 ] Además, en Windows 9x y versiones posteriores, el shell de Windows intenta encontrar el destino de un acceso directo dañado antes de proponer su eliminación.
Accesos directos a carpetas
El shell de Windows permite que los directorios ordinarios en los sistemas de archivos actúen como "puntos de unión". [ 42 ] Son transparentes para el shell de Windows, pero inútiles en otros entornos. Windows ofrece dos métodos para implementar un acceso directo a una carpeta. El primero es a través de una convención de nomenclatura especial. El acceso directo a la carpeta debe cumplir con la siguiente sintaxis: Name.{CLSID}. [ 42 ] El shell de Windows reemplazará todo el nombre con el nombre para mostrar del CLSID asociado. Por ejemplo, Test.{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}se convierte en un acceso directo al Escritorio de Windows.
El segundo requiere lo siguiente: [ 42 ]
- Agregar el atributo "Solo lectura" a la carpeta. [ 43 ]
- Convertir la carpeta en una carpeta del sistema llamando a la
PathMakeSystemFolder()función. - Colocar un
Desktop.iniarchivo oculto en la carpeta. Un ejemploDesktop.inies el siguiente:
[.ShellClassInfo] CLSID2 = {0AFACED1-E828-11D1-9187-B532F1E9575D}Objetos de shell en el shell de Windows
Los objetos de shell [ 44 ] o carpetas de shell se definen en el Registro de Windows y también pueden usarse para implementar una especie de enlace simbólico. Al igual que los accesos directos a carpetas, son transparentes para el shell de Windows.
La siguiente es una plantilla general. {########-####-####-####-############}, 0x####, y <Path>son marcadores de posición.
[ HKEY_CLASSES_ROOT \CLSID\{########-####-####-####-############}] @ = "nombre para mostrar"[ HKEY_CLASSES_ROOT \CLSID\{########-####-####-####-############}\DefaultIcon] @ = "..." ; ruta al icono[ HKEY_CLASSES_ROOT \CLSID\{########-####-####-####-############}\InProcServer32] @ = "%SystemRoot%\\System32\\ShDocVw.Dll" "ThreadingModel" = "Apartment"[ HKEY_CLASSES_ROOT \CLSID\{########-####-####-####-############}\Instance] "CLSID" = "{0AFACED1-E828-11D1-9187-B532F1E9575D}"[ HKEY_CLASSES_ROOT \CLSID\{########-####-####-####-############}\Instance\InitPropertyBag] "Atributos" = hexadecimal : 15,00,00,00; Puede especificar una de las siguientes opciones: ; ; - "Target" con una ruta de sistema de archivos absoluta. ; - "Target" con una ruta relativa, si también se especifican "TargetKnownFolder" o "TargetSpecialFolder". ; - "TargetSpecialFolder" (con o sin un "Target" que contenga una ruta relativa). ; Debe contener el CSIDL del destino. ; - "TargetKnownFolder" (con o sin un "Target" que contenga una ruta relativa). ; Debe contener el GUID del destino. ; Compatible con Windows Vista y versiones posteriores."Destino" = "<Ruta>" "CarpetaEspecialDestino" = "0x####" "CarpetaConocidaDestino" = "{########-####-####-####-############}"[ HKEY_CLASSES_ROOT \CLSID\{########-####-####-####-############}\ShellFolder] "Atributos" = hexadecimal : 00,00,00,00La carpeta Mis documentos en el escritorio , así como las carpetas Fuentes y Herramientas administrativas en el Panel de control, son ejemplos de objetos del sistema que se redirigen a carpetas del sistema de archivos.
Véase también
- Carrera de enlaces simbólicos : una vulnerabilidad de seguridad causada por enlaces simbólicos.
- freedup : genera automáticamente enlaces entre datos idénticos.
- Puntero (programación informática)
Referencias
- ↑ "Resolución de ruta" . POSIX .
- ↑ Bill Joy ; Sam Leffler . "Sobreviviendo con 4.1a bsd" . GitHub . Consultado el 8 de septiembre de 2023.
También incluye otras características que pueden resultarle útiles, como
enlaces simbólicos
y un esquema de grupos mejorado.
- 1 2 Walden, David; Van Vleck, Tom , eds. (2011). "Compatible Time-Sharing System (1961-1973): Fiftieth Anniversary Commemorative Overview" (PDF) . IEEE Computer Society . Recuperado el 20 de febrero de 2022 .
A medida que se desarrollaba CTSS, proporcionábamos formas para que los usuarios compartieran sus archivos en disco, a través de "archivos comunes" y "enlaces",
- 1 2 Crisman, Patricia A., ed. (31 de diciembre de 1969). "The Compatible Time-Sharing System, A Programmer's Guide" (PDF) . The MIT Computation Center . Consultado el 10 de marzo de 2022.
Entradas UFD que apuntan a otras entradas UFD en lugar de al archivo en sí
. - 1 2 Corbato, FJ ; Daggett, MM; Daley, RC; Creasy, RJ; Hellwig, JD; Orenstein, RH; Korn, LK (1963). "The Compatible Time-Sharing System: A Programmer's Guide" (PDF) . MIT . Recuperado el 29 de noviembre de 2022.
Enlace: El formato es similar a Copiar. El archivo especificado no se copia.
- ↑ – Manual de información miscelánea de NetBSD : enlaces simbólicos mágicos.
- ↑ Brooks Davis (2008). "Variantes de enlaces simbólicos para FreeBSD" (PDF) .
- 1 2 Pike, Rob (2000). Nombres de archivos léxicos en Plan 9 o cómo usar correctamente los puntos suspensivos (PDF) . Actas de la Conferencia Técnica Anual de USENIX .
- ↑ Neil Brown (2016). "Un argumento a favor de los enlaces simbólicos variantes" . LWN .
- ↑ – Referencia de interfaces del sistema, Especificación única de UNIX , Versión 5 de The Open Group
- ↑ – Referencia de interfaces del sistema, Especificación única de UNIX , Versión 5 de The Open Group
- ↑ – Referencia de interfaces del sistema, Especificación única de UNIX , Versión 5 de The Open Group
- ↑ – Referencia de interfaces del sistema, Especificación única de UNIX , Versión 5 de The Open Group
- ↑ – Referencia de interfaces del sistema, Especificación única de UNIX , Versión 5 de The Open Group
- ↑ – Manual de llamadas al sistema de FreeBSD
- ↑ – Manual de llamadas al sistema de NetBSD
- ↑ – Manual de llamadas al sistema y números de error de DragonFly BSD
- ↑ – Manual de funciones de la biblioteca Darwin y macOS
- ↑ – Manual de llamadas al sistema de FreeBSD
- ↑ – Manual de llamadas al sistema de NetBSD
- ↑ – Manual de llamadas al sistema y números de error de DragonFly BSD
- ↑ – Manual de funciones de la biblioteca Darwin y macOS
- ↑ Commit c7c0ea91aa6761b761909c99f9310bafb92b364d de systemd/src/core/unit.c, código fuente, comentario de unit_export_state_files
- ↑ Russinovich, Mark (4 de julio de 2016). "Junction" . Sysinternals . Microsoft – vía Microsoft Learn .
- 1 2 Ashcraft, Alvin (8 de julio de 2025). "Enlaces duros y uniones" . Desarrollo de aplicaciones de Windows . Microsoft . Recuperado el 30 de septiembre de 2025 a través de Microsoft Learn .
- ↑ "Consideraciones de programación (sistemas de archivos locales)" . Microsoft Learn .
- ↑ "Enlace al sitio web de la extensión Shell" . Enlace al sitio web de la extensión Shell .
- 1 2 "Enlaces simbólicos" . Desarrollo de aplicaciones para Windows . Microsoft . 8 de julio de 2025 – vía Microsoft Learn .
- ↑ Russinovich, Mark (febrero de 2007). "Dentro del núcleo de Windows Vista: Parte 1" . Microsoft Learn . Enlaces simbólicos basados en archivos.
- ↑ Walker, Jim (1 de junio de 2024). "Función CreateSymbolicLinkW (winbase.h)" . Desarrollo de aplicaciones para Windows .
- ↑ Warren, Genevieve. "Método File.CreateSymbolicLink(String, String) (System.IO)" . Documentación de .NET 6. Microsoft . Consultado el 30 de septiembre de 2025 a través de Microsoft Learn .
- ↑ Warren, Genevieve. "Método Directory.CreateSymbolicLink(String, String) (System.IO)" . Documentación de .NET 6. Microsoft . Consultado el 30 de septiembre de 2025 a través de Microsoft Learn .
- 1 2 "Capítulo 3. Uso de Cygwin" . www.cygwin.com . Consultado el 8 de julio de 2021 .
- ↑ "Uso eficaz de Cygwin con Windows" .
- ↑ "Coreutils: ln --symbolic crea enlaces duros (paquetes MSYS2 #249)" . GitHub .
- ↑ "Crear vínculos simbólicos" . Documentación del cliente de Windows para profesionales de TI . Microsoft . 18 de enero de 2023 – vía Microsoft Learn.
- ↑ Durr, Yosef (2 de diciembre de 2016). "¡Enlaces simbólicos en Windows 10!" . Experiencia de Windows . Microsoft – vía Blogs de Windows.
- ↑ Manual de referencia del sistema operativo de disco en tiempo real (RDOS) (PDF) . Data General . Marzo de 1979. págs. 2-11 – 2-12 .
- ↑ Rojas, Miguel (16 de diciembre de 2020). "Cómo ejecutar versiones de Python diferentes a las predeterminadas" . Manualestutor . Consultado el 20 de diciembre de 2020 .
- ↑ "Seguimiento de enlaces distribuidos en controladores de dominio - Windows Server" . 23 de febrero de 2023.
- ↑ "Seguimiento de enlaces distribuidos e identificadores de objetos" . Microsoft Learn . Microsoft Corporation. 30 de diciembre de 2021. Consultado el 1 de septiembre de 2025 .
- 1 2 3 "Especificar la ubicación de una extensión de espacio de nombres" . Biblioteca de shell de Windows . Microsoft . 6 de enero de 2021. Uso de carpetas del sistema de archivos como puntos de unión – vía Microsoft Learn .
- ↑ "No se pueden ver ni cambiar los atributos de Solo lectura o Sistema de las carpetas en Windows Server 2003, Windows XP, Windows Vista ni Windows 7" . support.microsoft.com . Archivado del original el 17 de noviembre de 2017.
- ↑ "Creación de extensiones de shell con objetos de instancia de shell" . Microsoft Learn . 29 de junio de 2010.
Enlaces externos
- Preguntas y respuestas: La diferencia entre enlaces duros y enlaces blandos en Linux
- Puntos de unión : mantener puntos de unión NTFS (para Windows 2000 y versiones posteriores)
- Enlaces duros con FSUtil : Página de Microsoft Technet sobre cómo usar la herramienta de línea de comandos FSUtil para crear enlaces duros (para Windows 2000 y versiones posteriores).
- Controladores simbólicos para Windows XP (en japonés) : controladores del sistema de archivos para habilitar los enlaces simbólicos en Windows XP (también disponibles en el sitio web de Link Shell Extension). Código fuente disponible.
- Sistemas de archivos informáticos
- Tecnología del sistema de archivos Unix