Partilhar via


Ligações físicas e junções

O sistema de arquivos NTFS oferece suporte a três tipos de links de arquivo: links físicos, junções e links simbólicos. Este artigo é uma visão geral dos links físicos e junções. Para obter informações sobre links simbólicos, consulte Criar links simbólicos.

Um link físico é a representação do sistema de arquivos de um arquivo pelo qual mais de um caminho faz referência a um único arquivo no mesmo volume. Para criar um link físico, use a função CreateHardLinkA .

Todas as alterações feitas em um arquivo com link físico são instantaneamente visíveis para os aplicativos que o acessam por meio dos links que fazem referência a ele. Os atributos no arquivo são refletidos em todos os links físicos para esse arquivo, e as alterações nos atributos desse arquivo se propagam para todos os links físicos. No entanto, o tamanho da entrada de diretório e as informações de atributo do arquivo são visivelmente atualizados apenas no link por meio do qual a alteração foi feita. Por exemplo, se você limpar o sinalizador de atributo somente leitura em um link rígido específico para poder excluir esse link físico e houver vários links rígidos para o arquivo, os outros links rígidos exibirão que o atributo somente leitura ainda está definido, o que não é verdade. Para alterar o arquivo de volta para o estado somente leitura, você deve definir o sinalizador somente leitura no arquivo a partir de um de seus links físicos restantes.

Por exemplo, em um sistema em que C: e D: são unidades locais e Z: é uma unidade de rede mapeada para \\fred\share, as seguintes referências são permitidas como um link físico:

  • C:\dira\ethel.txt vinculado a C:\dirb\dirc\lucy.txt
  • D:\dir1\tinker.txt vinculado a D:\dir2\dirx\bell.txt
  • C:\diry\bob.bak vinculado a C:\dir2\mina.txt

Isso ocorre porque todos os links são arquivos no mesmo volume. Os links físicos não podem fazer referência a diretórios, apenas arquivos, e não podem fazer referência a arquivos em volumes diferentes.

As seguintes referências não são permitidas:

  • C:\dira vinculado a C:\dirb
  • C:\dira\ethel.txt vinculado a D:\dirb\lucy.txt
  • C:\dira\ethel.txt vinculado a Z:\dirb\lucy.txt

Para excluir um link físico, use a função DeleteFileA . Você pode excluir links físicos em qualquer ordem, independentemente da ordem em que são criados.

Junções

Uma junção (também chamada de soft link) difere de um link físico, pois os objetos de armazenamento aos quais ela faz referência são diretórios separados. Uma junção também pode vincular diretórios localizados em diferentes volumes locais no mesmo computador. Caso contrário, as junções operam de forma idêntica aos links físicos. As junções são implementadas por meio de pontos de nova análise.

Assumindo as mesmas condições na seção Links físicos, as seguintes referências são permitidas como junções:

  • C:\dira vinculado a C:\dirb\dirc
  • C:\dirx vinculado a D:\diry

As seguintes referências não são permitidas porque fazem referência a volumes de rede mapeados ou fazem referência direta a arquivos:

  • C:\dira\one.txt vinculado a C:\dirb\two.txt
  • C:\dir1 vinculado a Z:\dir2

Confira também