Páginas

domingo, 27 de fevereiro de 2011

Links simbólicos em partições NTFS

Quando a Microsoft lançou seu sistema Windows NT no início da década de 1990, ela também lançou o NTFS (New Technology File System), um novo sistema de arquivo mais robusto que o FAT (File Alocation Table). O NTFS evoluiu junto com o Windows e se tornou o sistema padrão a partir do Windows XP.  Seria fácil criar um post enorme enumerando todos os recursos legais do NTFS , mas por enquanto, vou me ater aos links simbólicos.

Links simbólicos são como “atalhos” que apontam para um arquivo real existente no disco. Não são como os atalhos da área de trabalho , que são arquivos específicos com extensão própria (.lnk ou .pif no MS-DOS) e que iniciam arquivos executáveis.

Para tentar explicar melhor vou citar uma aplicação que encontrei essa semana para links simbólicos:

Tenho um aplicativo que necessita do Flash Player 6 para ser executado. Ao ser iniciado esse aplicativo procura por um plugin chamado Flash.ocx , na pasta System32\Macromed\Flash do Windows. O problema é que tal arquivo não existe mais na versão 10 do Flash player: ele foi substituido pelo Flash10m.ocx. Então o aplicativo simplesmente não abre.

Seria fácil copiar o Flash10m.ocx e renomeá-lo para Flash.ocx, mas isso seria comer 7MB de disco e sou muito pão duro. Solução?
Criar um arquivo “falso” Flash.ocx que ao ser lido, redireciona o acesso para o Flash10m.ocx. Isso é um link simbólico, um arquivo que aos olhos do sistema operacional existe e possui extensão própria, mas quando é acessado, redireciona toda a operação para outro arquivo. Então o meu aplicativo lê o Flash.ocx, mas na verdade (e totalmente transparente ao programa) está lendo o Flash10m.ocx.  Sacaram ?

O legal é que caso deseje apagar o link simbólico, pode fazê-lo sem perder o arquivo para o qual ele aponta.

Quer saber como criar ? Mãos na massa !
Abra o cmd.exe, vulgo prompt de comando e digite:

mklink  <nome_do_link> <nome_do_arquivo>

No meu caso, digitei:

mklink C:\Windows\System32\Macromed\Flash\Flash.ocx C:\Windows\System32\Macromed\Flash\Flash10m.ocx

 

Voilà, link simbólico criado:

symlink

Se você quiser saber mais que todo mundo sobre links simbólicos, aqui é um bom lugar para começar.

Nenhum comentário:

Postar um comentário