Quem conhece o universo do Linux e Unix em geral, já deve ter ouvido falar do link simbólico, ele é um pouco diferente do já conhecido arquivo de atalho do Windows (os famosos “.lnk”), porém, diferente do atalho do Windows, que aponta para um arquivo executável (seja exe, cmd, com, bat, pif), o link simbólico pode apontar para qualquer tipo de arquivo, inclusive para pastas.
Sabendo que este tipo especial de arquivo pode apontar para qualquer outro arquivo, surge obviamente uma pergunta, qual a utilidade disso? Um link simbólico pode ser uma via de acesso para programas que chamam uma determinada versão de um arquivo, dispositivo ou biblioteca, em uma situação que o usuário não tem como poder mudar essa chamada. Vejamos um exemplo: Um programa que sempre acessa a unidade de CD pelo arquivo /dev/cdrom, porém sua unidade de CD é identificada no sistema como /dev/sr0, a solução? Link simbólico, digitando o seguinte comando no aplicativo terminal:
ln -s /dev/sr0 /dev/cdrom
Um outro cenário possível, é quando o programa chama por uma biblioteca antiga e no sistema tem uma versão mais recente dela, porém, o programa não enxerga a nova biblioteca. Digamos que o programa precisa da libalgumacoisa.so.1 e no sistema existe somente a libalgumacoisa.so.2, como contornar isso? Novamente o comando ln:
ln -s libalgumacoisa.so.2 libalgumacoisa.so.1
Em resumo, o comando ln nos abre uma série de possibilidades na resolução de problemas nos sistemas Linux, devido seu incrível poder de criar e simplificar atalhos.