All Rights ReservedView Non-AMP Version
Preprod IT Forum
  • Homepage
  • Notícias
Categories: Notícias

Symbolic Links no Windows

O título dessa coluna me lembrou uma ocasião onde eu e CAT (nosso colunista) estávamos em um hotel bem chique, onde todos os cartazes estavam escritos em duas línguas. No elevador, tinha um aviso em português para um determinado andar: “Health Center com Personal Trainer” e embaixo a tradução para o inglês “Health Center with Personal Trainer”

Deixando de lado a questão do estupro do nosso idioma nacional, o título “Symbolic Links no Windows” é bastante elucidativo se você souber o que é um Symbolic Link .

As melhores notícias de tecnologia B2B
Acompanhe todas as novidades diretamente na sua caixa de entrada

Certamente você já ouviu falar e usa regularmente os “atalhos” (shortcuts) do Windows. Em qualquer diretório você pode criar um desses apontando para outra pasta ou arquivo, de forma que se você clicar no atalho você será tele transportado para o destino apontado nele. A pasta “Meus Documentos” é um atalho um pouco mais sofisticado, chamado de “atalho do sistema”, pois embora esteja fisicamente alojada em uma das pastas escondidas nas configurações locais do usuário, ela pode ser vista no “Meu computador” ou nas pastas do Windows Explorer. Por falar nisso, a Microsoft tem um pequeno e ótimo utilitário chamado PowerToys TweakUI que permite, entre outras coisas, mudar o endereço físico da pasta “Meus Documentos” e de outros atalhos do sistema. No meu caso, a pasta Meus Documentos fica no disco D: imune a formatações e outras mazelas.

O problema dos atalhos é que eles só funcionam na navegação entre as janelas, e não no endereço físico de um arquivo. Vamos supor que você fez um programa que verifica se um determinado arquivo existe, e se ele existir uma ação será tomada. Só que o arquivo em questão é comum a dois programas: no programa ABC (que fica no diretório ABC) o arquivo fica no subdiretório ABC/docs/nome_do_arquivo.

No programa XYZ, o arquivo fica sob o mesmo diretório, portanto XYZ/docs/nome_do_arquivo. Só que o diretório /docs/ e seu conteúdo é idêntico nos dois casos, e para evitar manter duas cópias idênticas, poderíamos usar no diretório XYZ um atalho “/docs/” apontando para “/docs/” no ABC. Para efeito de navegação isso funciona muito bem, mas para um programa que depende de endereços reais, não.

Ao testar se o arquivo ABC/docs/nome_do_arquivo existe, o programa retornará como TRUE (verdadeiro), pois de fato é o arquivo real com endereço físico conhecido. Mas ao testar XYZ/docs/nome_do_arquivo retornará um FALSE, pois o atalho /docs/ não funciona para redirecionar para o diretório ABC quando se trata de um endereço físico.

Esse problema aconteceu comigo essa semana, quando decidi trocar o servidor de testes do Fórum PCs (restrito a minha rede local) que roda sob Windows. A versão antiga utilizava o servidor WEB IIS da Microsoft. A versão de produção é executada sob Linux, e utiliza o servidor WEB Apache. A idéia de um servidor de testes é que ele seja exatamente igual ao de produção, por isso a necessidade de alterar o sistema. Infelizmente meus parcos conhecimentos de Linux ainda me impedem de configurar e manter um servidor de testes sob esse sistema operacional. A solução paliativa foi utilizar o servidor Apache sob Windows, que atenderia minhas necessidades nesse momento.

Com o Apache devidamente configurado, veio a necessidade de compartilhar alguns diretórios entre o Fórum PCs e o Fórum do Hardware, especialmente aqueles diretórios com imagens que são comuns aos dois sites.

No Linux podemos criar um Symbolic Link, ou seja, um diretório no Fórum do Hardware que aponta fisicamente para um diretório no Fórum PCs, sendo transparente para a navegação ou para os programas que fazem a leitura nesses endereços. No Windows isso não me parecia possível, até que nosso amigo “Google” me trouxe a resposta.

Bill Gates não é bobo. Ele sabe que o Windows tem recursos escondidos para suportar as principais necessidades de qualquer usuário, e mesmo quando não tem, ele manda fazer e disponibilizar para alguns poucos, pelas intrincadas páginas de suporte da Microsoft. Foi nelas que descobri os Junction Points ou melhor, “Pontos de Junção” que existem desde o Windows 2000, mas muito mal documentado.

Para quem quiser conhecer mais sobre esse assunto:

How to create and manipulate NTFS junction points Specifying a Namespace Extension Hlscan.exe: Hard link display tool Fsutil: reparsepoint

Vocês já devem saber que um arquivo nada mais é do que um grupo de setores do disco rígido agrupados logicamente para gerar uma informação. Um diretório (ou pasta, ou folder) não existe fisicamente, mas é uma entrada na tabela de alocação de setores que informa ao sistema operacional que todos os setores relacionados estão debaixo daquele diretório, criando assim uma estrutura hierárquica de arquivos.

Um ponto de junção é uma outra entrada nessa tabela de alocação que faz duas coisas: aponta para um outro grupo de setores que formam vários arquivos, e monta o volume lógico com esses arquivos e diretórios. Se você fizer o download do Resource Kit do Windows 2000 você terá alguns programas a base de linha de comando que vão permitir a montagem desses pontos de junção, que vão operar praticamente da mesma forma que um Symbolic Link no Linux.

Para quem gosta de uma interface mais amigável, há o Junction Link Magic , gratuito mas voltado a usuários experientes que permite a manipulação desses links com alguma segurança.

Fiquem atentos aos avisos, pois os links necessariamente precisam ser diretórios vazios (que vão apontar para diretórios com conteúdo), só funciona sob NTFS e não podem apontar para diretórios em uma rede local. Cuidado também ao mover partições, pois os links serão quebrados, e só montem pontos de junção com destinos existentes em uma partição montada com uma letra atribuída.

Não apague (delete) um ponto de junção porque o esperto Windows irá apagar todos os arquivos que nele são apontados. Para apagar o link você deve usar a ferramenta para “desmontar” o link, transformando-o novamente em um diretório vazio, e em seguida você pode apagá-lo. Há um bizarro comportamento ao apagar (mandar para lixeira) um ponto de junção ainda montado e depois tentar restaurá-lo, por isso não recomendo nem que tentem…

Outra dica válida: evitem alterar as permissões de um ponto de junção e seus descendentes (arquivos que estão em outro local) porque a coisa pode ficar confusa…

Já deu para perceber que os Symbolic Links no Windows (os tais pontos de junção) funcionam de forma precária, mas funcionam. No meu caso, onde o objetivo era compartilhar alguns diretórios comuns a dois sites durante a fase de desenvolvimento, funcionou com perfeição.

Para quem gosta de aventuras radicais, experimentem mover a pasta “Arquivo de Programas” para outro disco ou partição, deixando no lugar um ponto de junção. Antes, por segurança, façam um backup completo do disco.

Next Fórum PCs na TV »
Previous « Suprimento de chips TCCD - Corsair Memory
Share
Published by
Editorial IT Forum 365
16 anos ago

    Related Post

  • Novos executivos da semana: Uncover, Tech for Humans, Diebold Nixdorf, Unico e mais
  • Se o Brasil não organizar seus dados culturais, outro fará isso por nós, alerta Jorge Brivilati
  • CBYK nomeia Maurício Matsuda como novo CEO

Recent Posts

  • Notícias

83% dos CIOs já adiaram projetos estratégicos por restrições de orçamento

A pressão por controle de custos vem alterando a dinâmica das áreas de tecnologia nas…

6 dias ago
  • Estudos

Fintechs brasileiras captam US$ 2,77 bi em 2025 e entram em nova fase de maturidade

O mercado brasileiro de fintechs passou por uma transformação no perfil dos investimentos em 2025.…

6 dias ago
  • Notícias

Sioux aposta em IA e dados para nova fase de experiências digitais e expande atuação para a Europa

O avanço da inteligência artificial e o uso estratégico de dados vêm transformando a forma…

6 dias ago
  • Artigos

Qual é o risco do desenvolvimento de software com IA?

Por Ramon Ribeiro Quase metade do código produzido por assistentes de inteligência artificial contém vulnerabilidades…

6 dias ago
  • Notícias

Se o Brasil não organizar seus dados culturais, outro fará isso por nós, alerta Jorge Brivilati

Peça a um modelo de inteligência artificial que gere a imagem de uma cidade, sem…

6 dias ago
  • Notícias

Novos executivos da semana: Uncover, Tech for Humans, Diebold Nixdorf, Unico e mais

O IT Forum apresenta, semanalmente, os novos executivos e os principais anúncios de contratações, promoções e mudanças…

6 dias ago
All Rights ReservedView Non-AMP Version
  • L