Como criar um link físico de diretório no Windows?

13

Eu estava tentando criar um link físico de diretório (não simbólico).

Eu tentei isso: mklink /d /h newfolder currentfoldermas está me dizendo que o acesso foi negado . Não entendo como o acesso é negado porque estou executando o lote como administrador.

Como criamos um link físico de diretório?

==
Windows Vista Home Premium SP2

Pacerier
fonte

Respostas:

15

Eu acho que os links físicos são apenas para arquivos e não para diretórios.

kobaltz
fonte
4
Sim, não existe um link físico de diretório, apenas pontos de junção e links simbólicos.
Harry Johnston
1
Os hardlinks para diretórios são tecnicamente possíveis, mas precisam de muito cuidado para evitar loops no sistema de arquivos. O único sistema operacional que permite isso é o Mac OS X 10.5, para uso no Time Machine.
usar o seguinte comando
> Acho que os links físicos são apenas para arquivos e não para diretórios. Obrigado pela confirmação;
Continuo
1
bem ... em sistemas Linux você pode usar mount --bindpara pastas, mas não tenho certeza se há algo semelhante no Windows!
DJCrashdummy
7

Não existe um link físico para um diretório no Windows. No Windows, você cria um link simbólico para um diretório usando o comando mklink /d link_name target_dirou cria uma junção com mklink /J link_name target_dir.

Diferentemente dos links físicos, as junções podem abranger vários volumes e às vezes são chamadas de "links virtuais" pela Microsoft, como você pode ler aqui :

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.

Alguma ressalva é necessária aqui, já que a nomenclatura da Microsoft não é realmente legal, mas, em poucas palavras, essas são suas opções para criar referências a arquivos e diretórios no Windows:
(1) atalhos: arquivos cujo conteúdo é o local de outro arquivo. Funciona mais ou menos como um link virtual, mas com uma diferença crucial: NÃO é uma entrada de diretório, as informações do link são armazenadas dentro do arquivo. Por esse motivo, ele não funciona com muitos aplicativos (pelo menos, funciona como deveria dentro do Windows Explorer ...);
(2) hard links: criado com o comando mklink /h. Válido apenas para arquivos e funciona em um determinado volume (como no Linux, você não pode vincular um arquivo em outra partição nem em uma unidade de rede);
(3)junções: essa fera é realmente estranha. Funciona apenas com diretórios, e - engraçado - pode apontar para diretórios em outros sistemas de arquivos;
(4) links simbólicos: é muito parecido com o Linux, e também funciona com diretórios e arquivos. (Mas tende a exigir privilégios de administrador, o que pode torná-lo bastante inconveniente.) Como mencionei acima, ele é criado com o comando mklink /d link_name target_dirpara diretórios (e mklink link_name target_filearquivos). Você pode ler mais sobre isso aqui .

Humberto Fioravante Ferro
fonte
I fortemente sugerir removendo o comentário da sua resposta
Ramhound
É uma opinião ou violei alguma regra do fórum?
Humberto Fioravante Ferro
Não somos um fórum
Ramhound 14/08
Certo, comentário retirado. Me desculpe!
Humberto Fioravante Ferro
1
@ Sz você estava totalmente certo, e eu modifiquei minha resposta de acordo com seus comentários (na verdade, a resposta foi um pouco confusa). Obrigado!
Humberto Fioravante Ferro
-2

Use / J para criar um link físico apontando para um diretório, também conhecido como junção de diretório:

mklink /J Link Target
Joseph Schafer
fonte
Junções são links macios ...
DavidPostill