Comparação
O junction
programa de Mark Russinovich foi projetado com um objetivo específico em mente: criar (e excluir) pontos de junção. Foi mantido ao longo dos anos, mas nenhum novo recurso foi adicionado até o momento. A versão mais recente foi lançada em 4 de julho de 2016.
Quanto a mklink
, é um comando interno disponível no Windows Vista e posterior. Ele pode criar links físicos, pontos de junção e links simbólicos. Uma função de exclusão específica não é fornecida; você pode simplesmente usar os comandos del
ou rd
, dependendo se o link aponta para um arquivo ou diretório, respectivamente.
Um pouco de história
Antes do Vista, os sistemas operacionais Windows não forneciam uma maneira imediata de criar pontos de junção: era necessário obter uma cópia do Resource Kit oficial , usar um programa de terceiros ou escrever você mesmo.
2000
A primeira versão da junction
ferramenta foi lançada. Citando o site oficial:
O Windows 2000 e superior oferecem suporte a links simbólicos de diretório, onde um diretório serve como um link simbólico para outro diretório no computador. [...]
Infelizmente, o Windows não possui ferramentas para criar junções - você precisa comprar o Win2K Resource Kit, que acompanha o linkd
programa para criar junções. Decidi, portanto, escrever minha própria ferramenta de criação de junções : Junction .
Fonte: Junção
2005-06
O mklink
comando foi introduzido no Windows Vista durante a fase beta inicial.
Estava disponível desde o Beta 1 oficial lançado em 27 de julho de 2005. Inicialmente, ele só podia criar links simbólicos e hard links; a capacidade de criar pontos de junção veio posteriormente com o Community Technology Preview (CTP), lançado em 19 de dezembro de 2005.
Aparentemente, o comando passou despercebido até algum tempo depois, em 2006, quando foi divulgado pela primeira vez. Aqui está a referência mais antiga que consegui encontrar:
Você pode criar um link simbólico no Windows Vista agora.
C:\test>ver
Microsoft Windows [Version 6.0.5365]
C:\test>mklink
Creates a symbolic link.
MKLINK [[/D] | [/H] | [/J]] Link Target
[...]
Fonte: Link simbólico no Windows Vista
Além disso:
Malcolm [MSFT] (Especialista):
P: Existe uma maneira realmente fácil de criar um link simbólico?
R: Abra o CMD e digite 'mklink'. Esta ferramenta permitirá que você crie junções, hardlinks e links simbólicos.
Fonte: Transcrição do bate-papo do NTFS Beta (12 de julho de 2006)
Informação adicional
Um arquivo ou diretório pode conter um ponto de nova análise, que é uma coleção de dados definidos pelo usuário. O formato desses dados é entendido pelo aplicativo que armazena os dados e um filtro do sistema de arquivos, que você instala para interpretar os dados e processar o arquivo.
Por exemplo, os pontos de nova análise são usados para implementar os links do sistema de arquivos NTFS e o RSS (Microsoft Remote Storage Server).
Fonte: Pontos de nova análise
Existem três tipos de links de arquivos suportados no sistema de arquivos NTFS: links físicos, junções e links simbólicos.
Fonte: Links físicos e junções
Links físicos
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. [...] Quaisquer alterações nesse arquivo são visíveis instantaneamente para aplicativos que acessam através dos links físicos que fazem referência a ele. No entanto, o tamanho da entrada do diretório e as informações do atributo são atualizadas apenas para o link através do qual a alteração foi feita.
Fonte: Links físicos e junções
Junções
Uma junção (também chamada de link virtual) difere de um link físico, pois os objetos de armazenamento que ele referencia são diretórios separados, e uma junção pode vincular diretórios localizados em diferentes volumes locais no mesmo computador.
Fonte: Links físicos e junções
Os pontos de junção podem vincular apenas a diretórios em um volume local; pontos de junção para compartilhamentos remotos não são suportados.
Fonte: ponto de junção NTFS
Links simbólicos
Um link simbólico é um objeto do sistema de arquivos que aponta para outro objeto do sistema de arquivos. O objeto que está sendo apontado é chamado de destino.
Links simbólicos são transparentes para os usuários; os links aparecem como arquivos ou diretórios normais e podem ser tratados pelo usuário ou aplicativo exatamente da mesma maneira.
Fonte: Links Simbólicos
[Links simbólicos] foram introduzidos com as modificações feitas no sistema de arquivos NTFS com o Windows Vista , mas disponíveis através de drivers de filtro para o Windows XP .
Diferentemente de um ponto de junção NTFS (disponível desde o Windows 2000), um link simbólico também pode apontar para um arquivo ou caminho de rede SMB remoto . Enquanto os pontos de junção NTFS suportam apenas caminhos absolutos nas unidades locais, os links simbólicos do NTFS permitem a vinculação usando caminhos relativos.
As configurações de segurança padrão no Windows Vista / Windows 7 impedem que administradores não elevados e todos os não administradores criem links simbólicos.
Fonte: Link simbólico NTFS
Leitura adicional
Junction
foi publicado em setembro de 2010, de acordo com a página vinculada. Da mesma forma, a página vinculada aMKLINK
tem uma data de publicação em abril de 2012. Isso parece indicar fortemente queJunction
foi criado antes damklink
execução do executável no Windows. (Eu não cavaram ainda mais em quando cada apareceu originalmente, portanto, um comentário em vez de uma resposta completa Se alguém quer expandir sobre isso e criar uma resposta adequada, seja meu convidado..)